- ADD
- flags
- all according
- operands
- r/m, imm
- r/m, r
- r, r/m
- flags
- AND
- flags
- AF undef
- OF/CF clear
- SF/ZF/PF according
- operands
- r/m, imm
- r/m, r
- r, r/m
- flags
- CALL
- flags
- none
- operands
- rel
- r/m
- flags
- CBW/CWDE/CDQE
- flags
- none
- sign extends AL/AX/EAX to next larger size
- flags
- CWD/CDW/CQO
- flags
- none
- sign extends AX/EAX/RAX into DX/EDX/RDX
- flags
- CMP
- flags
- all according
- operands
- r/m, imm
- r/m, r
- r, r/m
- flags
- DEC
- flags
- CF not affected
- OF/SF/ZF/AF/PF according
- operands
- r/m
- flags
- DIV
- flags
- all undef
- unsigned divide
- divide AX/DX:AX/EDX:EAX/RDX:RAX by source
- quot = AL/AX/EAX/RAX, mod = AH/DX/EDX/RDX
- operands
- r/m
- flags
- IDIV
- flags
- all undef
- signed divide
- divide AX/DX:AX/EDX:EAX/RDX:RAX by source
- quot = AL/AX/EAX/RAX, rem = AH/DX/EDX/RDX
- operands
- r/m
- flags
- IMUL
- flags
- ZF/AF/PF undef
- SF MSB of operand-size-truncated result in destination
- CF/OF fuckall
- signed multiply
- operands
- r/m (AX/DX:AX/EDX:EAX/RDX:RAX <- AL/AX/EAX/RAX * s)
- r, r/m (d <- d * s)
- r, r/m, imm (d <- s * c)
- flags
- INC
- flags
- CF not affected
- OF/SF/ZF/AF/PF according
- operands
- r/m
- flags
- JMP
- flags
- none
- operands
- rel
- r/m
- flags
- Jcc
- flags
- none
- operands
- rel
- flags
- LEA
- flags
- none
- operands
- r, m
- flags
- MOV
- flags
- none
- operands
- r/m, r
- r, r/m
- r/m, imm
- TODO: look up moffs
- flags
- MUL
- flags
- OF/CF = (upper half == 0) ? 0 : 1
- SF/ZF/AF/PF undef
- unsigned multiply
- operands
- r/m (AX/DX:AX/EDX:EAX/RDX:RAX <- AL/AX/EAX/RAX * s)
- flags
- NEG
- flags
- CF = (s == 0) ? 0 : 1
- OF/SF/ZF/AF/PF according
- twos complement
- operands
- r/m
- flags
- NOP
- does nothing
- operands
- _
- r/m
- NOT
- flags
- none
- operands
- r/m
- flags
- OR
- flags
- OF/CF cleared
- SF/ZF/PF according
- AF undef
- operands
- r/m, imm
- r/m, r
- r, r/m
- flags
- POP
- flags
- none
- operands
- r/m
- flags
- PUSH
- flags
- none
- operands
- r/m
- imm
- flags
- SAL/SAR/SHL/SHR
- flags
- CF/OF fuck all
- SF/ZF/PF according (unless count is 0)
- AF undef
- SAL/SAR: artithmetic (preserves sign bit)
- SHL/SHR: logical (normal shifts)
- operands
- r/m, imm
- r/m, CL
- flags
- SUB
- flags
- all according
- operands
- r/m, imm
- r/m, r
- r, r/m
- flags
- TEST
- flags
- OF/CF cleared
- SF/ZF/PF according
- AF undef
- operands
- r/m, imm
- r/m, r
- flags
- CMOVcc
- ENTER
- INT
- LEAVE
- LOOP
- LOOPcc
- SETcc
- STOxx
- SYSxxxx