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
UTF8 string too large on v53 #25
Comments
Error reproducible on my end. However, I have a slightly different stacktrace (are you really using v53?):
I will see if I can do anything about that |
@ThexXTURBOXx oh well... i was confused with original snapshot version 😔 anyways thank you, I'll wait |
@ThexXTURBOXx thanks for maintaining this tool-chain ! I used this APK As the application I want to decompile is built in China and contains quite some UTF8 unicode strings I guess that the handling of UTF8 unicode is not yet working. Also when further decompiling the resulting jar files with the jd-gui I do see quit a couple of chinese characters, but they can not be copied from the resulting source. Some non-space characters may be included in such strings. $ sh d2j-dex2jar.sh -f s-miles.apk
dex2jar s-miles.apk -> ./s-miles-dex2jar.jar
java.lang.IllegalArgumentException: UTF8 string too large
at org.objectweb.asm.ByteVector.putUTF8(ByteVector.java:255)
at org.objectweb.asm.SymbolTable.addConstantUtf8(SymbolTable.java:774)
at org.objectweb.asm.SymbolTable.addConstantUtf8Reference(SymbolTable.java:1007)
at org.objectweb.asm.SymbolTable.addConstantString(SymbolTable.java:604)
at org.objectweb.asm.SymbolTable.addConstant(SymbolTable.java:474)
at org.objectweb.asm.MethodWriter.visitLdcInsn(MethodWriter.java:1280)
at org.objectweb.asm.MethodVisitor.visitLdcInsn(MethodVisitor.java:562)
at org.objectweb.asm.commons.MethodRemapper.visitLdcInsn(MethodRemapper.java:196)
at org.objectweb.asm.tree.LdcInsnNode.accept(LdcInsnNode.java:75)
at org.objectweb.asm.tree.InsnList.accept(InsnList.java:144)
at org.objectweb.asm.tree.MethodNode.accept(MethodNode.java:749)
at com.googlecode.d2j.dex.ExDex2Asm.convertCode(ExDex2Asm.java:36)
at com.googlecode.d2j.dex.Dex2jar$2.convertCode(Dex2jar.java:126)
at com.googlecode.d2j.dex.Dex2Asm.convertMethod(Dex2Asm.java:821)
at com.googlecode.d2j.dex.Dex2Asm.convertClass(Dex2Asm.java:567)
at com.googlecode.d2j.dex.Dex2Asm.convertClass(Dex2Asm.java:468)
at com.googlecode.d2j.dex.Dex2Asm.convertDex(Dex2Asm.java:633)
at com.googlecode.d2j.dex.Dex2jar.doTranslate(Dex2jar.java:181)
at com.googlecode.d2j.dex.Dex2jar.doTranslate(Dex2jar.java:53)
at com.googlecode.d2j.dex.Dex2jar.to(Dex2jar.java:281)
at com.googlecode.dex2jar.tools.Dex2jarCmd.doCommandLine(Dex2jarCmd.java:104)
at com.googlecode.dex2jar.tools.BaseCmd.doMain(BaseCmd.java:297)
at com.googlecode.dex2jar.tools.Dex2jarCmd.main(Dex2jarCmd.java:16) |
I have taken a closer look at this issue and actually, string variables are limited to a size of 65535: https://gitlab.ow2.org/asm/asm/-/blob/master/asm/src/main/java/org/objectweb/asm/ByteVector.java?ref_type=heads#L254 |
apk file: https://cdn.discordapp.com/attachments/757985854588190731/1014526587410075708/vr-_01.20.00.apk
i tried to convert dex -> java but it showed these errors^
it didn't work on pxb1988's dex2jar too.
i dont know about this as well, but is it possible to fix?
The text was updated successfully, but these errors were encountered: