mirror of
https://github.com/bitdefender/bddisasm.git
synced 2024-12-22 22:18:09 +00:00
Removed support for PCOMMIT and CL1INVMB (not implemented by any x86/x64 CPUs), and marked MOV to/from test registers as being invalid in long mode.
Fixed https://github.com/bitdefender/bddisasm/issues/24 Fixed https://github.com/bitdefender/bddisasm/issues/25 Fixed https://github.com/bitdefender/bddisasm/issues/26
This commit is contained in:
parent
bcf9a89d69
commit
58197cc518
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
#ifndef MNEMONICS_H
|
||||
#define MNEMONICS_H
|
||||
|
||||
const char *gMnemonics[1588] =
|
||||
const char *gMnemonics[1586] =
|
||||
{
|
||||
"AAA", "AAD", "AAM", "AAS", "ADC", "ADCX", "ADD", "ADDPD", "ADDPS",
|
||||
"ADDSD", "ADDSS", "ADDSUBPD", "ADDSUBPS", "ADOX", "AESDEC", "AESDEC128KL",
|
||||
@ -13,8 +13,8 @@ const char *gMnemonics[1588] =
|
||||
"BLENDVPD", "BLENDVPS", "BLSFILL", "BLSI", "BLSIC", "BLSMSK",
|
||||
"BLSR", "BNDCL", "BNDCN", "BNDCU", "BNDLDX", "BNDMK", "BNDMOV",
|
||||
"BNDSTX", "BOUND", "BSF", "BSR", "BSWAP", "BT", "BTC", "BTR",
|
||||
"BTS", "BZHI", "CALL", "CALLF", "CBW", "CDQ", "CDQE", "CL1INVMB",
|
||||
"CLAC", "CLC", "CLD", "CLDEMOTE", "CLEVICT0", "CLEVICT1", "CLFLUSH",
|
||||
"BTS", "BZHI", "CALL", "CALLF", "CBW", "CDQ", "CDQE", "CLAC",
|
||||
"CLC", "CLD", "CLDEMOTE", "CLEVICT0", "CLEVICT1", "CLFLUSH",
|
||||
"CLFLUSHOPT", "CLGI", "CLI", "CLRSSBSY", "CLTS", "CLUI", "CLWB",
|
||||
"CLZERO", "CMC", "CMOVBE", "CMOVC", "CMOVL", "CMOVLE", "CMOVNBE",
|
||||
"CMOVNC", "CMOVNL", "CMOVNLE", "CMOVNO", "CMOVNP", "CMOVNS",
|
||||
@ -80,13 +80,13 @@ const char *gMnemonics[1588] =
|
||||
"PAND", "PANDN", "PAUSE", "PAVGB", "PAVGUSB", "PAVGW", "PBLENDVB",
|
||||
"PBLENDW", "PCLMULQDQ", "PCMPEQB", "PCMPEQD", "PCMPEQQ", "PCMPEQW",
|
||||
"PCMPESTRI", "PCMPESTRM", "PCMPGTB", "PCMPGTD", "PCMPGTQ", "PCMPGTW",
|
||||
"PCMPISTRI", "PCMPISTRM", "PCOMMIT", "PCONFIG", "PDEP", "PEXT",
|
||||
"PEXTRB", "PEXTRD", "PEXTRQ", "PEXTRW", "PF2ID", "PF2IW", "PFACC",
|
||||
"PFADD", "PFCMPEQ", "PFCMPGE", "PFCMPGT", "PFMAX", "PFMIN", "PFMUL",
|
||||
"PFNACC", "PFPNACC", "PFRCP", "PFRCPIT1", "PFRCPIT2", "PFRCPV",
|
||||
"PFRSQIT1", "PFRSQRT", "PFRSQRTV", "PFSUB", "PFSUBR", "PHADDD",
|
||||
"PHADDSW", "PHADDW", "PHMINPOSUW", "PHSUBD", "PHSUBSW", "PHSUBW",
|
||||
"PI2FD", "PI2FW", "PINSRB", "PINSRD", "PINSRQ", "PINSRW", "PMADDUBSW",
|
||||
"PCMPISTRI", "PCMPISTRM", "PCONFIG", "PDEP", "PEXT", "PEXTRB",
|
||||
"PEXTRD", "PEXTRQ", "PEXTRW", "PF2ID", "PF2IW", "PFACC", "PFADD",
|
||||
"PFCMPEQ", "PFCMPGE", "PFCMPGT", "PFMAX", "PFMIN", "PFMUL", "PFNACC",
|
||||
"PFPNACC", "PFRCP", "PFRCPIT1", "PFRCPIT2", "PFRCPV", "PFRSQIT1",
|
||||
"PFRSQRT", "PFRSQRTV", "PFSUB", "PFSUBR", "PHADDD", "PHADDSW",
|
||||
"PHADDW", "PHMINPOSUW", "PHSUBD", "PHSUBSW", "PHSUBW", "PI2FD",
|
||||
"PI2FW", "PINSRB", "PINSRD", "PINSRQ", "PINSRW", "PMADDUBSW",
|
||||
"PMADDWD", "PMAXSB", "PMAXSD", "PMAXSW", "PMAXUB", "PMAXUD",
|
||||
"PMAXUW", "PMINSB", "PMINSD", "PMINSW", "PMINUB", "PMINUD", "PMINUW",
|
||||
"PMOVMSKB", "PMOVSXBD", "PMOVSXBQ", "PMOVSXBW", "PMOVSXDQ", "PMOVSXWD",
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -10,13 +10,13 @@ const ND_TABLE_INSTRUCTION gXopTable_root_0a_10_leaf =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_0a_12_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[597]
|
||||
(const void *)&gInstructions[596]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_0a_12_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[598]
|
||||
(const void *)&gInstructions[597]
|
||||
};
|
||||
|
||||
const ND_TABLE_MODRM_REG gXopTable_root_0a_12_modrmreg =
|
||||
@ -330,13 +330,13 @@ const ND_TABLE_INSTRUCTION gXopTable_root_09_01_06_leaf =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_01_07_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1317]
|
||||
(const void *)&gInstructions[1315]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_01_04_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1341]
|
||||
(const void *)&gInstructions[1339]
|
||||
};
|
||||
|
||||
const ND_TABLE_MODRM_REG gXopTable_root_09_01_modrmreg =
|
||||
@ -384,13 +384,13 @@ const ND_TABLE_MODRM_REG gXopTable_root_09_02_modrmreg =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_12_reg_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[579]
|
||||
(const void *)&gInstructions[578]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_12_reg_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1268]
|
||||
(const void *)&gInstructions[1266]
|
||||
};
|
||||
|
||||
const ND_TABLE_MODRM_REG gXopTable_root_09_12_reg_modrmreg =
|
||||
@ -420,127 +420,127 @@ const ND_TABLE_MODRM_MOD gXopTable_root_09_12_modrmmod =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_81_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1693]
|
||||
(const void *)&gInstructions[1691]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_80_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1694]
|
||||
(const void *)&gInstructions[1692]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_83_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1695]
|
||||
(const void *)&gInstructions[1693]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_82_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1696]
|
||||
(const void *)&gInstructions[1694]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_c2_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2086]
|
||||
(const void *)&gInstructions[2084]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_c3_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2087]
|
||||
(const void *)&gInstructions[2085]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_c1_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2088]
|
||||
(const void *)&gInstructions[2086]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_cb_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2090]
|
||||
(const void *)&gInstructions[2088]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_d2_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2092]
|
||||
(const void *)&gInstructions[2090]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_d3_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2093]
|
||||
(const void *)&gInstructions[2091]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_d1_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2094]
|
||||
(const void *)&gInstructions[2092]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_db_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2095]
|
||||
(const void *)&gInstructions[2093]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_d6_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2096]
|
||||
(const void *)&gInstructions[2094]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_d7_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2097]
|
||||
(const void *)&gInstructions[2095]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_c6_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2099]
|
||||
(const void *)&gInstructions[2097]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_c7_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2100]
|
||||
(const void *)&gInstructions[2098]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_e1_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2102]
|
||||
(const void *)&gInstructions[2100]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_e3_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2104]
|
||||
(const void *)&gInstructions[2102]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_e2_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2107]
|
||||
(const void *)&gInstructions[2105]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_90_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2269]
|
||||
(const void *)&gInstructions[2267]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_90_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2270]
|
||||
(const void *)&gInstructions[2268]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_90_w =
|
||||
@ -555,13 +555,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_90_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_92_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2272]
|
||||
(const void *)&gInstructions[2270]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_92_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2273]
|
||||
(const void *)&gInstructions[2271]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_92_w =
|
||||
@ -576,13 +576,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_92_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_93_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2275]
|
||||
(const void *)&gInstructions[2273]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_93_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2276]
|
||||
(const void *)&gInstructions[2274]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_93_w =
|
||||
@ -597,13 +597,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_93_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_91_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2278]
|
||||
(const void *)&gInstructions[2276]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_91_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2279]
|
||||
(const void *)&gInstructions[2277]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_91_w =
|
||||
@ -618,13 +618,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_91_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_98_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2286]
|
||||
(const void *)&gInstructions[2284]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_98_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2287]
|
||||
(const void *)&gInstructions[2285]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_98_w =
|
||||
@ -639,13 +639,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_98_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_9a_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2288]
|
||||
(const void *)&gInstructions[2286]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_9a_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2289]
|
||||
(const void *)&gInstructions[2287]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_9a_w =
|
||||
@ -660,13 +660,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_9a_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_9b_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2290]
|
||||
(const void *)&gInstructions[2288]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_9b_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2291]
|
||||
(const void *)&gInstructions[2289]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_9b_w =
|
||||
@ -681,13 +681,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_9b_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_99_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2292]
|
||||
(const void *)&gInstructions[2290]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_99_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2293]
|
||||
(const void *)&gInstructions[2291]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_99_w =
|
||||
@ -702,13 +702,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_99_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_94_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2294]
|
||||
(const void *)&gInstructions[2292]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_94_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2295]
|
||||
(const void *)&gInstructions[2293]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_94_w =
|
||||
@ -723,13 +723,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_94_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_95_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2296]
|
||||
(const void *)&gInstructions[2294]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_95_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2307]
|
||||
(const void *)&gInstructions[2305]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_95_w =
|
||||
@ -744,13 +744,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_95_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_96_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2297]
|
||||
(const void *)&gInstructions[2295]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_96_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2298]
|
||||
(const void *)&gInstructions[2296]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_96_w =
|
||||
@ -765,13 +765,13 @@ const ND_TABLE_VEX_W gXopTable_root_09_96_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_97_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2305]
|
||||
(const void *)&gInstructions[2303]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_09_97_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2306]
|
||||
(const void *)&gInstructions[2304]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_09_97_w =
|
||||
@ -1049,13 +1049,13 @@ const ND_TABLE_OPCODE gXopTable_root_09_opcode =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_a2_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1968]
|
||||
(const void *)&gInstructions[1966]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_a2_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1969]
|
||||
(const void *)&gInstructions[1967]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_08_a2_w =
|
||||
@ -1070,133 +1070,133 @@ const ND_TABLE_VEX_W gXopTable_root_08_a2_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_cc_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1998]
|
||||
(const void *)&gInstructions[1996]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_ce_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[1999]
|
||||
(const void *)&gInstructions[1997]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_cf_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2004]
|
||||
(const void *)&gInstructions[2002]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_ec_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2005]
|
||||
(const void *)&gInstructions[2003]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_ee_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2006]
|
||||
(const void *)&gInstructions[2004]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_ef_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2007]
|
||||
(const void *)&gInstructions[2005]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_ed_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2008]
|
||||
(const void *)&gInstructions[2006]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_cd_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2009]
|
||||
(const void *)&gInstructions[2007]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_9e_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2122]
|
||||
(const void *)&gInstructions[2120]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_9f_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2123]
|
||||
(const void *)&gInstructions[2121]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_97_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2124]
|
||||
(const void *)&gInstructions[2122]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_8e_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2125]
|
||||
(const void *)&gInstructions[2123]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_8f_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2126]
|
||||
(const void *)&gInstructions[2124]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_87_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2127]
|
||||
(const void *)&gInstructions[2125]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_86_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2128]
|
||||
(const void *)&gInstructions[2126]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_85_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2129]
|
||||
(const void *)&gInstructions[2127]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_96_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2130]
|
||||
(const void *)&gInstructions[2128]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_95_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2131]
|
||||
(const void *)&gInstructions[2129]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_a6_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2132]
|
||||
(const void *)&gInstructions[2130]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_b6_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2133]
|
||||
(const void *)&gInstructions[2131]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_a3_00_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2258]
|
||||
(const void *)&gInstructions[2256]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_a3_01_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2259]
|
||||
(const void *)&gInstructions[2257]
|
||||
};
|
||||
|
||||
const ND_TABLE_VEX_W gXopTable_root_08_a3_w =
|
||||
@ -1211,25 +1211,25 @@ const ND_TABLE_VEX_W gXopTable_root_08_a3_w =
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_c0_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2268]
|
||||
(const void *)&gInstructions[2266]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_c2_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2271]
|
||||
(const void *)&gInstructions[2269]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_c3_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2274]
|
||||
(const void *)&gInstructions[2272]
|
||||
};
|
||||
|
||||
const ND_TABLE_INSTRUCTION gXopTable_root_08_c1_leaf =
|
||||
{
|
||||
ND_ILUT_INSTRUCTION,
|
||||
(const void *)&gInstructions[2277]
|
||||
(const void *)&gInstructions[2275]
|
||||
};
|
||||
|
||||
const ND_TABLE_OPCODE gXopTable_root_08_opcode =
|
||||
|
@ -158,7 +158,6 @@ const char* set_to_string(
|
||||
case ND_SET_MWAITT: return "MWAITT";
|
||||
case ND_SET_PAUSE: return "PAUSE";
|
||||
case ND_SET_PCLMULQDQ: return "PCLMULQDQ";
|
||||
case ND_SET_PCOMMIT: return "PCOMMIT";
|
||||
case ND_SET_PCONFIG: return "PCONFIG";
|
||||
case ND_SET_PENTIUMREAL: return "PENTIUMREAL";
|
||||
case ND_SET_PKU: return "PKU";
|
||||
@ -173,7 +172,6 @@ const char* set_to_string(
|
||||
case ND_SET_RDSEED: return "RDSEED";
|
||||
case ND_SET_RDTSCP: return "RDTSCP";
|
||||
case ND_SET_RDWRFSGS: return "RDWRFSGS";
|
||||
case ND_SET_SCC: return "SCC";
|
||||
case ND_SET_SERIALIZE: return "SERIALIZE";
|
||||
case ND_SET_SGX: return "SGX";
|
||||
case ND_SET_SHA: return "SHA";
|
||||
|
@ -142,7 +142,6 @@ std::string ins_class_to_str(const ND_INS_CLASS cls)
|
||||
case ND_INS_CBW: return "cbw";
|
||||
case ND_INS_CDQ: return "cdq";
|
||||
case ND_INS_CDQE: return "cdqe";
|
||||
case ND_INS_CL1INVMB: return "cl1invmb";
|
||||
case ND_INS_CLAC: return "clac";
|
||||
case ND_INS_CLC: return "clc";
|
||||
case ND_INS_CLD: return "cld";
|
||||
@ -512,7 +511,6 @@ std::string ins_class_to_str(const ND_INS_CLASS cls)
|
||||
case ND_INS_PCMPGTW: return "pcmpgtw";
|
||||
case ND_INS_PCMPISTRI: return "pcmpistri";
|
||||
case ND_INS_PCMPISTRM: return "pcmpistrm";
|
||||
case ND_INS_PCOMMIT: return "pcommit";
|
||||
case ND_INS_PCONFIG: return "pconfig";
|
||||
case ND_INS_PDEP: return "pdep";
|
||||
case ND_INS_PEXT: return "pext";
|
||||
|
@ -83,7 +83,6 @@ typedef enum _ND_INS_CLASS
|
||||
ND_INS_CBW,
|
||||
ND_INS_CDQ,
|
||||
ND_INS_CDQE,
|
||||
ND_INS_CL1INVMB,
|
||||
ND_INS_CLAC,
|
||||
ND_INS_CLC,
|
||||
ND_INS_CLD,
|
||||
@ -455,7 +454,6 @@ typedef enum _ND_INS_CLASS
|
||||
ND_INS_PCMPGTW,
|
||||
ND_INS_PCMPISTRI,
|
||||
ND_INS_PCMPISTRM,
|
||||
ND_INS_PCOMMIT,
|
||||
ND_INS_PCONFIG,
|
||||
ND_INS_PDEP,
|
||||
ND_INS_PEXT,
|
||||
@ -1563,7 +1561,6 @@ typedef enum _ND_INS_SET
|
||||
ND_SET_MWAITT,
|
||||
ND_SET_PAUSE,
|
||||
ND_SET_PCLMULQDQ,
|
||||
ND_SET_PCOMMIT,
|
||||
ND_SET_PCONFIG,
|
||||
ND_SET_PENTIUMREAL,
|
||||
ND_SET_PKU,
|
||||
@ -1578,7 +1575,6 @@ typedef enum _ND_INS_SET
|
||||
ND_SET_RDSEED,
|
||||
ND_SET_RDTSCP,
|
||||
ND_SET_RDWRFSGS,
|
||||
ND_SET_SCC,
|
||||
ND_SET_SERIALIZE,
|
||||
ND_SET_SGX,
|
||||
ND_SET_SHA,
|
||||
|
@ -48,7 +48,6 @@
|
||||
#define ND_CFF_ADX ND_CFF(0x00000007, 0x00000000, NDR_EBX, 19)
|
||||
#define ND_CFF_SMAP ND_CFF(0x00000007, 0x00000000, NDR_EBX, 20)
|
||||
#define ND_CFF_AVX512IFMA ND_CFF(0x00000007, 0x00000000, NDR_EBX, 21)
|
||||
#define ND_CFF_PCOMMIT ND_CFF(0x00000007, 0x00000000, NDR_EBX, 22)
|
||||
#define ND_CFF_CLFSHOPT ND_CFF(0x00000007, 0x00000000, NDR_EBX, 23)
|
||||
#define ND_CFF_CLWB ND_CFF(0x00000007, 0x00000000, NDR_EBX, 24)
|
||||
#define ND_CFF_AVX512PF ND_CFF(0x00000007, 0x00000000, NDR_EBX, 26)
|
||||
|
@ -7,6 +7,6 @@
|
||||
|
||||
#define DISASM_VERSION_MAJOR 1
|
||||
#define DISASM_VERSION_MINOR 31
|
||||
#define DISASM_VERSION_REVISION 2
|
||||
#define DISASM_VERSION_REVISION 3
|
||||
|
||||
#endif // DISASM_VER_H
|
||||
|
@ -48,7 +48,8 @@ RDSEED : 0x00000007, 0x00000000, EBX, 18
|
||||
ADX : 0x00000007, 0x00000000, EBX, 19
|
||||
SMAP : 0x00000007, 0x00000000, EBX, 20
|
||||
AVX512IFMA : 0x00000007, 0x00000000, EBX, 21
|
||||
PCOMMIT : 0x00000007, 0x00000000, EBX, 22
|
||||
# Dropped by Intel.
|
||||
#PCOMMIT : 0x00000007, 0x00000000, EBX, 22
|
||||
CLFSHOPT : 0x00000007, 0x00000000, EBX, 23
|
||||
CLWB : 0x00000007, 0x00000000, EBX, 24
|
||||
AVX512PF : 0x00000007, 0x00000000, EBX, 26
|
||||
|
@ -87,7 +87,8 @@ SYSRET nil STAR,SS,rCX,R11,CS,rIP,Fv,SSP [ 0x0F 0x07]
|
||||
INVD nil nil [ 0x0F 0x08] s:I486REAL, t:SYSTEM, a:SERIAL, m:KERNEL|NOV86
|
||||
WBINVD nil nil [ 0x0F 0x09] s:I486REAL, t:SYSTEM, a:SERIAL, m:KERNEL|NOV86
|
||||
WBNOINVD nil nil [ a0xF3 0x0F 0x09] s:WBNOINVD, t:WBNOINVD, m:KERNEL|NOV86
|
||||
CL1INVMB nil nil [ 0x0F 0x0A] s:SCC, t:SYSTEM
|
||||
# Not supported by regulat x86 CPUs.
|
||||
#CL1INVMB nil nil [ 0x0F 0x0A] s:SCC, t:SYSTEM, m:NO64
|
||||
UD2 nil nil [ 0x0F 0x0B] s:PPRO, t:MISC
|
||||
PREFETCHE Mb nil [ 0x0F 0x0D /0:mem] s:PREFETCH_NOP, t:PREFETCH, w:P
|
||||
NOP Ev,Gv nil [ 0x0F 0x0D /0:reg] s:PPRO, t:NOP, w:N|N
|
||||
@ -217,8 +218,8 @@ MOV Ry,Cy nil [ 0x0F 0x20 /r
|
||||
MOV Ry,Dy nil [ 0x0F 0x21 /r] s:I86, t:DATAXFER, c:MOV_DR, w:W|R, a:MFR|F64, m:KERNEL|NOV86
|
||||
MOV Cy,Ry nil [ 0x0F 0x22 /r] s:I86, t:DATAXFER, c:MOV_CR, w:W|R, a:LOCKSP|MFR|F64|SERIAL, m:KERNEL|NOV86
|
||||
MOV Dy,Ry nil [ 0x0F 0x23 /r] s:I86, t:DATAXFER, c:MOV_DR, w:W|R, a:MFR|F64|SERIAL, m:KERNEL|NOV86
|
||||
MOV Ry,Ty nil [ 0x0F 0x24 /r] s:I86, t:DATAXFER, c:MOV_TR, w:W|R, a:MFR|F64, m:KERNEL|NOV86
|
||||
MOV Ty,Ry nil [ 0x0F 0x26 /r] s:I86, t:DATAXFER, c:MOV_TR, w:W|R, a:MFR|F64, m:KERNEL|NOV86
|
||||
MOV Ry,Ty nil [ 0x0F 0x24 /r] s:I86, t:DATAXFER, c:MOV_TR, w:W|R, a:MFR|F64, m:KERNEL|NOV86|NO64
|
||||
MOV Ty,Ry nil [ 0x0F 0x26 /r] s:I86, t:DATAXFER, c:MOV_TR, w:W|R, a:MFR|F64, m:KERNEL|NOV86|NO64
|
||||
MOVAPS Vps,Wps nil [ NP 0x0F 0x28 /r] s:SSE, t:DATAXFER, w:W|R, e:1
|
||||
MOVAPD Vpd,Wpd nil [ 0x66 0x0F 0x28 /r] s:SSE2, t:DATAXFER, w:W|R, e:1
|
||||
MOVAPS Wps,Vps nil [ NP 0x0F 0x29 /r] s:SSE, t:DATAXFER, w:W|R, e:1
|
||||
@ -516,7 +517,7 @@ TPAUSE Ry EDX,EAX,Fv [ 0x66 0x0F 0xAE /6
|
||||
MFENCE nil nil [ NP 0x0F 0xAE /6:reg] s:SSE2, t:MISC
|
||||
SFENCE nil nil [ NP 0x0F 0xAE /7:reg] s:SSE2, t:MISC
|
||||
# Intel dropped support for the PCOMMIT instruction before it was shipped in any CPU. The following instruction wil ALWAYS cause a #UD from now on.
|
||||
PCOMMIT nil nil [ 0x66 0x0F 0xAE /7:reg] s:PCOMMIT, t:MISC
|
||||
#PCOMMIT nil nil [ 0x66 0x0F 0xAE /7:reg] s:PCOMMIT, t:MISC
|
||||
|
||||
IMUL Gv,Ev Fv [ 0x0F 0xAF /r] s:I86, t:ARITH, w:RW|R|W, f:MUL
|
||||
|
||||
|
@ -12,7 +12,7 @@ from setuptools import find_packages, setup, Command, Extension, Distribution
|
||||
from codecs import open
|
||||
|
||||
VERSION = (0, 1, 3)
|
||||
LIBRARY_VERSION = (1, 31, 2)
|
||||
LIBRARY_VERSION = (1, 31, 3)
|
||||
LIBRARY_INSTRUX_SIZE = 864
|
||||
|
||||
packages = ['pybddisasm']
|
||||
|
Loading…
Reference in New Issue
Block a user