Flag the rIP operand of conditional branches as being conditionally read/write instead of plain read/write.

Bypass self-writes option in bdshemu - if set, bdshemu will not proceed to commit modifications made by the shellcode to itself.
pull/52/head
Andrei Vlad LUTAS 3 years ago
parent 92b3725cf0
commit f7bf814bbc

@ -7569,7 +7569,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7586,7 +7586,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7603,7 +7603,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7620,7 +7620,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7638,7 +7638,7 @@ const ND_INSTRUCTION gInstructions[2589] =
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_GPR_rCX, ND_OPS_asz, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
},
},
@ -7655,7 +7655,7 @@ const ND_INSTRUCTION gInstructions[2589] =
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_GPR_rCX, ND_OPS_asz, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
},
},
@ -7671,7 +7671,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7688,7 +7688,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7705,7 +7705,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7722,7 +7722,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7853,7 +7853,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7870,7 +7870,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7887,7 +7887,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7904,7 +7904,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7921,7 +7921,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7938,7 +7938,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7955,7 +7955,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7972,7 +7972,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -7989,7 +7989,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8006,7 +8006,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8023,7 +8023,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8040,7 +8040,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8057,7 +8057,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8074,7 +8074,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8091,7 +8091,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8108,7 +8108,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8125,7 +8125,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8142,7 +8142,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8159,7 +8159,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8176,7 +8176,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8194,7 +8194,7 @@ const ND_INSTRUCTION gInstructions[2589] =
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_GPR_rCX, ND_OPS_asz, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
},
},
@ -8210,7 +8210,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8227,7 +8227,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8244,7 +8244,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -8261,7 +8261,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -9914,7 +9914,7 @@ const ND_INSTRUCTION gInstructions[2589] =
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_GPR_rCX, ND_OPS_asz, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -9932,7 +9932,7 @@ const ND_INSTRUCTION gInstructions[2589] =
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_GPR_rCX, ND_OPS_asz, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -9950,7 +9950,7 @@ const ND_INSTRUCTION gInstructions[2589] =
{
OP(ND_OPT_J, ND_OPS_b, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_GPR_rCX, ND_OPS_asz, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_CRCW, 0, 0),
OP(ND_OPT_F, ND_OPS_v, ND_OPF_DEFAULT, ND_OPA_R, 0, 0),
},
},
@ -42827,7 +42827,7 @@ const ND_INSTRUCTION gInstructions[2589] =
0,
{
OP(ND_OPT_J, ND_OPS_z, 0, ND_OPA_R, 0, 0),
OP(ND_OPT_RIP, ND_OPS_yf, ND_OPF_DEFAULT, ND_OPA_RW, 0, 0),
OP(ND_OPT_RIP, ND_OPS_yf, ND_OPF_DEFAULT, ND_OPA_RCW, 0, 0),
OP(ND_OPT_GPR_rAX, ND_OPS_d, ND_OPF_DEFAULT, ND_OPA_CW, 0, 0),
},
},

@ -487,7 +487,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Flags, RegSize: 2, RegId: 0, RegCount: 1
000000000000005B 73fe JNC 0x5b
@ -505,7 +505,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Flags, RegSize: 2, RegId: 0, RegCount: 1
000000000000005D e2fe LOOP 0x5d
@ -524,7 +524,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Flags, RegSize: 2, RegId: 0, RegCount: 1
000000000000005F e0fe LOOPNZ 0x5f
@ -543,7 +543,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Flags, RegSize: 2, RegId: 0, RegCount: 1
0000000000000061 e3fe JCXZ 0x61
@ -560,7 +560,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
0000000000000063 67e3fd JECXZ 0x63
DSIZE: 16, ASIZE: 32, VLEN: -
@ -576,7 +576,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: IP, RegSize: 2, RegId: 0, RegCount: 1
0000000000000066 cd21 INT 0x21
DSIZE: 16, ASIZE: 16, VLEN: -

@ -487,7 +487,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: Flags, RegSize: 4, RegId: 0, RegCount: 1
0000000000000059 73fe JNC 0x59
@ -505,7 +505,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: Flags, RegSize: 4, RegId: 0, RegCount: 1
000000000000005B e2fe LOOP 0x5b
@ -524,7 +524,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: Flags, RegSize: 4, RegId: 0, RegCount: 1
000000000000005D e0fe LOOPNZ 0x5d
@ -543,7 +543,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: Flags, RegSize: 4, RegId: 0, RegCount: 1
000000000000005F 67e3fd JCXZ 0x5f
@ -560,7 +560,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
0000000000000062 e3fe JECXZ 0x62
DSIZE: 32, ASIZE: 32, VLEN: -
@ -576,7 +576,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: IP, RegSize: 4, RegId: 0, RegCount: 1
0000000000000064 cd21 INT 0x21
DSIZE: 32, ASIZE: 32, VLEN: -

