fcc8fddcd7Make unused method stuff simpler don't worry about collisions, I'll rename everything later so it wont be a problem
Adam
2015-07-05 21:05:34 -04:00
bfcfaa84e6This doesn't really work but it's a start.
Adam
2015-07-05 17:10:44 -04:00
a7b70c072bSome fields we may be able to detect get but not set, should probably calculate the othe rhalf instead of trying to calculate it from multiple fields?
Adam
2015-07-05 00:40:23 -04:00
1e893da471Begin multi pass work
Adam
2015-07-04 13:35:01 -04:00
500037fc45Cleanup, prepare to detect more ob'd fields.
Adam
2015-07-03 18:54:54 -04:00
6834504e6cWork on detecting setters, for comparison/some fields which are never cleanly gettd
Adam
2015-07-03 18:05:48 -04:00
18a914184bDon't count non ob'd fields, down to 50
Adam
2015-07-03 16:45:19 -04:00
7eb32d7df1Something smarter, down to 82
Adam
2015-07-03 16:30:30 -04:00
c5bbe20791Unused field stuff was harder than i thought
Adam
2015-07-03 01:09:01 -04:00
7b0776d1ecmore arith deob
Adam
2015-07-02 17:07:57 -04:00
e5a8ff8268cleanup, detect func(field * constant).
Adam
2015-07-02 13:48:26 -04:00
1056006b59Got unused parameter stuff to run again. atm not bothering with functions that might be overriden.
Adam
2015-06-30 14:46:15 -04:00
91f189add1fix unused methods again
Adam
2015-06-28 20:45:01 -04:00
b0f5f33e89Fixup rest of unused method stuff. It appears there are some garbage fields too places.
Adam
2015-06-28 19:32:54 -04:00
d9f4d257a5wip removal of unused methods based on execution from init.
Adam
2015-06-27 23:47:43 -04:00
dfcc41b41cI will need to actually perform method invocations during execution to be able to pass/get the correct underlying types of variables for the virtual method lookup.
Adam
2015-06-26 13:19:51 -04:00
0543950013I think my invokevirtual execution is wrong because it doesn't actually look for virtual methods on the type, which is why my unused method deob does weird things. I am seeing methods that still exist after running it that appear to be using non-inversible constants.
Adam
2015-06-25 19:07:46 -04:00
1eee5a48aestore pushes in instruction context too
Adam
2015-06-24 14:48:30 -04:00
85fc94dd57Thinking on modinverse
Adam
2015-06-23 19:29:32 -04:00
815b2e2931works. splitting blocks by instructions jumped to and not checking whether inlinable blocks were terminal.
Adam
2015-06-20 18:39:40 -04:00
713db7777fremove stack of ifs in illegal state ex deob, get rid of using pcs in frame to execute, need to remove more of this later, make jumps jump to instructions, doesn't yet work
Adam
2015-06-20 17:56:46 -04:00
98d85c646billegal state exception deob, ff doesnt fully like it yet though
Adam
2015-06-19 23:30:03 -04:00
d3142d83ceSimplify jump deob, just destroy and rebuld jump graph instead of trying to update it which sucks.
Adam
2015-06-18 16:49:47 -04:00
cb172775d4Don't try and move jumps around in exceptions
Adam
2015-06-17 19:03:00 -04:00
db6269ba7edebugging, idr, exception handler execution support
Adam
2015-06-13 21:51:06 -04:00
6cac8c1cc9Move deobfuscation methods to their own files
Adam
2015-06-13 14:24:04 -04:00
3140a51f3fConflicts: src/main/java/info/sigterm/deob/Deob.java src/main/java/info/sigterm/deob/attributes/code/Instructions.java
Adam
2015-06-13 11:09:34 -04:00
a677e64aacRemove unused parameters
Adam
2015-06-13 11:01:46 -04:00
eb986ba708Eclipse code cleanup
Adam
2015-05-31 16:04:57 -04:00
0fcbcd262cnew execute stuff
Adam
2015-05-31 16:03:37 -04:00
1e34e0ec66Remove instructions correctly
Adam
2015-05-11 10:26:48 -04:00
64d41c6f92Cleanup block removal
Adam
2015-05-11 10:25:00 -04:00
fa3e9c0262Hard to follow, exception removal and unused block (only from the now removed exceptions from what I can tell)
Adam
2015-05-10 16:42:47 -04:00