If you want to determine the compiler used for something or find out what it was packed with, these are your best options.
- DiE: Cross-platform and works well.
- ExeInfo: Offers better results but is exclusive to Windows. It might work with Wine, a Windows compatibility layer for Linux.
When it comes to disassemblers, the choice ultimately comes down to your personal preference. Typically, there are two popular options:
- IDA: The industry standard but expensive. (Cracked versions are available)
- Ghidra: A trusted and free alternative.
If you prefer a GUI frontend for the Rizin Framework, consider Cutter, which can also use the Ghidra decompiler.
For .NET decompilation, several options are available:
- dotPeek: Offers excellent decompilation results.
- dnSpy: Great for Windows users.
- Avalonia ilSpy: Recommended for Linux users.
These tools are particularly useful for Android reverse engineering:
APKs:
- APKLab: An Android reverse-engineering workbench for VS Code.
- apk-mitm: Used for automatic SSL certificate unpinning in APKs but not always reliable.
- frida for Android: For manual unpinning attempts.
- apktool: Converts APKs to bytecode.
- jadx: A GUI tool for decompiling APKs back into Java source code. It can even generate projects.
- Android Studio & Genymotion: Designed for Android development and provide easy access to ADB. They offer ARM translation and similar features for packages that don't support x86.
JARS:
- java-decompiler: Available with both CLI and GUI versions, similar to dnSpy for JAR files.
- pyinstxtractor: Unpacks PyInstaller executables to bytecode and other dependencies.
- Decompyle++: A Python bytecode decompiler/disassembler.
- HTTPDebugger: Best for Windows users.
- Fiddler/Fiddler Everywhere: Ideal for Linux users.
- HTTPToolkit: Great for Android debugging.
- UnityExplorer: Can be loaded into Unity games to explore their contents at runtime.
- CheatEngine: Widely known for game hacking.
- Il2CppDumper: Used to dump Unity games built using IL2CPP.
- Cpp2IL: Similar to Il2CppDumper but seems to be compatible with more games based on user experience.