@ -267,7 +267,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000027 73fe JNC 0x27
@ -285,7 +285,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000029 e2fe LOOP 0x29
@ -304,7 +304,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000002B e0fe LOOPNZ 0x2b
@ -323,7 +323,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000002D e3fe JRCXZ 0x2d
@ -340,7 +340,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
000000000000002F 67e3fd JECXZ 0x2f
DSIZE: 64, ASIZE: 32, VLEN: -
@ -356,7 +356,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
0000000000000032 cd21 INT 0x21
DSIZE: 32, ASIZE: 64, VLEN: -

@ -513,7 +513,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
0000000000000079 48e300 JRCXZ 0x7c
DSIZE: 64, ASIZE: 64, VLEN: -
@ -529,7 +529,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
000000000000007C 67e300 JECXZ 0x7f
DSIZE: 64, ASIZE: 32, VLEN: -
@ -545,7 +545,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
000000000000007F 67a4 MOVSB
DSIZE: 32, ASIZE: 32, VLEN: -
@ -1314,7 +1314,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000011B 3e7200 BHT JC 0x11e
@ -1332,7 +1332,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: yes, BHINT: yes, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000011E f2e800000000 BND CALL 0x124

@ -12,7 +12,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 4, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: RCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
0000000000000006 0f01d6 XTEST

@ -15,7 +15,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000003 5e POP rsi
@ -96,7 +96,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000010 5e POP rsi
@ -177,7 +177,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000001D 5e POP rsi
@ -297,7 +297,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000002A 5e POP rsi
@ -378,7 +378,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000037 4b009090909090 ADD byte ptr [r8-0x6f6f6f70], dl
@ -456,7 +456,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000044 4b009090909090 ADD byte ptr [r8-0x6f6f6f70], dl
@ -534,7 +534,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000051 4b009090909090 ADD byte ptr [r8-0x6f6f6f70], dl
@ -612,7 +612,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000005E 49009090909090 ADD byte ptr [r8-0x6f6f6f70], dl
@ -690,7 +690,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
000000000000006B 49009090909090 ADD byte ptr [r8-0x6f6f6f70], dl
@ -768,7 +768,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000078 4b0400 ADD al, 0x00
@ -910,7 +910,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000086 4b0400 ADD al, 0x00
@ -1052,7 +1052,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000094 4b0400 ADD al, 0x00
@ -1194,7 +1194,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
00000000000000A2 4b8400 TEST byte ptr [r8], al
@ -1375,7 +1375,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
00000000000000B4 4b8400 TEST byte ptr [r8], al
@ -1556,7 +1556,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
00000000000000C6 4b8400 TEST byte ptr [r8], al
@ -1737,7 +1737,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
00000000000000D8 49c0909090909090 RCL byte ptr [r8-0x6f6f6f70], 0x90
@ -1802,7 +1802,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
00000000000000E5 49c0909090909090 RCL byte ptr [r8-0x6f6f6f70], 0x90
@ -1867,7 +1867,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
00000000000000F2 49f8 CLC

@ -15,7 +15,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000003 91 XCHG ecx, eax

@ -15,7 +15,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000003 91 XCHG ecx, eax

@ -15,7 +15,7 @@
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 8, RawSize: 1, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: General Purpose, RegSize: 8, RegId: 1, RegCount: 1
Operand: 2, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CRCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 3, Acc: R-, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: Flags, RegSize: 8, RegId: 0, RegCount: 1
0000000000000003 91 XCHG ecx, eax

@ -12,7 +12,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 2, RawSize: 2, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: RCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
0000000000000006 26c7f800000000 XBEGIN 0xd
@ -29,7 +29,7 @@
HLE: no, XACQUIRE only: no, XRELEASE only: no
BND: no, BHINT: no, DNT: no
Operand: 0, Acc: R-, Type: Offset, Size: 4, RawSize: 4, Encoding: D
Operand: 1, Acc: RW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 1, Acc: RCW, Type: Register, Size: 8, RawSize: 8, Encoding: S, RegType: IP, RegSize: 8, RegId: 0, RegCount: 1
Operand: 2, Acc: CW, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
000000000000000D 660f01d9 VMMCALL

