I am trying to use Miasm to reverse some binaries in i386 and amd64 instruction sets, but I encounter a few problem when using it.

First, the installation phase went nice. I managed to install tinycc with the small modification of the Makefile and the installation script did not complain.

But, once I tried to use the script miasm/example/disas_and_graph.py, the CFG stop suddenly shortly after the entrypoint.

Strangely, I installed Miasm on a 32bits virtual machine and it worked fine and displayed the whole CFG properly. So, did I miss something about a restriction or a bug on amd64 architecture ?

  • This question appears to be off-topic because it is a bug report about a specific software package. – asheeshr Aug 23 '13 at 1:43
  • I undeleted and closed this because such posts can act as signposts for new users to the community to understand the scope of what we cover. My personal opinion is that deletion of posts should be restricted to only actively bad content such as spam, or very low quality content. This, however, is a good quality question and answer, albeit off-topic. – asheeshr Aug 23 '13 at 1:48

Ok, I had a few e-mails with Fabrice Desclaux (aka serpilliere), one of the main contributor of miasm.

In fact, miasm (version 1) cannot disassemble amd64 opcodes (but do not issue any error if such executable is encountered). What is really misleading, is that the elf-64 is handled but the disassembler fail to recognize the amd64 opcodes.

So, this behavior is "normal" even if no error message is issued.

The good news, is that the main contributor of miasm is working on a second version of the software (miasm2) which is handling amd64 (and with a lot of new features).

Not the answer you're looking for? Browse other questions tagged or ask your own question.