0

I've run into an issue with the MinGW build of objdump on Windows. Consider this very simple input file:

48 bf 88 77 66 55 44 33 22 11

I want to disassemble this as Intel x86-64 raw machine code. I am expecting this to show a single instruction:

movabs rdi, 0x1122334455667788

I'm passing -mi386:x86-64 to objdump but it just gives me this error message. For comparison, with -mi386 it works but is obviously the wrong architecture:

C:\test> objdump.exe -D -b binary -mi386 test.raw

test.raw:     file format binary


Disassembly of section .data:

00000000 <.data>:
   0:   48                      dec    %eax
   1:   bf 88 77 66 55          mov    $0x55667788,%edi
   6:   44                      inc    %esp
   7:   33 22                   xor    (%edx),%esp
   9:   11                      .byte 0x11

Versus:

C:\test> objdump.exe -D -b binary -mi386:x86-64 test.raw

test.raw:     file format binary


Disassembly of section .data:

00000000 <.data>:
   0:   64-bit address is disabled

Does the MinGW build of objdump not support this architecture?

3
  • I guess it doesn't matter what's wrong with the MinGW build; WSL has the full-featured objdump available. – Roman Starkov Jan 17 at 18:21
  • Seems off topic. You should try minGW support channels. – Igor Skochinsky Jan 19 at 22:25
  • @IgorSkochinsky you know better... I'll delete it then? It's an impossible to google (no hits) message in a reverse engineering tool though, might be worth keeping. – Roman Starkov Jan 19 at 22:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.