Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possible bug "null execution graph" when deobfuscating DexProtect'ed strings #101

Closed
enovella opened this issue Apr 21, 2018 · 3 comments
Closed
Labels

Comments

@enovella
Copy link

I was messing around with Simplify and DexProtector. Tried to deobfuscate strings with:

Steps:

java -jar simplify.jar -it "Application\;\-\>dcff\(" 242e0ee59de46c7648b7b38efeb8c088ae3dc8c5c8fe9fbd5e707b098ab8f404.apk.unpack/classes.dex --max-execution-time 600

Sample (APK):

https://koodous.com/apks/242e0ee59de46c7648b7b38efeb8c088ae3dc8c5c8fe9fbd5e707b098ab8f404

Error:

18:26:08.864 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.372 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.372 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.372 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.372 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.379 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.379 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.379 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.379 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.533 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.533 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.533 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.533 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.533 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.533 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.534 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.535 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.535 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.535 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.535 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.542 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.542 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.542 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.542 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.550 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.550 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.550 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.550 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.550 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.551 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.552 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.552 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.552 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.552 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.558 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.558 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.558 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.558 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.694 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.694 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.694 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.694 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.703 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.703 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.703 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.703 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.871 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.871 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.871 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.871 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.878 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.878 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.878 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:10.878 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.270 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.270 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.270 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.270 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.270 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.271 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.334 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.334 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.334 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.334 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.335 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.336 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.398 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.398 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.398 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.398 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.404 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.404 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.404 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:11.404 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.137 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.137 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.137 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.137 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.143 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.143 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.143 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.143 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.293 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.293 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.293 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.293 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.300 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.300 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.300 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:14.300 WARN  NodeExecutor - ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=aput-char r14, r8, r18, @=1016} threw a real exception but was caught by an exception handler. This may be a bug in smalivm or in the input code. Exception: java.lang.ClassCastException
18:26:21.532 WARN  InvokeOp     - org.cf.smalivm.MaxAddressVisitsExceededException: Exceeded max address visits @962 ExecutionNode{signature=Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;, op=if-nez r13, #970, @=962} in Lcom/lyspzcx/eorayjai/Application;->dcff(Ljava/lang/String;)Ljava/lang/String;
Aborting execution; exception: org.cf.smalivm.MaxExecutionTimeExceededException: Exceeded execution time in Lcom/lyspzcx/eorayjai/Application;->dcff()V
Skipping optimization of Lcom/lyspzcx/eorayjai/Application;->dcff()V; null execution graph
[13 / 23] Processing top level class Lcom/rollbar/android/http/HttpRequestManager$1;
[14 / 23] Processing top level class Lcom/rollbar/android/Rollbar$1;
[15 / 23] Processing top level class Lcom/rollbar/android/http/HttpRequest;
[16 / 23] Processing top level class Lcom/rollbar/android/Rollbar;
[17 / 23] Processing top level class Lcom/rollbar/android/Rollbar$2;
[18 / 23] Processing top level class Lcom/rollbar/android/RollbarExceptionHandler;
[19 / 23] Processing top level class Lcom/rollbar/android/Rollbar$3;
[20 / 23] Processing top level class Lcom/rollbar/android/Notifier;
[21 / 23] Processing top level class Lcom/rollbar/android/Notifier$2;
[22 / 23] Processing top level class Lcom/rollbar/android/http/HttpResponseHandler;
[23 / 23] Processing top level class Lcom/rollbar/android/Notifier$1;
Simplification complete:
	total classes = 23
	total methods = 0
	optimized methods = 2
	failed methods = 2
	run time = 673675 ms
Total optimizations:

Writing output to classes_simple.dex
@enovella enovella changed the title Possible bug null execution graph when deobfuscating DexProtect'ed strings Possible bug "null execution graph" when deobfuscating DexProtect'ed strings Apr 21, 2018
@enovella
Copy link
Author

Similar if not the same that #98

@CalebFenton
Copy link
Owner

The obvious bug here is the ClassCastException. That's worth looking into.

The problem with the method not getting deobfuscated may be theoretically unsolvable, so really tricky to fix in general. The question for that part is: do you think that method should be optimizable? Are there any obvious loops that rely on file / network IO that may never terminate?

@CalebFenton
Copy link
Owner

The ClassCastException was caused by the array item being of type Ljava/lang/Object; and APutOp.throwsArrayStoreException() assumes the array item type is always of an "obvious" array type, like "[Ljava/lang/Object;" but this isn't a good assumption. Technically, all arrays, including primitive arrays, are also Ljava/lang/Object;s.

There's no real way to fix the halting problem, which may be the cause of the null graph. Feel free to re-open if you experience an additional bug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants