If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler
: The issue tracker is now writable again and logged users can download files too. But note that our support is very LIMITED.

#30 Unreachable opcode delete
Author:
googleCode

Date created:
Type: feature
Visibility: Everybody
Assigned to:
Labels: DecompilationGoogle CodeObfuscated
State: closed 

Hi, it would be nice to add the optional ability to delete unreachable opcodes. For
example, many obfuscators add code like that to corrupt the control flow:
.....
jump L15
//// HERE BEGIN JUNK OPCODES ////
bitnot
setlocal3
lessequals
greaterequals
newactivation
pop
lshift
lessthan
setlocal3
L15:
some opcodes
.......
So, if remove opcodes between jump and label(L15:) it would be clean control flow.
Hi,
most of the obfuscators do also the trick with
pushtrue
setlocal x
pushfalse
setlocal y
and then use these local variables to change flow with
pushtrue
getlocal x
ifeq
and then they can insert junk opcode almost everywhere...
unreachable opcodes can be deleted, but this is not very useful because all of the other
tricks obfuscators do...
Well, yeah, about tricks with local bool vars I know too. But they can be easily replaced
by jump and then just remove it. Usual are local Boolean variables don’t change the
value, they just announced at the beginning of methods.
Hi,
please try new version - FFDec 1.3.0
it has new Deobfuscation menu which can remove deadcode.)
State: →closed
Title: Unreachable opcode delete→Unreachable opcode delete
Type: →feature
Visibility: →Everybody
Title: Unreachable opcode delete→Unreachable opcode delete
Type: →feature
Visibility: →Everybody