Home
Overloaded function.
is_dex(path: str) -> bool
Check if the file given in parameter is a DEX
is_dex(raw: List[int]) -> bool
Check if the raw data given in parameter is a DEX
Overloaded function.
version(file: str) -> int
Return the DEX version of the file given in parameter
version(raw: List[int]) -> int
Return the DEX version of the raw data given in parameter
Overloaded function.
parse(filename: str) -> LIEF::DEX::File
Parse the given filename and return a File
object
parse(raw: List[int], name: str = ‘’) -> LIEF::DEX::File
Parse the given raw data and return a File
object
parse(io: object, name: str = ‘’) -> LIEF::DEX::File
DEX File representation
Overloaded function.
get_class(self: lief._lief.DEX.File, classname: str) -> LIEF::DEX::Class
get_class(self: lief._lief.DEX.File, classname: int) -> LIEF::DEX::Class
Check if a class with a name given in parameter exists
Original location of the dex file
Name of the dex file
Original raw file
Save the original file into the file given in first parameter
Iterator over Dex strings
Dex version
DEX Header
Classess identifiers
Raw data. Should be align on 32-bits
Endianness tag. Should be ENDIAN_CONSTANT
Fields identifiers
Size of the current DEX file
Size of this header. Should be 0x70
Link (raw data)
Magic value
Offset from the start of the file to the map item
Methods identifiers
Number of classes in the current DEX
Number of methods in the current DEX
Prototypes identifiers
String identifiers
Type identifiers
DEX Method representation
List of ACCESS_FLAGS
Dalvik Bytecode as a list of bytes
Offset to the Dalvik Bytecode
Check if the given ACCESS_FLAGS
is present
True if a class is associated with this method
Original DEX file index of the method
Insert de-optimization information
True if the method is a virtual (not private, static, final, constructor)
Method’s name
DEX Field representation
List of ACCESS_FLAGS
Check if the given ACCESS_FLAGS
is present
True if a class is associated with this field
Original DEX file index of the field
True if the field is static
Field’s name
DEX Class representation
List of ACCESS_FLAGS
De-optimize information
Mangled class name (e.g. Lcom/example/android/MyActivity;
)
Iterator over Field
(s) having the given name
Iterator over Method
(s) having the given name
Check if the given ACCESS_FLAGS
is present
True if the current class extends another one
Original index in the DEX class pool
Class name (e.g. MyActivity
)
Package Name (e.g. com.example.android
)
Demangled class name (e.g. com.example.android.MyActivity
)
Original filename
DEX CodeInfo representation
DEX Type representation
Members:
VOID_T
BOOLEAN
BYTE
SHORT
CHAR
INT
LONG
FLOAT
DOUBLE
Members:
UNKNOWN
ARRAY
PRIMITIVE
CLASS
If the current type is an array, return its dimension otherwise 0
Pretty name of primitives
Underlying type of the array
Depending on the TYPES
, return Class
or PRIMITIVES
or array
DEX MapItem representation
Members:
HEADER
STRING_ID
TYPE_ID
PROTO_ID
FIELD_ID
METHOD_ID
CLASS_DEF
CALL_SITE_ID
METHOD_HANDLE
MAP_LIST
TYPE_LIST
ANNOTATION_SET_REF_LIST
ANNOTATION_SET
CLASS_DATA
CODE
STRING_DATA
DEBUG_INFO
ANNOTATION
ENCODED_ARRAY
ANNOTATIONS_DIRECTORY
Offset from the start of the file to the items in question
count of the number of items to be found at the indicated offset
Members:
UNKNOWN
PUBLIC
PRIVATE
PROTECTED
STATIC
FINAL
SYNCHRONIZED
VOLATILE
BRIDGE
TRANSIENT
VARARGS
NATIVE
INTERFACE
ABSTRACT
STRICT
SYNTHETIC
ANNOTATION
ENUM
CONSTRUCTOR
DECLARED_SYNCHRONIZED