Graham
0b6966c6f8
Move signed classes in a single pass
5 years ago
Graham
12293bb3b1
Refactor package structure of the asm module
5 years ago
Graham
0c8d0f9cc3
Add initial support for whole program analysis in transformers
5 years ago
Graham
15ccc70c37
Add new remap package
5 years ago
Graham
406feb72f0
Move classpath package to the asm module
...
This is in preparation for Transformers taking an entire ClassPath
instead of a single Library at a time, which is in turn required for
dummy argument removal (a whole program analysis).
5 years ago
Graham
cf650af5fa
Add OriginalArg annotation
...
The dummy argument removal code is going to fiddle with the argument
lists (and so could manual refactoring).
5 years ago
Graham
3978ee9ea0
Allow Transformers to throw AnalyzerException
5 years ago
Graham
b27763a699
Move field/method exclusions to the TypedRemapper
5 years ago
Graham
df4afccccc
Move inherited field/method set code to ClassPath
5 years ago
Graham
751ae183c1
Add IntInterpreter and IntValue
...
I'm planning to use these to remove dummies.
5 years ago
Graham
2cde631fca
Add BitShiftTransformer
5 years ago
Graham
82d359ad4d
Add FieldOrderTransformer
5 years ago
Graham
b37feb0535
Add .editorconfig file
5 years ago
Graham
c04986cedb
Add XML code style matching Maven's convention for POMs
5 years ago
Graham
8a3a9102cb
Use multiModuleProjectDirectory instead of executionRootDir
...
executionRootDir was always a bit of a hack.
5 years ago
Graham
48f8c68500
Format code
5 years ago
Graham
36995c46ef
Add initial IntelliJ IDEA code style configuration
5 years ago
Graham
09001025ba
Update dependencies
5 years ago
Graham
22b9904241
Fix minimum Maven version
5 years ago
Graham
db0c4bead2
Remove formatter-maven-plugin
...
I don't think it'll be able to match my preferred IDEA style. I might
replace it with a custom Maven plugin which invokes the IDEA
command-line formatter.
5 years ago
Graham
1bf39200c5
Use jaggl instead of jogl in the deobfuscator
5 years ago
Graham
fe3e02550b
Rename (and flip) isMutable to isDependency
5 years ago
Graham
40caf973ab
Log warning if an unobfuscated name is remapped
5 years ago
Graham
6fde1a4bca
Add Original{Class,Name} annotations even if the name was unchanged
...
I think they will still be useful, as we might refactor the names in the
deobfuscated code in the future.
5 years ago
Graham
f26695a0c1
Remap Class.forName() calls in ClassNamePrefixer
5 years ago
Graham
3b35a39084
Make ClassForNameTransformer compatible with SimpleRemapper
...
SimpleRemapper returns null if a class should not be renamed.
5 years ago
Graham
a056217cc2
Add CounterTransformer
5 years ago
Graham
ed0da80e30
Add initial Fernflower driver
5 years ago
Graham
c9803a9a5c
Add Fernflower fork
5 years ago
Graham
ded582dd06
Remove FocusListener from class that claims to implement it but doesn't
5 years ago
Graham
cdf7ea435e
Remove cfr from dependencyManagement for now
...
It isn't yet used, and I cfr still needs some work (or we need to
provide it with nicer code) before it's good enough to bundle with the
deobfuscator.
5 years ago
Graham
a2f74669de
Add owner and descriptor to original field/method annotations
...
This will make it easier to map original names to refactored names. It
also means we can keep tracking static methods even if they get moved
around.
5 years ago
Graham
9a27264d97
Rename path package to classpath
5 years ago
Graham
66283c6f7a
Add ExceptionTracingTransformer
5 years ago
Graham
4e929bbfc0
Rename annotations package to annotation
...
The rest of our package names are singular.
5 years ago
Graham
2367ba7ae4
Preserve original class and member names with @OriginalName
5 years ago
Graham
2e39ca26fd
Improve naming and typing in Member{Desc,Ref}.equals() methods
5 years ago
Graham
c1358f6105
Add renamer to the deobfuscator
5 years ago
Graham
7e4dee02d0
Rename FieldRef to MemberRef
5 years ago
Graham
c0568f1373
Make empty Library constructor public
5 years ago
Graham
e42fcd01b5
Add ForestDisjointSet
5 years ago
Graham
0007da4729
Add OpaquePredicateTransformer and initial deobfuscator infrastructure
5 years ago
Graham
d001488424
Add logging to Library read/write methods
5 years ago
Graham
f0cb9d40e2
Add constructor for cloning a Library
5 years ago
Graham
3366156d92
Simplify writeJar
5 years ago
Graham
8966d7b531
Add abstract Transformer class
5 years ago
Graham
ca79e234bd
Add methods for manipulating and iterating over the classes in a library
5 years ago
Graham
77fc441a07
Add InsnMatcher
...
InsnMatcher converts an InsnList to a string of private use codepoints,
where each codepoint maps to an opcode. This allows regular expressions
to be written (using the native Java regular expression engine) to
extract subsequences of instructions whose opcodes match a regex.
5 years ago
Graham
c6921fba9d
Add InsnNodeUtils
...
This commit introduces four methods: two for finding the next/previous
AbstractInsnNode that contains a real JVM opcode and two for finding the
next/previous AbstractInsnNode that is virtual (e.g. a label).
5 years ago
Graham
a91bf3562b
Add Guava and SLF4J dependencies to the util module
...
Almost everything will depend on these, so it is easiest to pull them in
via util rather than repeating the dependencies several times.
5 years ago