Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
lief.ELF.ARCH.M16C : "M16C",
lief.ELF.ARCH.M32 : "M32",
lief.ELF.ARCH.M32C : "M32C",
lief.ELF.ARCH.M32R : "M32R",
lief.ELF.ARCH.MANIK : "MANIK",
lief.ELF.ARCH.MAX : "MAX",
lief.ELF.ARCH.MAXQ30 : "MAXQ30",
lief.ELF.ARCH.MCHP_PIC : "MCHP_PIC",
lief.ELF.ARCH.MCST_ELBRUS : "MCST_ELBRUS",
lief.ELF.ARCH.ME16 : "ME16",
lief.ELF.ARCH.METAG : "METAG",
lief.ELF.ARCH.MIPS : "MIPS",
lief.ELF.ARCH.MIPS_RS3_LE : "MIPS_RS3_LE",
lief.ELF.ARCH.MIPS_X : "MIPS_X",
lief.ELF.ARCH.MMA : "MMA",
lief.ELF.ARCH.MMDSP_PLUS : "MMDSP_PLUS",
lief.ELF.ARCH.MMIX : "MMIX",
lief.ELF.ARCH.MN10200 : "MN10200",
lief.ELF.ARCH.MN10300 : "MN10300",
lief.ELF.ARCH.MSP430 : "MSP430",
lief.ELF.ARCH.NCPU : "NCPU",
lief.ELF.ARCH.NDR1 : "NDR1",
lief.ELF.ARCH.NDS32 : "NDS32",
lief.ELF.ARCH.NORC : "NORC",
lief.ELF.ARCH.NS32K : "NS32K",
lief.ELF.ARCH.OPEN8 : "OPEN8",
lief.ELF.ARCH.OPENRISC : "OPENRISC",
lief.ELF.ARCH.PARISC : "PARISC",
lief.ELF.ARCH.PCP : "PCP",
lief.ELF.ARCH.PDP10 : "PDP10",
lief.ELF.ARCH.PDP11 : "PDP11",
lief.ELF.ARCH.PDSP : "PDSP",
lief.ELF.ARCH.H8_500 : "H8_500",
lief.ELF.ARCH.HEXAGON : "HEXAGON",
lief.ELF.ARCH.HUANY : "HUANY",
lief.ELF.ARCH.IAMCU : "IAMCU",
lief.ELF.ARCH.IA_64 : "IA_64",
lief.ELF.ARCH.INTEL205 : "INTEL205",
lief.ELF.ARCH.INTEL206 : "INTEL206",
lief.ELF.ARCH.INTEL207 : "INTEL207",
lief.ELF.ARCH.INTEL208 : "INTEL208",
lief.ELF.ARCH.INTEL209 : "INTEL209",
lief.ELF.ARCH.IP2K : "IP2K",
lief.ELF.ARCH.JAVELIN : "JAVELIN",
lief.ELF.ARCH.K10M : "K10M",
lief.ELF.ARCH.KM32 : "KM32",
lief.ELF.ARCH.KMX16 : "KMX16",
lief.ELF.ARCH.KMX32 : "KMX32",
lief.ELF.ARCH.KMX8 : "KMX8",
lief.ELF.ARCH.KVARC : "KVARC",
lief.ELF.ARCH.L10M : "L10M",
lief.ELF.ARCH.LATTICEMICO32 : "LATTICEMICO32",
lief.ELF.ARCH.M16C : "M16C",
lief.ELF.ARCH.M32 : "M32",
lief.ELF.ARCH.M32C : "M32C",
lief.ELF.ARCH.M32R : "M32R",
lief.ELF.ARCH.MANIK : "MANIK",
lief.ELF.ARCH.MAX : "MAX",
lief.ELF.ARCH.MAXQ30 : "MAXQ30",
lief.ELF.ARCH.MCHP_PIC : "MCHP_PIC",
lief.ELF.ARCH.MCST_ELBRUS : "MCST_ELBRUS",
lief.ELF.ARCH.ME16 : "ME16",
lief.ELF.ARCH.METAG : "METAG",
lief.ELF.ARCH.MIPS : "MIPS",
lief.ELF.ARCH.BA2 : "BA2",
lief.ELF.ARCH.BLACKFIN : "BLACKFIN",
lief.ELF.ARCH.C166 : "C166",
lief.ELF.ARCH.CDP : "CDP",
lief.ELF.ARCH.CE : "CE",
lief.ELF.ARCH.CLOUDSHIELD : "CLOUDSHIELD",
lief.ELF.ARCH.COGE : "COGE",
lief.ELF.ARCH.COLDFIRE : "COLDFIRE",
lief.ELF.ARCH.COOL : "COOL",
lief.ELF.ARCH.COREA_1ST : "COREA_1ST",
lief.ELF.ARCH.COREA_2ND : "COREA_2ND",
lief.ELF.ARCH.CR : "CR",
lief.ELF.ARCH.CR16 : "CR16",
lief.ELF.ARCH.CRAYNV2 : "CRAYNV2",
lief.ELF.ARCH.CRIS : "CRIS",
lief.ELF.ARCH.CRX : "CRX",
lief.ELF.ARCH.CSR_KALIMBA : "CSR_KALIMBA",
lief.ELF.ARCH.CUDA : "CUDA",
lief.ELF.ARCH.CYPRESS_M8C : "CYPRESS_M8C",
lief.ELF.ARCH.D10V : "D10V",
lief.ELF.ARCH.D30V : "D30V",
lief.ELF.ARCH.DSP24 : "DSP24",
lief.ELF.ARCH.DSPIC30F : "DSPIC30F",
lief.ELF.ARCH.DXP : "DXP",
lief.ELF.ARCH.ECOG16 : "ECOG16",
lief.ELF.ARCH.ECOG2 : "ECOG2",
lief.ELF.ARCH.ETPU : "ETPU",
lief.ELF.ARCH.EXCESS : "EXCESS",
lief.ELF.ARCH.F2MC16 : "F2MC16",
lief.ELF.ARCH.FIREPATH : "FIREPATH",
lief.ELF.ARCH.FR20 : "FR20",
lief.ELF.ARCH.FR30 : "FR30",
lief.ELF.ARCH.KVARC : "KVARC",
lief.ELF.ARCH.L10M : "L10M",
lief.ELF.ARCH.LATTICEMICO32 : "LATTICEMICO32",
lief.ELF.ARCH.M16C : "M16C",
lief.ELF.ARCH.M32 : "M32",
lief.ELF.ARCH.M32C : "M32C",
lief.ELF.ARCH.M32R : "M32R",
lief.ELF.ARCH.MANIK : "MANIK",
lief.ELF.ARCH.MAX : "MAX",
lief.ELF.ARCH.MAXQ30 : "MAXQ30",
lief.ELF.ARCH.MCHP_PIC : "MCHP_PIC",
lief.ELF.ARCH.MCST_ELBRUS : "MCST_ELBRUS",
lief.ELF.ARCH.ME16 : "ME16",
lief.ELF.ARCH.METAG : "METAG",
lief.ELF.ARCH.MIPS : "MIPS",
lief.ELF.ARCH.MIPS_RS3_LE : "MIPS_RS3_LE",
lief.ELF.ARCH.MIPS_X : "MIPS_X",
lief.ELF.ARCH.MMA : "MMA",
lief.ELF.ARCH.MMDSP_PLUS : "MMDSP_PLUS",
lief.ELF.ARCH.MMIX : "MMIX",
lief.ELF.ARCH.MN10200 : "MN10200",
lief.ELF.ARCH.MN10300 : "MN10300",
lief.ELF.ARCH.MSP430 : "MSP430",
lief.ELF.ARCH.NCPU : "NCPU",
lief.ELF.ARCH.NDR1 : "NDR1",
lief.ELF.ARCH.NDS32 : "NDS32",
lief.ELF.ARCH.NORC : "NORC",
lief.ELF.ARCH.NS32K : "NS32K",
lief.ELF.ARCH.OPEN8 : "OPEN8",
lief.ELF.ARCH.OPENRISC : "OPENRISC",
lief.ELF.ARCH.PARISC : "PARISC",
lief.ELF.ARCH.PCP : "PCP",
def get_capstone_arch(machine_type, mode):
if machine_type == lief.ELF.ARCH.ARM:
if mode == "32":
return CS_ARCH_ARM
else:
return CS_ARCH_ARM64
elif machine_type == lief.ELF.ARCH.MIPS:
return CS_ARCH_MIPS
elif machine_type == lief.ELF.ARCH.PPC:
return CS_ARCH_PPC
elif machine_type == lief.ELF.ARCH.i386:
return CS_ARCH_X86
elif machine_type == lief.ELF.ARCH.x86_64:
return CS_ARCH_X86
else:
print("Unsupported architecture, aborting disassembling...")
return None
lief.ELF.ARCH.HUANY : "HUANY",
lief.ELF.ARCH.IAMCU : "IAMCU",
lief.ELF.ARCH.IA_64 : "IA_64",
lief.ELF.ARCH.INTEL205 : "INTEL205",
lief.ELF.ARCH.INTEL206 : "INTEL206",
lief.ELF.ARCH.INTEL207 : "INTEL207",
lief.ELF.ARCH.INTEL208 : "INTEL208",
lief.ELF.ARCH.INTEL209 : "INTEL209",
lief.ELF.ARCH.IP2K : "IP2K",
lief.ELF.ARCH.JAVELIN : "JAVELIN",
lief.ELF.ARCH.K10M : "K10M",
lief.ELF.ARCH.KM32 : "KM32",
lief.ELF.ARCH.KMX16 : "KMX16",
lief.ELF.ARCH.KMX32 : "KMX32",
lief.ELF.ARCH.KMX8 : "KMX8",
lief.ELF.ARCH.KVARC : "KVARC",
lief.ELF.ARCH.L10M : "L10M",
lief.ELF.ARCH.LATTICEMICO32 : "LATTICEMICO32",
lief.ELF.ARCH.M16C : "M16C",
lief.ELF.ARCH.M32 : "M32",
lief.ELF.ARCH.M32C : "M32C",
lief.ELF.ARCH.M32R : "M32R",
lief.ELF.ARCH.MANIK : "MANIK",
lief.ELF.ARCH.MAX : "MAX",
lief.ELF.ARCH.MAXQ30 : "MAXQ30",
lief.ELF.ARCH.MCHP_PIC : "MCHP_PIC",
lief.ELF.ARCH.MCST_ELBRUS : "MCST_ELBRUS",
lief.ELF.ARCH.ME16 : "ME16",
lief.ELF.ARCH.METAG : "METAG",
lief.ELF.ARCH.MIPS : "MIPS",
lief.ELF.ARCH.MIPS_RS3_LE : "MIPS_RS3_LE",
lief.ELF.ARCH.MIPS_X : "MIPS_X",
lief.ELF.ARCH.RX : "RX",
lief.ELF.ARCH.S370 : "S370",
lief.ELF.ARCH.S390 : "S390",
lief.ELF.ARCH.SCORE7 : "SCORE7",
lief.ELF.ARCH.SEP : "SEP",
lief.ELF.ARCH.SE_C17 : "SE_C17",
lief.ELF.ARCH.SE_C33 : "SE_C33",
lief.ELF.ARCH.SH : "SH",
lief.ELF.ARCH.SHARC : "SHARC",
lief.ELF.ARCH.SLE9X : "SLE9X",
lief.ELF.ARCH.SNP1K : "SNP1K",
lief.ELF.ARCH.SPARC : "SPARC",
lief.ELF.ARCH.SPARCV9 : "SPARCV9",
lief.ELF.ARCH.SPU : "SPU",
lief.ELF.ARCH.ST100 : "ST100",
lief.ELF.ARCH.ST19 : "ST19",
lief.ELF.ARCH.ST200 : "ST200",
lief.ELF.ARCH.ST7 : "ST7",
lief.ELF.ARCH.ST9PLUS : "ST9PLUS",
lief.ELF.ARCH.STARCORE : "STARCORE",
lief.ELF.ARCH.STM8 : "STM8",
lief.ELF.ARCH.STXP7X : "STXP7X",
lief.ELF.ARCH.SVX : "SVX",
lief.ELF.ARCH.TILE64 : "TILE64",
lief.ELF.ARCH.TILEGX : "TILEGX",
lief.ELF.ARCH.TILEPRO : "TILEPRO",
lief.ELF.ARCH.TINYJ : "TINYJ",
lief.ELF.ARCH.TI_C2000 : "TI_C2000",
lief.ELF.ARCH.TI_C5500 : "TI_C5500",
lief.ELF.ARCH.TI_C6000 : "TI_C6000",
lief.ELF.ARCH.TMM_GPP : "TMM_GPP",
lief.ELF.ARCH.TPC : "TPC",
lief.ELF.ARCH.DSP24 : "DSP24",
lief.ELF.ARCH.DSPIC30F : "DSPIC30F",
lief.ELF.ARCH.DXP : "DXP",
lief.ELF.ARCH.ECOG16 : "ECOG16",
lief.ELF.ARCH.ECOG2 : "ECOG2",
lief.ELF.ARCH.ETPU : "ETPU",
lief.ELF.ARCH.EXCESS : "EXCESS",
lief.ELF.ARCH.F2MC16 : "F2MC16",
lief.ELF.ARCH.FIREPATH : "FIREPATH",
lief.ELF.ARCH.FR20 : "FR20",
lief.ELF.ARCH.FR30 : "FR30",
lief.ELF.ARCH.FX66 : "FX66",
lief.ELF.ARCH.H8S : "H8S",
lief.ELF.ARCH.H8_300 : "H8_300",
lief.ELF.ARCH.H8_300H : "H8_300H",
lief.ELF.ARCH.H8_500 : "H8_500",
lief.ELF.ARCH.HEXAGON : "HEXAGON",
lief.ELF.ARCH.HUANY : "HUANY",
lief.ELF.ARCH.IAMCU : "IAMCU",
lief.ELF.ARCH.IA_64 : "IA_64",
lief.ELF.ARCH.INTEL205 : "INTEL205",
lief.ELF.ARCH.INTEL206 : "INTEL206",
lief.ELF.ARCH.INTEL207 : "INTEL207",
lief.ELF.ARCH.INTEL208 : "INTEL208",
lief.ELF.ARCH.INTEL209 : "INTEL209",
lief.ELF.ARCH.IP2K : "IP2K",
lief.ELF.ARCH.JAVELIN : "JAVELIN",
lief.ELF.ARCH.K10M : "K10M",
lief.ELF.ARCH.KM32 : "KM32",
lief.ELF.ARCH.KMX16 : "KMX16",
lief.ELF.ARCH.KMX32 : "KMX32",
lief.ELF.ARCH.KMX8 : "KMX8",
lief.ELF.ARCH.ARCA : "ARCA",
lief.ELF.ARCH.ARCH_56800EX : "ARCH_56800EX",
lief.ELF.ARCH.ARCH_68HC05 : "ARCH_68HC05",
lief.ELF.ARCH.ARCH_68HC08 : "ARCH_68HC08",
lief.ELF.ARCH.ARCH_68HC11 : "ARCH_68HC11",
lief.ELF.ARCH.ARCH_68HC12 : "ARCH_68HC12",
lief.ELF.ARCH.ARCH_68HC16 : "ARCH_68HC16",
lief.ELF.ARCH.ARCH_68K : "ARCH_68K",
lief.ELF.ARCH.ARCH_78KOR : "ARCH_78KOR",
lief.ELF.ARCH.ARCH_8051 : "ARCH_8051",
lief.ELF.ARCH.ARCH_860 : "ARCH_860",
lief.ELF.ARCH.ARCH_88K : "ARCH_88K",
lief.ELF.ARCH.ARCH_960 : "ARCH_960",
lief.ELF.ARCH.ARC_COMPACT : "ARC_COMPACT",
lief.ELF.ARCH.ARC_COMPACT2 : "ARC_COMPACT2",
lief.ELF.ARCH.ARM : "ARM",
lief.ELF.ARCH.AVR : "AVR",
lief.ELF.ARCH.AVR32 : "AVR32",
lief.ELF.ARCH.BA1 : "BA1",
lief.ELF.ARCH.BA2 : "BA2",
lief.ELF.ARCH.BLACKFIN : "BLACKFIN",
lief.ELF.ARCH.C166 : "C166",
lief.ELF.ARCH.CDP : "CDP",
lief.ELF.ARCH.CE : "CE",
lief.ELF.ARCH.CLOUDSHIELD : "CLOUDSHIELD",
lief.ELF.ARCH.COGE : "COGE",
lief.ELF.ARCH.COLDFIRE : "COLDFIRE",
lief.ELF.ARCH.COOL : "COOL",
lief.ELF.ARCH.COREA_1ST : "COREA_1ST",
lief.ELF.ARCH.COREA_2ND : "COREA_2ND",
lief.ELF.ARCH.CR : "CR",
lief.ELF.ARCH.CR16 : "CR16",
lief.ELF.SYMBOL_TYPES.OBJECT : "OBJECT",
lief.ELF.SYMBOL_TYPES.SECTION : "SECTION",
lief.ELF.SYMBOL_TYPES.TLS : "TLS",
lief.ELF.SYMBOL_TYPES.FUNC : "FUNC"
}
ELF_MACHINE_TYPE = {
lief.ELF.ARCH.AARCH64 : "AARCH64",
lief.ELF.ARCH.ALPHA : "ALPHA",
lief.ELF.ARCH.ALTERA_NIOS2 : "ALTERA_NIOS2",
lief.ELF.ARCH.AMDGPU : "AMDGPU",
lief.ELF.ARCH.ARC : "ARC",
lief.ELF.ARCH.ARCA : "ARCA",
lief.ELF.ARCH.ARCH_56800EX : "ARCH_56800EX",
lief.ELF.ARCH.ARCH_68HC05 : "ARCH_68HC05",
lief.ELF.ARCH.ARCH_68HC08 : "ARCH_68HC08",
lief.ELF.ARCH.ARCH_68HC11 : "ARCH_68HC11",
lief.ELF.ARCH.ARCH_68HC12 : "ARCH_68HC12",
lief.ELF.ARCH.ARCH_68HC16 : "ARCH_68HC16",
lief.ELF.ARCH.ARCH_68K : "ARCH_68K",
lief.ELF.ARCH.ARCH_78KOR : "ARCH_78KOR",
lief.ELF.ARCH.ARCH_8051 : "ARCH_8051",
lief.ELF.ARCH.ARCH_860 : "ARCH_860",
lief.ELF.ARCH.ARCH_88K : "ARCH_88K",
lief.ELF.ARCH.ARCH_960 : "ARCH_960",
lief.ELF.ARCH.ARC_COMPACT : "ARC_COMPACT",
lief.ELF.ARCH.ARC_COMPACT2 : "ARC_COMPACT2",
lief.ELF.ARCH.ARM : "ARM",
lief.ELF.ARCH.AVR : "AVR",
lief.ELF.ARCH.AVR32 : "AVR32",
lief.ELF.ARCH.BA1 : "BA1",
lief.ELF.ARCH.BA2 : "BA2",