ducky.mm.binary module¶
-
class
ducky.mm.binary.File(logger, stream)[source]¶ Bases:
ducky.util.BinaryFile-
MAGIC= 57005¶
-
VERSION= 1¶
-
-
class
ducky.mm.binary.FileFlags[source]¶ Bases:
ducky.util.Flags-
field= ('mmapable', <class 'ctypes.c_ushort'>, 1)¶
-
-
class
ducky.mm.binary.FileFlagsEncoding[source]¶ Bases:
_ctypes.Structure-
mmapable¶ Structure/Union member
-
-
class
ducky.mm.binary.FileHeader[source]¶ Bases:
_ctypes.Structure-
flags¶ Structure/Union member
-
magic¶ Structure/Union member
-
sections¶ Structure/Union member
-
version¶ Structure/Union member
-
-
class
ducky.mm.binary.RelocEntry[source]¶ Bases:
_ctypes.Structure-
flags¶ Structure/Union member
-
name¶ Structure/Union member
-
patch_add¶ Structure/Union member
-
patch_address¶ Structure/Union member
-
patch_offset¶ Structure/Union member
-
patch_section¶ Structure/Union member
-
patch_size¶ Structure/Union member
-
-
class
ducky.mm.binary.RelocFlags[source]¶ Bases:
ducky.util.Flags-
field= ('inst_aligned', <class 'ctypes.c_ushort'>, 1)¶
-
-
class
ducky.mm.binary.RelocFlagsEncoding[source]¶ Bases:
_ctypes.Structure-
inst_aligned¶ Structure/Union member
-
relative¶ Structure/Union member
-
-
class
ducky.mm.binary.SectionFlags[source]¶ Bases:
ducky.util.Flags-
field= ('globally_visible', <class 'ctypes.c_ubyte'>, 1)¶
-
-
class
ducky.mm.binary.SectionFlagsEncoding[source]¶ Bases:
_ctypes.Structure-
bss¶ Structure/Union member
-
executable¶ Structure/Union member
-
globally_visible¶ Structure/Union member
-
loadable¶ Structure/Union member
-
mmapable¶ Structure/Union member
-
readable¶ Structure/Union member
-
writable¶ Structure/Union member
-
-
class
ducky.mm.binary.SectionHeader[source]¶ Bases:
_ctypes.Structure-
base¶ Structure/Union member
-
data_size¶ Structure/Union member
-
file_size¶ Structure/Union member
-
flags¶ Structure/Union member
-
index¶ Structure/Union member
-
items¶ Structure/Union member
-
name¶ Structure/Union member
-
offset¶ Structure/Union member
-
padding¶ Structure/Union member
-
type¶ Structure/Union member
-
-
class
ducky.mm.binary.SectionTypes[source]¶ Bases:
enum.IntEnum-
DATA= <SectionTypes.DATA: 2>¶
-
RELOC= <SectionTypes.RELOC: 5>¶
-
STRINGS= <SectionTypes.STRINGS: 4>¶
-
SYMBOLS= <SectionTypes.SYMBOLS: 3>¶
-
TEXT= <SectionTypes.TEXT: 1>¶
-
UNKNOWN= <SectionTypes.UNKNOWN: 0>¶
-
-
class
ducky.mm.binary.SymbolDataTypes[source]¶ Bases:
enum.IntEnum-
ASCII= <SymbolDataTypes.ASCII: 5>¶
-
BYTE= <SymbolDataTypes.BYTE: 3>¶
-
CHAR= <SymbolDataTypes.CHAR: 2>¶
-
FUNCTION= <SymbolDataTypes.FUNCTION: 6>¶
-
INT= <SymbolDataTypes.INT: 0>¶
-
SHORT= <SymbolDataTypes.SHORT: 1>¶
-
STRING= <SymbolDataTypes.STRING: 4>¶
-
UNKNOWN= <SymbolDataTypes.UNKNOWN: 7>¶
-
-
class
ducky.mm.binary.SymbolEntry[source]¶ Bases:
_ctypes.Structure-
address¶ Structure/Union member
-
filename¶ Structure/Union member
-
flags¶ Structure/Union member
-
lineno¶ Structure/Union member
-
name¶ Structure/Union member
-
section¶ Structure/Union member
-
size¶ Structure/Union member
-
type¶ Structure/Union member
-
-
class
ducky.mm.binary.SymbolFlags[source]¶ Bases:
ducky.util.Flags-
field= ('globally_visible', <class 'ctypes.c_ushort'>, 1)¶
-