R
Ramesh
Hi all,
I recently had to 'de-obfuscate'(not exactly, may be I can
call it decompile-and-compile-that-code-again with a bit of
undestanding) a java class file from a J2ME application, to customize
it according to my needs. I used JAD(a small, free and fast Java
Decompiler). It was successful in decompiling most of the classes but
a few important class files were so much obfuscated so that the
generated java code won't compile. I found codes like this in the java
file generated.
_L1:
j1;
JVM INSTR tableswitch 2 4: default 284
// 2 266
// 3 256
// 4 270;
goto _L6 _L8 _L9 _L10
_L9:
a.c();
goto _L6
I think this is not a valid code. Can anyone please tell me which
decompiler I can use so that i don't get such instructions. I don't
need the code to be de-obfuscated(which I know is impossible), but to
be a compiling, decompiled class file.
I have yet another doubt. Consider the following code fragment,
if(ae1.o == d.o) goto _L12; else goto _L11
_L11:
if(ae1.o != 5) goto _L14; else goto _L13
_L13:
....
In the code above, if I were to remove all the goto's, should I
arrange those scraps of codes in the same sequential manner the goto's
occur. Or, are the goto's a ruse of the obfuscation, so that i may
ignore the occurrence and the arrangement of gotos.
Thanks,
Ramesh
I recently had to 'de-obfuscate'(not exactly, may be I can
call it decompile-and-compile-that-code-again with a bit of
undestanding) a java class file from a J2ME application, to customize
it according to my needs. I used JAD(a small, free and fast Java
Decompiler). It was successful in decompiling most of the classes but
a few important class files were so much obfuscated so that the
generated java code won't compile. I found codes like this in the java
file generated.
_L1:
j1;
JVM INSTR tableswitch 2 4: default 284
// 2 266
// 3 256
// 4 270;
goto _L6 _L8 _L9 _L10
_L9:
a.c();
goto _L6
I think this is not a valid code. Can anyone please tell me which
decompiler I can use so that i don't get such instructions. I don't
need the code to be de-obfuscated(which I know is impossible), but to
be a compiling, decompiled class file.
I have yet another doubt. Consider the following code fragment,
if(ae1.o == d.o) goto _L12; else goto _L11
_L11:
if(ae1.o != 5) goto _L14; else goto _L13
_L13:
....
In the code above, if I were to remove all the goto's, should I
arrange those scraps of codes in the same sequential manner the goto's
occur. Or, are the goto's a ruse of the obfuscation, so that i may
ignore the occurrence and the arrangement of gotos.
Thanks,
Ramesh