mirror of
https://github.com/bitdefender/bddisasm.git
synced 2024-11-24 08:28:07 +00:00
9ba1e6a2f9
Multiple minor fixes to existing instructions. Moved x86 decoding tests in a separate directory & improved the test script.
273 lines
16 KiB
Plaintext
273 lines
16 KiB
Plaintext
0000000000000000 8b01 MOV eax, dword ptr [ecx]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 1,
|
|
|
|
0000000000000002 8b0439 MOV eax, dword ptr [ecx+edi]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 1, Index: 7 * 1,
|
|
|
|
0000000000000005 8b04b9 MOV eax, dword ptr [ecx+edi*4]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 1, Index: 7 * 4,
|
|
|
|
0000000000000008 8b44b97f MOV eax, dword ptr [ecx+edi*4+0x7f]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 1, Index: 7 * 4, Displacement: 0x000000000000007f,
|
|
|
|
000000000000000C 8b84f9ffffff7f MOV eax, dword ptr [ecx+edi*8+0x7fffffff]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 1, Index: 7 * 8, Displacement: 0x000000007fffffff,
|
|
|
|
0000000000000013 a1ffffff7f MOV eax, dword ptr [0x7fffffff]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: D,
|
|
Segment: 3, Displacement: 0x000000007fffffff,
|
|
|
|
0000000000000018 678b4600 MOV eax, dword ptr [bp+0x0]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 2, Base: 5, Displacement: 0x0000000000000000,
|
|
|
|
000000000000001C a1ff7f0000 MOV eax, dword ptr [0x7fff]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: D,
|
|
Segment: 3, Displacement: 0x0000000000007fff,
|
|
|
|
0000000000000021 678b477f MOV eax, dword ptr [bx+0x7f]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 3, Displacement: 0x000000000000007f,
|
|
|
|
0000000000000025 678b87ff7f MOV eax, dword ptr [bx+0x7fff]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 3, Displacement: 0x0000000000007fff,
|
|
|
|
000000000000002A 678b03 MOV eax, dword ptr [bp+di]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 2, Base: 5, Index: 7 * 1,
|
|
|
|
000000000000002D 678b02 MOV eax, dword ptr [bp+si]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 2, Base: 5, Index: 6 * 1,
|
|
|
|
0000000000000030 64a130000000 MOV eax, dword ptr fs:[0x30]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: D,
|
|
Segment: 4, Displacement: 0x0000000000000030,
|
|
|
|
0000000000000036 648b01 MOV eax, dword ptr fs:[ecx]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 4, Base: 1,
|
|
|
|
0000000000000039 648b0439 MOV eax, dword ptr fs:[ecx+edi]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 4, Base: 1, Index: 7 * 1,
|
|
|
|
000000000000003D 648b0479 MOV eax, dword ptr fs:[ecx+edi*2]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 4, Base: 1, Index: 7 * 2,
|
|
|
|
0000000000000041 648b847900100000 MOV eax, dword ptr fs:[ecx+edi*2+0x1000]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: DATAXFER, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM on: yes, SMM off: yes, SGX on: yes, SGX off: yes, TSX on: yes, TSX off: yes
|
|
VMXRoot: yes, VMXNonRoot: yes, VMXRoot SEAM: yes, VMXNonRoot SEAM: yes, VMX off: yes
|
|
Valid prefixes
|
|
REP: no, REPcc: no, LOCK: no
|
|
HLE: no, XACQUIRE only: no, XRELEASE only: no
|
|
BND: no, BHINT: no, DNT: no
|
|
Operand: 0, Acc: -W, Type: Register, Size: 4, RawSize: 4, Encoding: R, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 4, Base: 1, Index: 7 * 2, Displacement: 0x0000000000001000,
|
|
|