Graham
57d6ec2e63
Add initial refactor of the client's Buffer class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
95b9d35f1a
Refactor the client's IntHashTable class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
2dfb2326c1
Refactor value variable in readShort
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
ab26217db4
Refactor unpackclass
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
7c862f4079
Refactor the Js5File class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
e163483536
Refactor unpackclass's Js5Index class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
c03b4af44f
Refactor unpackclass's ArrayUtils class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
327a1f7d4d
Refactor unpackclass's IntHashTable class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
7687a08cf7
Refactor unpackclass's LinkedList class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
856a17bf02
Refactor unpackclass's gzip decompressor
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
887ce06302
Refactor unpackclass's Bzip2 decompressor
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
6a0976193d
Change Resources field names to upper case
...
While the Resource class is technically not quite immutable (as it
contains a byte array), it's close enough as the array is only ever
read.
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
e0ebaa1bcd
Refactor unpackclass's Buffer and BufferPool classes
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
af0167ef3e
Refactor unpackclass's TracingException class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
628bdc2e86
Refactor the TracingException class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
28f889fe6a
Refactor the UnpackerClassLoader class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
cd043a7ddc
Refactor the loader class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
d23f694a75
Refactor the Resource class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
8e592431bc
Refactor remaining local variables and arguments in the GL library
4 years ago
Graham
0ec7024c2c
Refactor the AudioSource interface
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
fe76054d83
Refactor the MonotonicClock class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
7ff9343516
Refactor the FileOnDisk class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
6e6297b094
Refactor the CursorManager class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
3549b7d6ea
Refactor the FullScreenManager class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
79d8d9f78c
Refactor the SignLink and PrivilegedRequest classes
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
447e667733
Refactor the Pack200Unpacker class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
64da80403e
Refactor the unpack class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
a75d20f6fd
Refactor the ByteArray and DirectByteArray classes
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
201f4cbd46
Refactor the Node class
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
0e9148af01
Add initial deob maps
...
Signed-off-by: Graham <gpe@openrs2.dev>
4 years ago
Graham
882cbed44f
Add duplicate class name support to the deobfuscator
...
This allows two different classes in different modules to be refactored
to the same name - for example, Node in client and unpackclass.
Under the hood, it is implemented by prefixing each class name with the
library name and an exclamation mark (which is highly unlikely to appear
in a class name, as it is invalid Java syntax).
At first, prefixing class names with the library name feels like a bit
of a hack. However, it is much simpler than trying to track libraries
throughout the existing code. Furthermore, it allows us to avoid
forking ASM classes like Remapper.
The Fernflower driver was also changed to deobfuscate each library in
its own context, rather than trying to decompile them all in one go - by
the time classes reach Fernflower, the prefixes have already been
removed and Fernflower can't deal with duplicate class names either.
Signed-off-by: Graham <gpe@openrs2.dev>
5 years ago
Graham
fa2f9cd33d
Add scrambledLibraries set to the deobfuscator profile
...
This allows us to improve the code used for detecting the client library
in the static member scrambling code.
Signed-off-by: Graham <gpe@openrs2.dev>
5 years ago
Graham
69a27e43d4
Move OpenGL registry to the share/deob folder
...
Signed-off-by: Graham <gpe@openrs2.dev>
5 years ago
Graham
deac3306e8
Move share/deob-map to share/deob/map
...
Signed-off-by: Graham <gpe@openrs2.dev>
5 years ago
Graham
3db4c82569
Load Profile from a YAML file
...
Signed-off-by: Graham <gpe@openrs2.dev>
5 years ago
Graham
e6a92ea0aa
Switch to FHS-style layout
...
Signed-off-by: Graham <gpe@openrs2.dev>
5 years ago