Recaf
Recaf copied to clipboard
The modern Java bytecode editor
Some options: - Create a task-scheduler where tasks can have hashes so if a user tries to do multiple duplicate tasks it will wait for the first one to finish...
Generating phantom classes using JPhantom _(My fork, since it has some optimizations)_ lets us compile against things we don't have direct access to. On larger jars the process can be...
In agent mode: - Allow users to dump thread stacktraces in a clean UI _(Exportable as text)_ - Can jump to class/methods as defined in the trace - Visualize analytics...
The search API is heavily tied to the ASM library, which parses Java class files. Android classes are packaged into a single DEX which we parse using [dexlib2](https://github.com/JesusFreke/smali). The API...
Use something like: https://github.com/Col-E/Packet-Channels 1. User `Host` runs Recaf and turns on a setting that hosts a server 2. User `Client` runs Recaf and connects to the server 3. The...
Common mappings are: `obfuscated -> clean` But what if the mappings are `clean -> obfuscated`? Or if they're like TinyV2 and have `obfuscated -> intermediate -> clean`? How should the...
Importing SRG mappings and exporting as Simple mappings results in invalid output because of inclusions of `null` as field descriptors. Exporting as TinyV1 seems to work fine. The fix for...
Using `SimplePluginManager` as the back-end: UI should provide: - Tab for local plugins - Local plugins placed in `%RECAF%/plugins/` - Allow toggle on/off plugins _(should be persistent)_ - Allow easily...
In the classes root: Prompt for the class name, then generates an empty template class `class { }` In packages: Prompt for the class name, with the package name already...