@ -103,6 +103,7 @@ enum
//
// ShemuPrintf - simple version
//
#ifndef BDDISASM_NO_FORMAT
static void
shemu_printf(
SHEMU_CONTEXT *Context,
@ -127,6 +128,9 @@ shemu_printf(
Context->Log(buff);
}
#else
#define shemu_printf(Context, formatstring, ...)
#endif // !BDDISASM_NO_FORMAT
//
@ -1031,6 +1035,12 @@ ShemuSetMemValue(
{
addr = Context->Shellcode;
offset = (uint32_t)(Gla - Context->ShellcodeBase);
// Bypass self-writes, if needed to.
if (!!(Context->Options & SHEMU_OPT_BYPASS_SELF_WRITES))
{
return SHEMU_SUCCESS;
}
}
else if (ShemuIsStackPtr(Context, Gla, Size))
{

@ -263,6 +263,10 @@ typedef unsigned int SHEMU_STATUS;
//
#define SHEMU_OPT_TRACE_EMULATION 0x00000001 // Trace each emulated instruction.
#define SHEMU_OPT_STOP_ON_EXPLOIT 0x00000002 // When shellcode indications are confirmed, stop emulation.
#define SHEMU_OPT_BYPASS_SELF_WRITES 0x00000004 // When a shellcode self-modifies, the modification will
// not be committed. Use this when emulating an already
// decoded shellcode, where emulating the decryption again
// will in fact scramble the shellcode and make it useless.
#define SHEMU_OPT_SUPPORT_AES 0x00010000 // Indicates that AES instructions are supported, and
// therefore, the AES intrinsics can be used to emulate
// AES decryption.

@ -7,6 +7,6 @@
#define DISASM_VERSION_MAJOR 1
#define DISASM_VERSION_MINOR 32
#define DISASM_VERSION_REVISION 1
#define DISASM_VERSION_REVISION 3
#endif // DISASM_VER_H

@ -428,22 +428,22 @@ RSTS Ms nil [ cyrix 0x0F 0x7D /r
SMINT nil nil [ cyrix 0x0F 0x7E] s:CYRIX_SMM, t:SEGOP
# 0x80 - 0x8F
JO Jz rIP,Fv [ 0x0F 0x80 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CO, a:F64|COND, p:BND|BH
JNO Jz rIP,Fv [ 0x0F 0x81 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNO, a:F64|COND, p:BND|BH
JC Jz rIP,Fv [ 0x0F 0x82 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CC, a:F64|COND, p:BND|BH
JNC Jz rIP,Fv [ 0x0F 0x83 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNC, a:F64|COND, p:BND|BH
JZ Jz rIP,Fv [ 0x0F 0x84 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CZ, a:F64|COND, p:BND|BH
JNZ Jz rIP,Fv [ 0x0F 0x85 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNZ, a:F64|COND, p:BND|BH
JBE Jz rIP,Fv [ 0x0F 0x86 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CBE, a:F64|COND, p:BND|BH
JNBE Jz rIP,Fv [ 0x0F 0x87 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNBE, a:F64|COND, p:BND|BH
JS Jz rIP,Fv [ 0x0F 0x88 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CS, a:F64|COND, p:BND|BH
JNS Jz rIP,Fv [ 0x0F 0x89 cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNS, a:F64|COND, p:BND|BH
JP Jz rIP,Fv [ 0x0F 0x8A cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CP, a:F64|COND, p:BND|BH
JNP Jz rIP,Fv [ 0x0F 0x8B cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNP, a:F64|COND, p:BND|BH
JL Jz rIP,Fv [ 0x0F 0x8C cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CL, a:F64|COND, p:BND|BH
JNL Jz rIP,Fv [ 0x0F 0x8D cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNL, a:F64|COND, p:BND|BH
JLE Jz rIP,Fv [ 0x0F 0x8E cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CLE, a:F64|COND, p:BND|BH
JNLE Jz rIP,Fv [ 0x0F 0x8F cz] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNLE, a:F64|COND, p:BND|BH
JO Jz rIP,Fv [ 0x0F 0x80 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CO, a:F64|COND, p:BND|BH
JNO Jz rIP,Fv [ 0x0F 0x81 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNO, a:F64|COND, p:BND|BH
JC Jz rIP,Fv [ 0x0F 0x82 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CC, a:F64|COND, p:BND|BH
JNC Jz rIP,Fv [ 0x0F 0x83 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNC, a:F64|COND, p:BND|BH
JZ Jz rIP,Fv [ 0x0F 0x84 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CZ, a:F64|COND, p:BND|BH
JNZ Jz rIP,Fv [ 0x0F 0x85 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNZ, a:F64|COND, p:BND|BH
JBE Jz rIP,Fv [ 0x0F 0x86 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CBE, a:F64|COND, p:BND|BH
JNBE Jz rIP,Fv [ 0x0F 0x87 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNBE, a:F64|COND, p:BND|BH
JS Jz rIP,Fv [ 0x0F 0x88 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CS, a:F64|COND, p:BND|BH
JNS Jz rIP,Fv [ 0x0F 0x89 cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNS, a:F64|COND, p:BND|BH
JP Jz rIP,Fv [ 0x0F 0x8A cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CP, a:F64|COND, p:BND|BH
JNP Jz rIP,Fv [ 0x0F 0x8B cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNP, a:F64|COND, p:BND|BH
JL Jz rIP,Fv [ 0x0F 0x8C cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CL, a:F64|COND, p:BND|BH
JNL Jz rIP,Fv [ 0x0F 0x8D cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNL, a:F64|COND, p:BND|BH
JLE Jz rIP,Fv [ 0x0F 0x8E cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CLE, a:F64|COND, p:BND|BH
JNLE Jz rIP,Fv [ 0x0F 0x8F cz] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNLE, a:F64|COND, p:BND|BH
# 0x90 - 0x9F
SETO Eb Fv [ 0x0F 0x90 /r] s:I386, t:BITBYTE, c:SETcc, w:W|R, f:CO, a:COND

@ -140,22 +140,22 @@ OUTSD DX,Xz aSI,Fv [ 0x6F] s:I86
OUTSD DX,Xz aCX,aSI,Fv [ rep 0x6F] s:I86, t:IOSTRINGOP, c:OUTS, w:R|CR|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
# 0x70 - 0x7F
JO Jb rIP,Fv [ 0x70 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CO, a:F64|COND, p:BND|BH
JNO Jb rIP,Fv [ 0x71 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNO, a:F64|COND, p:BND|BH
JC Jb rIP,Fv [ 0x72 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CC, a:F64|COND, p:BND|BH
JNC Jb rIP,Fv [ 0x73 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNC, a:F64|COND, p:BND|BH
JZ Jb rIP,Fv [ 0x74 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CZ, a:F64|COND, p:BND|BH
JNZ Jb rIP,Fv [ 0x75 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNZ, a:F64|COND, p:BND|BH
JBE Jb rIP,Fv [ 0x76 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CBE, a:F64|COND, p:BND|BH
JNBE Jb rIP,Fv [ 0x77 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNBE, a:F64|COND, p:BND|BH
JS Jb rIP,Fv [ 0x78 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CS, a:F64|COND, p:BND|BH
JNS Jb rIP,Fv [ 0x79 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNS, a:F64|COND, p:BND|BH
JP Jb rIP,Fv [ 0x7A cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CP, a:F64|COND, p:BND|BH
JNP Jb rIP,Fv [ 0x7B cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNP, a:F64|COND, p:BND|BH
JL Jb rIP,Fv [ 0x7C cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CL, a:F64|COND, p:BND|BH
JNL Jb rIP,Fv [ 0x7D cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNL, a:F64|COND, p:BND|BH
JLE Jb rIP,Fv [ 0x7E cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CLE, a:F64|COND, p:BND|BH
JNLE Jb rIP,Fv [ 0x7F cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNLE, a:F64|COND, p:BND|BH
JO Jb rIP,Fv [ 0x70 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CO, a:F64|COND, p:BND|BH
JNO Jb rIP,Fv [ 0x71 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNO, a:F64|COND, p:BND|BH
JC Jb rIP,Fv [ 0x72 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CC, a:F64|COND, p:BND|BH
JNC Jb rIP,Fv [ 0x73 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNC, a:F64|COND, p:BND|BH
JZ Jb rIP,Fv [ 0x74 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CZ, a:F64|COND, p:BND|BH
JNZ Jb rIP,Fv [ 0x75 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNZ, a:F64|COND, p:BND|BH
JBE Jb rIP,Fv [ 0x76 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CBE, a:F64|COND, p:BND|BH
JNBE Jb rIP,Fv [ 0x77 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNBE, a:F64|COND, p:BND|BH
JS Jb rIP,Fv [ 0x78 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CS, a:F64|COND, p:BND|BH
JNS Jb rIP,Fv [ 0x79 cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNS, a:F64|COND, p:BND|BH
JP Jb rIP,Fv [ 0x7A cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CP, a:F64|COND, p:BND|BH
JNP Jb rIP,Fv [ 0x7B cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNP, a:F64|COND, p:BND|BH
JL Jb rIP,Fv [ 0x7C cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CL, a:F64|COND, p:BND|BH
JNL Jb rIP,Fv [ 0x7D cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNL, a:F64|COND, p:BND|BH
JLE Jb rIP,Fv [ 0x7E cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CLE, a:F64|COND, p:BND|BH
JNLE Jb rIP,Fv [ 0x7F cb] s:I86, t:COND_BR, c:Jcc, w:R|CRCW|R, f:CNLE, a:F64|COND, p:BND|BH
# 0x80 - 0x8F
ADD Eb,Ib Fv [ 0x80 /0 ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
@ -333,7 +333,7 @@ LDS Gz,Mp DS [ 0xC5 /r:mem] s:I86
MOV Eb,Ib nil [ 0xC6 /0 ib] s:I86, t:DATAXFER, w:W|R, p:XRELEASE|HLEWOL
XABORT Ib EAX [ 0xC6 /0xF8 ib] s:TSX, t:UNCOND_BR, w:R|RCW, i:RTM, m:NOTSX
MOV Ev,Iz nil [ 0xC7 /0 iz] s:I86, t:DATAXFER, w:W|R, a:OP2SEXO1, p:XRELEASE|HLEWOL
XBEGIN Jz yIP,EAX [ 0xC7 /0xF8 cz] s:TSX, t:COND_BR, w:R|RW|CW, i:RTM
XBEGIN Jz yIP,EAX [ 0xC7 /0xF8 cz] s:TSX, t:COND_BR, w:R|RCW|CW, i:RTM
ENTER Iw,Ib rBP,sSP,Kv [ 0xC8 iw ib] s:I186, t:MISC, w:R|R|RW|RW|W, a:D64
LEAVE nil sBP,rBP,rSP,Kv [ 0xC9] s:I186, t:MISC, w:R|RW|RW|R, a:D64
RETF Iw CS,rIP,Kv2,SHS2 [ 0xCA iw] s:I86, t:RET, w:R|W|W|R|R
@ -384,12 +384,12 @@ SALC nil AL,Fv [ 0xD6] s:I86
XLATB nil AL,pBXALb [ 0xD7] s:I86, t:MISC, w:W|R
# 0xE0 - 0xEF
LOOPNZ Jb aCX,rIP,Fv [ 0xE0 cb] s:I86, t:COND_BR, w:R|RW|RW|R, f:ZF=t, a:F64
LOOPZ Jb aCX,rIP,Fv [ 0xE1 cb] s:I86, t:COND_BR, w:R|RW|RW|R, f:ZF=t, a:F64
LOOP Jb aCX,rIP,Fv [ 0xE2 cb] s:I86, t:COND_BR, w:R|RW|RW|R, a:F64
JCXZ Jb aCX,rIP [ as16 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|RW, a:F64
JECXZ Jb aCX,rIP [ as32 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|RW, a:F64
JRCXZ Jb aCX,rIP [ as64 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|RW, a:F64
LOOPNZ Jb aCX,rIP,Fv [ 0xE0 cb] s:I86, t:COND_BR, w:R|RW|CRCW|R, f:ZF=t, a:F64
LOOPZ Jb aCX,rIP,Fv [ 0xE1 cb] s:I86, t:COND_BR, w:R|RW|CRCW|R, f:ZF=t, a:F64
LOOP Jb aCX,rIP,Fv [ 0xE2 cb] s:I86, t:COND_BR, w:R|RW|CRCW|R, a:F64
JCXZ Jb aCX,rIP [ as16 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|CRCW, a:F64
JECXZ Jb aCX,rIP [ as32 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|CRCW, a:F64
JRCXZ Jb aCX,rIP [ as64 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|CRCW, a:F64
IN AL,Ib Fv [ 0xE4 ib] s:I86, t:IO, w:W|R|R, f:IO, m:NOSGX
IN eAX,Ib Fv [ 0xE5 ib] s:I86, t:IO, w:W|R|R, f:IO, m:NOSGX
OUT Ib,AL Fv [ 0xE6 ib] s:I86, t:IO, w:R|R|R, f:IO, a:SERIAL, m:NOSGX

Loading…
Cancel
Save