Overloaded function.
is_oat(binary: lief._lief.ELF.Binary) -> bool
Check if the Binary
given in parameter is an OAT
is_oat(path: str) -> bool
Check if the file given in parameter is an OAT
is_oat(raw: collections.abc.Sequence[int]) -> bool
Check if the raw data given in parameter is an OAT
Overloaded function.
version(binary: lief._lief.ELF.Binary) -> int
Return the OAT version of the Binary
given in parameter
version(file: str) -> int
Return the OAT version of the file given in parameter
version(raw: collections.abc.Sequence[int]) -> int
Return the OAT version of the raw data given in parameter
Return the ANDROID_VERSIONS
associated with the given OAT version
Overloaded function.
parse(oat_file: str) -> Optional[lief._lief.OAT.Binary]
Parse the given OAT file and return a Binary
object
parse(oat_file: str, vdex_file: str) -> Optional[lief._lief.OAT.Binary]
Parse the given OAT with its VDEX file and return a Binary
object
parse(raw: collections.abc.Sequence[int]) -> Optional[lief._lief.OAT.Binary]
Parse the given raw data and return a Binary
object
parse(obj: Union[io.IOBase | os.PathLike]) -> Optional[lief._lief.OAT.Binary]
Bases: Binary
OAT binary representation
Return an iterator over Class
Return an iterator over File
Overloaded function.
get_class(self, class_name: str) -> lief._lief.OAT.Class
Return the Class
from its name
get_class(self, class_index: int) -> lief._lief.OAT.Class
Return the Class
from its index
Check if the class if the given name is present in the current OAT binary
Return the OAT Header
Bases: object
Iterator over lief._lief.OAT.Class
Bases: object
Iterator over lief._lief.DEX.File
Bases: object
Iterator over lief._lief.OAT.Method
Bases: object
Iterator over lief._lief.OAT.DexFile
Return an iterator over Method
Return an iterator over DexFile
Bases: Object
OAT Header representation
Checksum of the OAT file
Bases: object
List of INSTRUCTION_SETS
Bases: object
Configuration used for the dex2oat
transformation
List of HEADER_KEYS
present
Magic number which shoud be oat\x0A
Number of lief.DEX.File
registred in the current OAT
Offset to the raw lief.OAT.Dexfile
Warning
This attribute is only relevant for OAT for which the version is above 131
Underlying version of the OAT file
Bases: Object
OAT DexFile representation
Checksum of the underlying DEX file
Associated lief.DEX.File
Offset to the raw lief.DEX.File
Check if the lief.DEX.File
is present
Original location of the DEX file
Bases: Object
OAT Class representation
Bitmap information used to quickly find which methods are optimized
Class mangled name (e.g. Lcom/android/MyActivity;
)
True if a lief.DEX.Class
object is associated with this OAT Class
Index the DEX classes pool (lief.DEX.File.classes
)
Overloaded function.
is_quickened(self, dex_method: lief._lief.DEX.Method) -> bool
Check if the given lief.DEX.Method
is compiled into native code
is_quickened(self, method_index: int) -> bool
Check if the Method at the given index is compiled into native code
Bases: object
Iterator over lief._lief.OAT.Method
Iterator over lief.OAT.Method
Class OAT_CLASS_STATUS
Information (OAT_CLASS_TYPES
) about how methods are optimized
Bases: Object
OAT Method representation
Mirrored Method
associated with the OAT method (or None)
True if the optimization is native
True if the optimization is DEX
Method’s name
Class
associated with the method (or None)
Quick code associated with the method
Bases: Enum
Bases: Enum