java-deobfuscator / deobfuscator

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

java.lang.StringIndexOutOfBoundsException: String index out of range: 21 #956

Open EzxD opened 1 year ago

EzxD commented 1 year ago
[Thread-5] INFO me.coley.cafedude.transform.IllegalStrippingTransformer - Transforming 'Y}[Z]y_{tuSwUTrV'
[Thread-5] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Detecting known obfuscators
java.lang.StringIndexOutOfBoundsException: String index out of range: 21
    at java.lang.String.charAt(Unknown Source)
    at org.objectweb.asm.Type.getArgumentTypes(Type.java:302)
    at com.javadeobfuscator.deobfuscator.rules.dasho.RuleStringDecryptor.test(RuleStringDecryptor.java:44)
    at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:386)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.javadeobfuscator.deobfuscator.ui.wrap.Deobfuscator.run(Deobfuscator.java:88)
    at com.javadeobfuscator.deobfuscator.ui.SwingWindow.lambda$null$21(SwingWindow.java:1108)
    at java.lang.Thread.run(Unknown Source)
[Thread-5] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - All detectors have been run. If you do not see anything listed, check if your file only contains name obfuscation.
[Thread-5] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Do note that some obfuscators do not have detectors.

I get this error. I run detect with patchasm. Tested on linux and windows

EzxD commented 1 year ago

running illegalSignatureRemover with detect and patchasm results in:

[Thread-6] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Detecting known obfuscators
java.lang.StringIndexOutOfBoundsException: String index out of range: 21
    at java.lang.String.charAt(Unknown Source)
    at org.objectweb.asm.Type.getArgumentTypes(Type.java:302)
    at com.javadeobfuscator.deobfuscator.rules.dasho.RuleStringDecryptor.test(RuleStringDecryptor.java:44)
    at com.javadeobfuscator.deobfuscator.Deobfuscator.start(Deobfuscator.java:386)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.javadeobfuscator.deobfuscator.ui.wrap.Deobfuscator.run(Deobfuscator.java:88)
    at com.javadeobfuscator.deobfuscator.ui.SwingWindow.lambda$null$21(SwingWindow.java:1108)
    at java.lang.Thread.run(Unknown Source)
[Thread-6] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - All detectors have been run. If you do not see anything listed, check if your file only contains name obfuscation.
[Thread-6] INFO com.javadeobfuscator.deobfuscator.Deobfuscator - Do note that some obfuscators do not have detectors.
Janmm14 commented 1 year ago

if you tick detect, no transformers are running. so untick detect, run illegalsignatureremover. then use output file as input and run detect