Adam
|
e9ee78a48d
|
Method context was actually important because its copied between frames
|
2016-04-03 12:40:01 -04:00 |
|
Adam
|
7eb1c0d32a
|
Revert "Remove method context which is unnecessary now theres no more graph analysis"
This reverts commit 4e53b80079741083de724f1056380d095b679e9e.
|
2016-04-03 12:38:31 -04:00 |
|
Adam
|
0c027422b9
|
Import cleanup
|
2016-04-02 22:50:06 -04:00 |
|
Adam
|
5ca8e13c53
|
Remove method context which is unnecessary now theres no more graph analysis
|
2016-04-02 22:49:30 -04:00 |
|
Adam
|
6d212c958f
|
Cleanup old commented code and remove unused fields from the debugging
|
2016-04-02 22:46:40 -04:00 |
|
Adam
|
c816ee3c86
|
Remove unused method context instruction context list. I think the MethodContext class can be removed
|
2016-04-02 22:29:38 -04:00 |
|
Adam
|
b77f0e3651
|
Update api version
|
2016-04-02 21:48:19 -04:00 |
|
Adam
|
f5130c1a98
|
Add injector/mapper main classes/entrypoints. Maybe should make those tests use these?
|
2016-04-01 23:59:40 -04:00 |
|
Adam
|
fb31ccecff
|
Add basic game config grabber/logic to check for an update. I guess this works.
|
2016-04-01 23:23:02 -04:00 |
|
Adam
|
3161cfaa09
|
Update some paths in tests etc
|
2016-04-01 22:47:11 -04:00 |
|
Adam
|
41b3777b24
|
Remove deob.gson which isn't used
|
2016-04-01 22:40:55 -04:00 |
|
Adam
|
ce9359a1fd
|
Fix sipush length
|
2016-04-01 22:31:19 -04:00 |
|
Adam
|
ed13e972cc
|
Make idiv mappable
|
2016-03-31 21:27:18 -04:00 |
|
Adam
|
b90316db06
|
Add gamepack 20, 3/31/2016
|
2016-03-31 12:50:56 -04:00 |
|
Adam
|
d78a83c50b
|
Injection works, I don't think I need to change this descriptor comparison since the client versions are the same
|
2016-03-31 12:50:38 -04:00 |
|
Adam
|
a163bc4c46
|
Add class mapper and use it in annotation mapper, which seems to work more reliably
|
2016-03-30 19:43:47 -04:00 |
|
Adam
|
b3efaec8e6
|
Try and fix some of the smaller multiplication problems. I dont know if this is right. Seems to break when multiplying long * a casted int like field3228
|
2016-03-29 20:53:43 -04:00 |
|
Adam
|
a2352bdc19
|
Order guesses based on cardinality
|
2016-03-28 19:19:08 -04:00 |
|
Adam
|
fbb41000b8
|
ArrayLoad also isnt part of expressions
|
2016-03-28 18:41:28 -04:00 |
|
Adam
|
51ae836cd8
|
Add gamepack 19
|
2016-03-27 21:08:25 -04:00 |
|
Adam
|
8d022d216b
|
Map invokespecial on objects that are under java/io
|
2016-03-27 19:38:15 -04:00 |
|
Adam
|
d58116b4ea
|
Map java/lang/reflect/Field and Method
|
2016-03-27 19:16:25 -04:00 |
|
Adam
|
afcb4a1c36
|
Fix annotation mapper to map annotations on methods. Also fix lookup by constant classname. Theres more fields that i thought that aren't mapped, 4
|
2016-03-27 18:43:41 -04:00 |
|
Adam
|
d93317f662
|
Don't stop frames that can't step into static functions. It can happen if the same function steps into a static function multiple places which then steps into another static function at one place. Even though its been stepped into before it shouldn't stop execution of the top level function.
|
2016-03-27 18:17:40 -04:00 |
|
Adam
|
91289273fa
|
Little cleanup
|
2016-03-27 18:11:45 -04:00 |
|
Adam
|
0462c4a1d1
|
Map both possibilities on ambiguous if statements anyway
|
2016-03-27 18:11:00 -04:00 |
|
Adam
|
f36a365659
|
Make msm work like smsm because classes aren't guaranteed to line up
|
2016-03-27 13:54:17 -04:00 |
|
Adam
|
b45ecd4996
|
Fix dup_x2 getOriginal
|
2016-03-27 13:52:57 -04:00 |
|
Adam
|
40725faa0a
|
Map classes too when mapping fields/methods
|
2016-03-27 13:34:22 -04:00 |
|
Adam
|
37193b7a79
|
Fix refactor fail in modarith from earlier
|
2016-03-27 11:23:24 -04:00 |
|
Adam
|
e3a6310572
|
Get rid of most hard type comparisons in mapper
|
2016-03-27 10:44:55 -04:00 |
|
Adam
|
d7abcdf569
|
Remove ismappable which has never worked
|
2016-03-26 17:22:00 -04:00 |
|
Adam
|
41a1ffbae2
|
Reenable modarith
|
2016-03-26 17:09:36 -04:00 |
|
Adam
|
271fa6ba46
|
Insert getter/setters all at once
|
2016-03-26 16:46:20 -04:00 |
|
Adam
|
4485681a28
|
modarith test
|
2016-03-26 10:43:26 -04:00 |
|
Adam
|
fd8af8732d
|
Unused class test
|
2016-03-25 22:11:19 -04:00 |
|
Adam
|
35628b4497
|
Rewrite field inliner
|
2016-03-25 22:10:26 -04:00 |
|
Adam
|
c22a9e43da
|
Rewrite unused fields
|
2016-03-25 22:02:44 -04:00 |
|
Adam
|
e8c047aabe
|
Cleanup
|
2016-03-25 21:55:06 -04:00 |
|
Adam
|
3444655f09
|
Rewrite constant parameter. A bit faster now. Can't tell if its right. Seems to compile.
|
2016-03-25 21:52:23 -04:00 |
|
Adam
|
5ef0be50bf
|
Make unused parameters use VirtualMethods. This removes more parameters than before, I dont know if it is right.
|
2016-03-25 15:04:28 -04:00 |
|
Adam
|
0ed6456c60
|
Move virtual method lookup its own class as many things use it
|
2016-03-25 14:21:27 -04:00 |
|
Adam
|
bcbc87994a
|
Unused params test, this is very slow.
|
2016-03-24 18:38:58 -04:00 |
|
Adam
|
b16fbd712e
|
Constant parameter test, kind of slow though, 46s.
|
2016-03-24 17:25:16 -04:00 |
|
Adam
|
cbdf406434
|
Remove jump graph, isn't used except for some integrity checks, but it makes stuff overly complex.
|
2016-03-24 17:18:08 -04:00 |
|
Adam
|
d4a74501b7
|
Just run once
|
2016-03-24 15:13:11 -04:00 |
|
Adam
|
e73be15286
|
duh
|
2016-03-24 10:14:22 -04:00 |
|
Adam
|
2fdf2b47bc
|
ise tests/cleanup. needs more optimizations.
|
2016-03-24 10:13:18 -04:00 |
|
Adam
|
3f91d272d6
|
Couple more simple tests
|
2016-03-24 10:12:37 -04:00 |
|
Adam
|
e8a5eba8f4
|
Rename unique test
|
2016-03-21 11:17:06 -04:00 |
|
Adam
|
9830f4a339
|
Move asm specific stuff to net.runelite.asm
|
2016-03-21 10:11:36 -04:00 |
|
Adam
|
488c11abfa
|
Use internal classnames when injecting interfaces
|
2016-03-20 17:30:59 -04:00 |
|
Adam
|
9b1f5720b0
|
Only re-generate pool info for get/put/invoke instructions if something changes, otherwise it uses the pool info of the resolved field which isn't always the same
|
2016-03-20 17:30:31 -04:00 |
|
Adam
|
c79a344008
|
Make specific most things, so minimize jasmin diff so I can see the result of the injection easier..
|
2016-03-20 17:29:45 -04:00 |
|
Adam
|
a97e7c283e
|
Realized I can also use mapping importer to check mappings. This finds some discrepancies with the update RL mappings, but on manual inspection the RL mappings seem wrong.
|
2016-03-19 23:31:40 -04:00 |
|
Adam
|
3cc6255596
|
Rebuild pool when writing instrutions to fix previous corruption with the newarray stuff. Run classes through ow2 asm to generate stack maps (and maxs for fun) since I don't want to generate my own stackmaps.
|
2016-03-19 12:45:56 -04:00 |
|
Adam
|
3d1ae24d73
|
Well this seems to work a little better. This is totally made up.
|
2016-03-18 23:09:34 -04:00 |
|
Adam
|
5a0c8ee21d
|
arraystore: map values field
|
2016-03-18 20:41:52 -04:00 |
|
Adam
|
39e2c0420f
|
Crap.
|
2016-03-18 20:08:39 -04:00 |
|
Adam
|
4ea2d8d632
|
Fix if field mapper to take static/class name into consideration
|
2016-03-18 16:12:04 -04:00 |
|
Adam
|
a2fe796306
|
Add gamepack 18
|
2016-03-17 08:55:23 -04:00 |
|
Adam
|
4651c30abc
|
Inject test now runs with all api methods found.
|
2016-03-12 13:37:40 -05:00 |
|
Adam
|
31dc462e55
|
Redirect supercalls in obfuscated overrides.
|
2016-03-11 22:30:48 -05:00 |
|
Adam
|
419e0da7c1
|
Don't delete constructors because it might containe stuff we actually want. Instead rename to init and invoke from constructors. Magic.
|
2016-03-11 20:59:48 -05:00 |
|
Adam
|
6e79aece20
|
Some injecting classes now works
|
2016-03-11 17:34:09 -05:00 |
|
Adam
|
2cbdec1798
|
Beginning work on inject replace
|
2016-03-11 14:31:31 -05:00 |
|
Adam
|
61f6191228
|
invoker injection.
|
2016-03-11 00:26:00 -05:00 |
|
Adam
|
06c6c5d3b0
|
constant parameter: annotate methods with constant parameters are @obfuscatedsignature so we can find them later in inject. Remove deobbed 16 jar as it doesnt have up to date annotations anymore.
|
2016-03-10 23:40:48 -05:00 |
|
Adam
|
39c14267e5
|
Oops.
|
2016-03-10 19:56:44 -05:00 |
|
Adam
|
575deaf992
|
Sort stuff isnt required for graph stuff anymore, it was causing order of classes to load to be different when comparing obfuscated jar vs rebuilt jar, which caused class children order to be different, which affects renamer searching for bases which broke the issame comparison in invokeinterface.
|
2016-03-10 19:35:55 -05:00 |
|
Adam
|
d130a2fb4f
|
Hack to make packet mapping stop at the end of the packet handler
|
2016-03-10 18:02:56 -05:00 |
|
Adam
|
c616eba918
|
17 was the same as 16, add deobbed 16 jar
|
2016-03-06 21:24:55 -05:00 |
|
Adam
|
3dce3934c4
|
Try and pull packet info out of source. gamepack 16 and 17 are actually identical, I didn't realize. Interestingly i found if I attempt to map deobbed client that is rebuilt vs the deobbed client, it can't map everything. Some of that might have to do with the packet handling stuff, this currently npes in iinc so I can't tell how many is due to that yet.
|
2016-03-06 17:36:23 -05:00 |
|
Adam
|
c6d3620ab7
|
Method injection works, need to @Import annotate stuff though probably.
|
2016-03-06 15:28:11 -05:00 |
|
Adam
|
bb81dcf260
|
Import bugfixes. Need to @Import annotations etc since it can't pick up methods from the api atm
|
2016-03-05 23:34:47 -05:00 |
|
Adam
|
2675a402e4
|
Oh.
|
2016-03-04 15:38:26 -05:00 |
|
Adam
|
81c5c3831c
|
Merge branch 'master+rename5' of bitbucket.org:Adam-/jbytecode into master+rename5
|
2016-03-04 15:37:23 -05:00 |
|
Adam
|
f809d2a793
|
Begin inject
|
2016-03-04 15:37:12 -05:00 |
|
Adam
|
158a4219ae
|
client 17
|
2016-03-03 20:31:10 -05:00 |
|
Adam
|
a16a8a5a38
|
Begin moving code to do mapping to core. Write out annotation mapper.
|
2016-02-28 19:39:16 -05:00 |
|
Adam
|
7b46ae596f
|
Once again produces code that compiles
|
2016-02-28 11:44:24 -05:00 |
|
Adam
|
a97ee8881c
|
This was hard to find. Seems to work better? Old code here was finding wildly irrelevant funcs. Just use the renamer code.
|
2016-02-27 23:04:44 -05:00 |
|
Adam
|
63272b915b
|
Trying to get deob running again. Somethings broken.
|
2016-02-27 16:32:22 -05:00 |
|
Adam
|
6eeeaf0716
|
I don't know if this is right. Seeing some dead code still left in which is concerning.
|
2016-02-27 16:10:13 -05:00 |
|
Adam
|
fc82bb8a21
|
Generated garbage code will make negative sized arrays
|
2016-02-27 14:53:02 -05:00 |
|
Adam
|
1d2a7ba82c
|
Add RL mappings for the old jars
|
2016-02-27 13:43:04 -05:00 |
|
Adam
|
92b053548a
|
Fix handling invokevirtual on static methods
|
2016-02-27 13:37:41 -05:00 |
|
Adam
|
fb4ee1ac9b
|
Store return stack pop with stack context instead of what I was trying to do before
|
2016-02-27 12:58:44 -05:00 |
|
Adam
|
5fea3a9c31
|
Map multiple field comparison ifs, this maps all of my test rl fields
|
2016-02-27 12:33:13 -05:00 |
|
Adam
|
19f2807c86
|
Mapping packet handlers works some. Tried to add inlining of results of static methods. Doesnt work well because it inf loops so its disabled usually. I think instead I can track this separately on the stack context and fix resolve() to deal with it.
|
2016-02-27 11:38:44 -05:00 |
|
Adam
|
83f338a2e9
|
Dont know if this is right, but the pkt handlers at least can be picked up now.
|
2016-02-14 18:33:51 -05:00 |
|
Adam
|
3294e1add0
|
This took awhile to find.
|
2016-02-14 15:21:05 -05:00 |
|
Adam
|
d9fc79bba5
|
Test to see how many of the RL fields are mapped. Most but not all.
|
2016-02-14 00:10:00 -05:00 |
|
Adam
|
4d81829128
|
Beginning of rename deob
|
2016-02-13 23:38:58 -05:00 |
|
Adam
|
8f6efa7717
|
Remove old graph stuff, all tests pass
|
2016-02-13 22:51:11 -05:00 |
|
Adam
|
c1bd2d199e
|
Fix tests
|
2016-02-13 22:28:40 -05:00 |
|
Adam
|
770e1f6b2f
|
resolve multidimensional arrays
|
2016-02-13 20:54:44 -05:00 |
|
Adam
|
d833b53646
|
map value of putfields
|
2016-02-13 19:00:18 -05:00 |
|
Adam
|
71e0a6d996
|
Require frames to be crashed too to not map, adds +100
|
2016-02-13 18:48:43 -05:00 |
|
Adam
|
bcc74c6256
|
Map field of invoked object too
|
2016-02-13 18:02:20 -05:00 |
|