java-deobfuscator / deobfuscator

The real deal
https://javadeobfuscator.com
Apache License 2.0
1.59k stars 295 forks source link

allatori.RuleStringDecryptor fails with "IndexOutOfBoundsException: Trying to set an inexistant local variable 0" #753

Closed umtcnyd closed 3 years ago

umtcnyd commented 3 years ago

I was trying to detect the obfuscator of a jar file. My detect.yml file was like this:

input: files name.jar
detect: true

An ordinary detect.yml file. I did the "java -jar deobfuscator.jar --config detect.yml" command, but it threw up bunch of errors, and finally I got a message that told me that deobfuscation failed and I needed to open a ticket with the following error:

java.lang.IndexOutOfBoundsException: Trying to set an inexistant local variable 0
        at org.objectweb.asm.tree.analysis.Frame.setLocal(Frame.java:178)
        at org.objectweb.asm.tree.analysis.Analyzer.computeInitialFrame(Analyzer.java:397)
        at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:162)
        at com.javadeobfuscator.deobfuscator.rules.allatori.RuleStringDecryptor.test(RuleStringDecryptor.java:48)
        at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:336)
        at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:120)
        at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.run(DeobfuscatorMain.java:92)
        at com.javadeobfuscator.deobfuscator.DeobfuscatorMain.main(DeobfuscatorMain.java:50)

I did everything correct. No typos, no wrong usage, no nothing and I am pretty sure of that. Please reply back ASAP.

Janmm14 commented 3 years ago

Thanks for reporting the problem. I will soon improve the try-catch in the detections.

Janmm14 commented 3 years ago

oopsie, I forcepushed this one a little too often