Wednesday, July 1, 2009

New DEX assembler/disassembler pair

Dedexer got competition! Not one but immediately two - smali and baksmali is a DEX assembler/disassembler pair. The programs are brand new and - like Dedexer - they are also based on a Jasmin-like format. I tried them very shortly, the disassembler - baksmali - worked correctly and indeed produced an output similar to dedexer but I could not compile the output of baksmali back to DEX format with the assembler - smali. The disassembler does not handle ODEX files either.

The initiative is indeed valuable, however, and I encourage every reverse engineer out there give the new tools a try.


Anonymous said...

Is it possible to recompile the output of dedexer into a new .dex file?

Gabor Paller said...

No and it is not planned by me. However, I welcome if anyone wants to write such a tool. :-)

Dedexer wants to be a good decompiler, not more, not less. The long-term goal is decompilation to Java (one always has to have a dream ... :-)).

Anonymous said...

How is the decompilation to java coming along?

Just 'java-like hints' would be nice :-)

JesusFreke said...

I'm curious what issue you ran into when you tried to reassemble the output of baksmali. It should be re-assemblable. If it isn't, it's a bug :)