x86 assembly

Command
Description
Links

LAHF

Load Status Flags into AH register. Bit 7 = Sign (SF) Bit 6 = Zero (ZF) Bit 4 = Auxiliary (AF) Bit 2 = Parity (PF) Bit 0 =Carry (CF) Bit 1,3,5 = unchanged

TEST AX,AX

Add two variables, store calculation result in flag register

CMP AX,1

Subtract two variables, store calculation result in flag register

LEA EAX, [ebx - 0x1fc3]

Load effective address to register. It is used when the address is not known at compile time (for example on stack)

SETE al

Set byte if equal (ZF=1)

PUSHAD

'Push all double'. pushes all general-purpose 32-bit registers onto the stack in a specific order. The registers pushed are EAX, ECX, EDX, EBX, ESP (the original value before the push operation), EBP, ESI, and EDI

CDQE

LEAVE

MOVE ESP, EBP POP EBP

cmp dword ptr [edi], 0

Compare 0 to the dword value (32-bit) pointed to by the address in Register EDI. In x86 all addresses are 32-bit

Last updated