Deobfuscate the jaggl jar

While the jaggl jar isn't actually obfuscated, this change means we'll
support the @OriginalXXX annotations (which is useful for local
variables, whose names aren't retained). The unused method, visibility
and final transformers will also tidy up the code slightly.

The new class/member filtering infrastructure is used to retain the
names of every class, method and field.

Signed-off-by: Graham <gpe@openrs2.dev>
Graham 5 years ago
parent bc52f061fb
commit 5c9a6c2abe
  1. 4
      deob/src/main/java/dev/openrs2/deob/Deobfuscator.kt
  2. 15
      deob/src/main/java/dev/openrs2/deob/Profile.kt

@ -71,8 +71,8 @@ class Deobfuscator @Inject constructor(
) )
val glClassPath = ClassPath( val glClassPath = ClassPath(
runtime, runtime,
dependencies = listOf(gl), dependencies = emptyList(),
libraries = listOf(glClient, glLoader, glSignLink, glUnpack, glUnpackClass) libraries = listOf(gl, glClient, glLoader, glSignLink, glUnpack, glUnpackClass)
) )
val unsignedClassPath = ClassPath( val unsignedClassPath = ClassPath(
runtime, runtime,

@ -16,7 +16,10 @@ class Profile(
val BUILD_550 = Profile( val BUILD_550 = Profile(
excludedClasses = GlobClassFilter( excludedClasses = GlobClassFilter(
"client", "client",
"com/sun/opengl/impl/x11/**",
"jagex3/jagmisc/jagmisc", "jagex3/jagmisc/jagmisc",
"jaggl/**",
"javax/media/opengl/**",
"loader", "loader",
"unpack", "unpack",
"unpackclass" "unpackclass"
@ -26,16 +29,24 @@ class Profile(
"**.<init> *", "**.<init> *",
"**.main *", "**.main *",
"**.providesignlink *", "**.providesignlink *",
"**.quit *" "**.quit *",
"com/sun/opengl/impl/x11/**.* *",
"jaggl/**.* *",
"javax/media/opengl/**.* *"
), ),
excludedFields = GlobMemberFilter( excludedFields = GlobMemberFilter(
"**.cache *" "**.cache *",
"com/sun/opengl/impl/x11/**.* *",
"jaggl/**.* *",
"javax/media/opengl/**.* *"
), ),
entryPoints = GlobMemberFilter( entryPoints = GlobMemberFilter(
"**.<clinit> *", "**.<clinit> *",
"**.main *", "**.main *",
"**.providesignlink *", "**.providesignlink *",
"client.<init> *", "client.<init> *",
"com/sun/opengl/impl/x11/DRIHack.begin *",
"com/sun/opengl/impl/x11/DRIHack.end *",
"loader.<init> *", "loader.<init> *",
"unpackclass.<init> *" "unpackclass.<init> *"
), ),

Loading…
Cancel
Save