mov 0x90909090[eax], edx
mov dl, 0x90909090[eax]
mov edx, 0x90909090[eax]
- mov dword ptr 0x90909090[eax], ss
+ mov word ptr 0x90909090[eax], ss
lea edx, 0x90909090[eax]
- mov ss, dword ptr 0x90909090[eax]
+ mov ss, word ptr 0x90909090[eax]
pop dword ptr 0x90909090[eax]
xchg eax, eax
xchg ecx, eax
xchg edi, eax
cwde
cdq
- call 0x9090,0x90909090
+ call 0x9090:0x90909090
fwait
pushf
popf
sahf
lahf
- mov al, [0x90909090]
- mov eax, [0x90909090]
- mov [0x90909090], al
- mov [0x90909090], eax
+ mov al, FLAT:[0x90909090]
+ mov eax, FLAT:[0x90909090]
+ mov FLAT:[0x90909090], al
+ mov FLAT:[0x90909090], eax
movs byte ptr es:[edi], byte ptr ds:[esi]
movs dword ptr es:[edi], dword ptr ds:[esi]
cmps byte ptr ds:[esi], byte ptr es:[edi]
mov dword ptr 0x90909090[eax], 0x90909090
enter 0x9090, 0x90
leave
+ retf 0x9090
+ retf
lret 0x9090
lret
int3
out 0x90, eax
call .+5+0x90909090
jmp .+5+0x90909090
- jmp 0x9090,0x90909090
+ jmp 0x9090:0x90909090
jmp .+2-0x70
in al, dx
in eax, dx
xchg bp, ax
xchg si, ax
xchg di, ax
- cbtw
- cwtd
- callw 0x9090,0x9090
+ cbw
+ cwd
+ callw 0x9090:0x9090
pushfw
popfw
- mov ax, [0x90909090]
- mov [0x90909090], ax
+ mov ax, FLAT:[0x90909090]
+ mov FLAT:[0x90909090], ax
movs word ptr es:[edi], word ptr ds:[esi]
cmps word ptr ds:[esi], word ptr es:[edi]
test ax, 0x9090
mov word ptr 0x90909090[eax], 0x9090
enterw 0x9090, 0x90
leavew
+ retfw 0x9090
+ retfw
lretw 0x9090
lretw
iretw
rcl word ptr 0x90909090[eax], cl
in ax, 0x90
out 0x90, ax
- call word ptr .+3+0x9090
- jmpw 0x9090,0x9090
+ callw .+3+0x9090
+ jmpw 0x9090:0x9090
in ax, dx
out dx, ax
not word ptr 0x90909090[eax]
bsr dx, 0x90909090[eax]
movsx dx, byte ptr 0x90909090[eax]
xadd 0x90909090[eax], dx
+
+gs_foo:
+ ret
+
+short_foo:
+ ret
+
+bar:
+ call gs_foo
+ call short_foo
+ fstp QWORD PTR [eax+edx*8]
+ mov ecx, OFFSET FLAT:xyz
+ mov BYTE PTR [esi+edx], al
+ mov BYTE PTR [edx+esi], al
+ mov BYTE PTR [edx*2+esi], al
+ mov BYTE PTR [esi+edx*2], al
+ jmp short rot5
+ ins byte ptr es:[edi], dx
+ xadd 0x90909090[eax], dx
+ and %eax, -8
+rot5:
+ mov %eax, DWORD PTR [%esi+4+%ecx*8]
+ ins BYTE PTR es:[edi], dx
+ or al, 0x90
+ or eax, 0x90909090
+ push cs
+ mov eax, [ebx*2]
+ adc BYTE PTR [eax*4+0x90909090], dl
+ das
+ jmp 0x9090:0x90909090
+ movs WORD PTR es:[edi], WORD PTR ds:[esi]
+ jo .+2-0x70
+
+1:
+ jne 1b
+ movq mm6, [QWORD PTR .LC5+40]
+ add edi, dword ptr [ebx+8*eax]
+ movd mm0, dword ptr [ebx+8*eax+4]
+ add edi, dword ptr [ebx+8*ecx+((4095+1)*8)]
+ movd mm1, dword ptr [ebx+8*ecx+((4095+1)*8)+4]
+ movd mm2, dword ptr [ebx+8*eax+(2*(4095+1)*8)+4]
+ add edi, dword ptr [ebx+8*eax+(2*(4095+1)*8)]
+ mov ax, word ptr [ebx+2*eax]
+ mov cx, word ptr [ebx+2*ecx+((4095+1)*2)]
+ mov ax, word ptr [ebx+2*eax+(2*(4095+1)*2)]
+ jmp eax
+ jmp [eax]
+ jmp FLAT:[bar]
+ jmp bar
+
+ # Check arithmetic operators
+ mov %eax,(( 17 ) + 1)
+ and %eax,~(1 << ( 18 ))
+ and %eax,0xFFFBFFFF
+ mov %al, (( 0x4711 ) & 0xff)
+ mov %al, 0x11
+ mov %bl, ((( 0x4711 ) >> 8) & 0xff)
+ mov %bl, 0x47
+
+ shrd eax, edx, cl
+ shld eax, edx, cl
+
+fadd
+fadd st(3)
+fadd st,st(3)
+fadd st(3),st
+fadd DWORD PTR [ebx]
+fadd QWORD PTR [ebx]
+faddp
+faddp st(3)
+faddp st(3),st
+fdiv
+fdiv st(3)
+fdiv st,st(3)
+fdiv st(3),st
+fdiv DWORD PTR [ebx]
+fdiv QWORD PTR [ebx]
+fdivp
+fdivp st(3)
+fdivp st(3),st
+fdivp st,st(3)
+fdivr
+fdivr st(3)
+fdivr st,st(3)
+fdivr st(3),st
+fdivr DWORD PTR [ebx]
+fdivr QWORD PTR [ebx]
+fdivrp
+fdivrp st(3)
+fdivrp st(3),st
+fdivrp st,st(3)
+fmul
+fmul st(3)
+fmul st,st(3)
+fmul st(3),st
+fmul DWORD PTR [ebx]
+fmul QWORD PTR [ebx]
+fmulp
+fmulp st(3)
+fmulp st(3),st
+fsub
+fsubr
+fsub st(3)
+fsub st,st(3)
+fsub st(3),st
+fsub DWORD PTR [ebx]
+fsub QWORD PTR [ebx]
+fsubp
+fsubp st(3)
+fsubp st,st(3)
+fsubp st(3),st
+fsubr st(3)
+fsubr st,st(3)
+fsubr st(3),st
+fsubr DWORD PTR [ebx]
+fsubr QWORD PTR [ebx]
+fsubrp
+fsubrp st(3)
+fsubrp st(3),st
+fsubrp st,st(3)
+
+fidivr word ptr [ebx]
+fidivr dword ptr [ebx]
+
+ cmovpe edx, 0x90909090[eax]
+ cmovpo edx, 0x90909090[eax]
+ cmovpe dx, 0x90909090[eax]
+ cmovpo dx, 0x90909090[eax]