anestisb / vdexExtractor

Tool to decompile & extract Android Dex bytecode from Vdex files
Apache License 2.0
1k stars 214 forks source link

Can't decompile deodexed files on U11 #1

Closed jtothe4n closed 6 years ago

jtothe4n commented 6 years ago

I tried to decompile several files, framework.jar, telephony-common.jar, services.jar.

All fail with several errors that always look like:

java -jar baksmali.jar d services.jar

Error occurred while disassembling class classname - skipping class org.jf.util.ExceptionWithContext: The last instruction in method methodname is truncated

When I deodex with baksmali, it works fine.

Other files I tried, like SystemUI.apk work fine.

services.zip

anestisb commented 6 years ago

Thanks for reporting. Will investigate.

jtothe4n commented 6 years ago

Seems using the -u flag (enable unquicken bytecode decompiler) fixes the issue. Whatever it is doing (-:

anestisb commented 6 years ago

If you don't invoke with -u | --unquicken it just simply grabs the Dex file from Vdex without decompiling (deodex in simpler terms). So you were dumping an optimized version thus the issues you had, and I was struggling to replicate.

jtothe4n commented 6 years ago

Thanks for the explanation, would have expect that being the default behavior. Cheers, Jan.