Open kkptm opened 8 months ago
llvm-mc
seems to agree if I am not mistaken:
echo "0x90,0xFF,0x25,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x90" | llvm-mc-19 --disassemble --arch=x86 --x86-asm-syntax=intel --show-encoding
.text
nop # encoding: [0x90]
jmpl *0 # encoding: [0xff,0x25,0x00,0x00,0x00,0x00]
addb %al, (%eax) # encoding: [0x00,0x00]
addb %al, (%eax) # encoding: [0x00,0x00]
addb %al, (%eax) # encoding: [0x00,0x00]
addb %al, (%eax) # encoding: [0x00,0x00]
nop
Can you please confirm. My x86 assembly knowledge is not great.
00010000 - FF25 00000000 89674523A1000000 - jmp A123456789 0001000E - FF15 02000000 EB08 89674523A1000000 - call A123456789 jmp far ,call far, this is true in an x64 process
this may not seem like a compiler standard, but it is indeed the correct executable binary code
It outputs:
FF 25 00 00 00 00 [ptr] its corresponding code should be: jmp far xx why is that?