CalebFenton / simplify

Android virtual machine and deobfuscator
Other
4.41k stars 438 forks source link

Simplify Fail to start Execution For Specific Apk #140

Closed apkunpacker closed 4 years ago

apkunpacker commented 4 years ago

…....................................................................................................... Simplify Version : 1.2.1 Os : Windows 7 x64 Jdk: 14 Jre: 1.8.192

…....................................................................................................... Step to reproduce error :

  1. Remove .zip from below apk 2 . Put this apk in same directory as simplify
  2. Execute simplify with java -jar simplify.jar freedom1.8.4.apk
  3. Simplify crash just at startup

…....................................................................................................... Logs :

F:\Tool>java -jar simplify.jar freedom1.8.4.apk

Error occurred while disassembling class L?; - skipping class org.jf.util.ExceptionWithContext: The last instruction in method L?;->()V is truncated at org.jf.dexlib2.dexbacked.DexBackedMethodImplementation$1$1.readNextItem(DexBackedMethodImplementation.java:88) at org.jf.dexlib2.dexbacked.DexBackedMethodImplementation$1$1.readNextItem(DexBackedMethodImplementation.java:76) at org.jf.dexlib2.dexbacked.util.VariableSizeLookaheadIterator.computeNext(VariableSizeLookaheadIterator.java:60) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:145) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:140) at com.google.common.collect.ImmutableCollection$Builder.addAll(ImmutableCollection.java:438) at com.google.common.collect.ImmutableList$Builder.addAll(ImmutableList.java:788) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:274) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:229) at org.jf.baksmali.Adaptors.MethodDefinition.(MethodDefinition.java:92) at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:280) at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:111) at org.jf.baksmali.Baksmali.disassembleClass(Baksmali.java:152) at org.jf.baksmali.Baksmali.access$000(Baksmali.java:46) at org.jf.baksmali.Baksmali$1.call(Baksmali.java:76) at org.jf.baksmali.Baksmali$1.call(Baksmali.java:74) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Error while processing method L?;->()V

F:\Tool>

….......................................................................................................

Expected Behavior : Simplify should disassemble correctly and start optimizing ….......................................................................................................

freedom1.8.4.apk.zip

CalebFenton commented 4 years ago

The issue is with dexlib. Fails with baksmali. Create an issue there.


$ baksmali dis ../freedom1.8.4.apk.zip

Error occurred while disassembling class Lё; - skipping class
org.jf.util.ExceptionWithContext: The last instruction in method Lё;-><init>()V is truncated
    at org.jf.dexlib2.dexbacked.DexBackedMethodImplementation$1$1.readNextItem(DexBackedMethodImplementation.java:99)
    at org.jf.dexlib2.dexbacked.DexBackedMethodImplementation$1$1.readNextItem(DexBackedMethodImplementation.java:87)
    at org.jf.dexlib2.dexbacked.util.VariableSizeLookaheadIterator.computeNext(VariableSizeLookaheadIterator.java:60)
    at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
    at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
    at com.google.common.collect.ImmutableCollection$Builder.addAll(ImmutableCollection.java:423)
    at com.google.common.collect.ImmutableList$Builder.addAll(ImmutableList.java:777)
    at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:260)
    at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:217)
    at org.jf.baksmali.Adaptors.MethodDefinition.<init>(MethodDefinition.java:92)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:281)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:112)
    at org.jf.baksmali.Baksmali.disassembleClass(Baksmali.java:152)
    at org.jf.baksmali.Baksmali.access$000(Baksmali.java:46)
    at org.jf.baksmali.Baksmali$1.call(Baksmali.java:76)
    at org.jf.baksmali.Baksmali$1.call(Baksmali.java:74)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Error while processing method Lё;-><init>()V```