mirror of
https://github.com/bitdefender/bddisasm.git
synced 2024-11-14 03:19:24 +00:00
752bc626c4
Fixed VEX decoding in 32 bit mode - vex.vvvv bit 3 is simply ignored. Fixed several FMA instructions decoding (L/W flag should be ignored). Print the 64 bit immediate value in disassembly, instead of the raw immediate (note that the operand always contains the sign-extended, full immediate). XBEGIN always uses 32/64 bit RIP size (0x66 does not affect its size). Decode WBINVD even if it's preceded by 0x66/0xF2 prefixes. Several mnemonic fixes (FXSAVE64, FXRSTOR64, PUSHA/PUSHAD...). Properly decode VPERMIL2* instructions. Fixed SSE register decoding when it is encoded in immediate. Decode SCATTER instructions even though they use the VSIB index as source. Some disp8 fixes (t1s -> t1s8/t1s16). SYSCALL/SYSRET are decoded and executed in 32 bit compat modem, even though SDM states they are invalid. RDPID uses 32/64 bit reg size, never 16. Various other minor tweaks & fixes. Re-generated the test files, and added some more, new tests.
502 lines
26 KiB
Plaintext
502 lines
26 KiB
Plaintext
0000000000000000 50 PUSH ax
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: O, RegType: General Purpose, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000001 58 POP ax
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: O, RegType: General Purpose, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000002 6650 PUSH eax
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 4, RawSize: 4, Encoding: O, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000004 6658 POP eax
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: O, RegType: General Purpose, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000006 6a7f PUSH 0x007f
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Immediate, Size: 2, RawSize: 1, Encoding: I
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000008 6668ff7f0000 PUSH 0x00007fff
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Immediate, Size: 4, RawSize: 4, Encoding: I
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000000E ff37 PUSH word ptr [bx]
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000010 8f07 POP word ptr [bx]
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: Memory, Size: 2, RawSize: 2, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000012 67ff33 PUSH word ptr [ebx]
|
|
DSIZE: 16, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000015 678f03 POP word ptr [ebx]
|
|
DSIZE: 16, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: Memory, Size: 2, RawSize: 2, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000018 66ff37 PUSH dword ptr [bx]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000001B 668f07 POP dword ptr [bx]
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000001E 6667ff33 PUSH dword ptr [ebx]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000022 66678f03 POP dword ptr [ebx]
|
|
DSIZE: 32, ASIZE: 32, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: Memory, Size: 4, RawSize: 4, Encoding: M,
|
|
Segment: 3, Base: 3,
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000026 c8100020 ENTER 0x0010, 0x20
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I186, Ins cat: MISC, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Immediate, Size: 2, RawSize: 2, Encoding: I
|
|
Operand: 1, Acc: R-, Type: Immediate, Size: 1, RawSize: 1, Encoding: I
|
|
Operand: 2, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 5, RegCount: 1
|
|
Operand: 3, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 4, RegCount: 1
|
|
Operand: 4, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000002A c9 LEAVE
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I186, Ins cat: MISC, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 5, RegCount: 1
|
|
Operand: 1, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 5, RegCount: 1
|
|
Operand: 2, Acc: RW, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 4, RegCount: 1
|
|
Operand: 3, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000002B 06 PUSH es
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000002C 07 POP es
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000002D 1e PUSH ds
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 3, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000002E 1f POP ds
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 3, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000002F 16 PUSH ss
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 2, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000030 17 POP ss
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 2, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000031 0fa0 PUSH fs
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 4, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000033 0fa1 POP fs
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 4, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000035 0fa8 PUSH gs
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 5, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000037 0fa9 POP gs
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: no, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: Segment, RegSize: 2, RegId: 5, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
0000000000000039 60 PUSHA
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I386, Ins cat: PUSH, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 16, RawSize: 16, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000003A 61 POPA
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I386, Ins cat: POP, CET tracked: no
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: no
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: General Purpose, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 16, RawSize: 16, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000003B 9c PUSHFW
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
FLAGS access
|
|
Entire register
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 2, RawSize: 2, Encoding: S, RegType: Flags, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000003C 9d POPFW
|
|
DSIZE: 16, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
FLAGS access
|
|
Entire register
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: 2, RawSize: 2, Encoding: S, RegType: Flags, RegSize: 2, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 2, RawSize: 2, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000003D 669c PUSHFD
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: PUSH, CET tracked: no
|
|
FLAGS access
|
|
Entire register
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: R-, Type: Register, Size: 4, RawSize: 4, Encoding: S, RegType: Flags, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: -W, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|
|
000000000000003F 669d POPFD
|
|
DSIZE: 32, ASIZE: 16, VLEN: -
|
|
ISA Set: I86, Ins cat: POP, CET tracked: no
|
|
FLAGS access
|
|
Entire register
|
|
Valid modes
|
|
R0: yes, R1: yes, R2: yes, R3: yes
|
|
Real: yes, V8086: yes, Prot: yes, Compat: yes, Long: yes
|
|
SMM: yes, SGX: yes, TSX: yes, VMXRoot: yes, VMXNonRoot: 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: Flags, RegSize: 4, RegId: 0, RegCount: 1
|
|
Operand: 1, Acc: R-, Type: Memory, Size: 4, RawSize: 4, Encoding: S, Stack: yes,
|
|
Segment: 2, Base: 4,
|
|
|