9 Repos
Tools that transform compiled bytecode back into high-level human-readable source code.
Distinct from Bytecode Disassemblers: Focuses on recovering source code (decompilation) rather than just assembly-like disassembly.
Explore 9 awesome GitHub repositories matching part of an awesome list · Bytecode Decompilers. Refine with filters or upvote what's useful.
Recaf ist eine Suite spezialisierter Tools zum Assemblieren, Bearbeiten, Deobfuskieren, Dekompilieren und Instrumentieren von Java-Bytecode und Laufzeitprozessen. Es bietet eine koordinierte Umgebung zum Modifizieren kompilierter Java-Klassendateien und zum Analysieren des Verhaltens von Java-Anwendungen. Das Projekt zeichnet sich durch eine mehrstufige Abstraktionsschicht aus, die das Bearbeiten über verschiedene Formate hinweg ermöglicht, sowie durch ein steckbares Framework, das Bytecode durch mehrere konfigurierbare Dekompilierungs-Engines leitet. Es enthält eine eingebettete Skript-Engine und eine Plugin-Architektur, um repetitive Aufgaben zu automatisieren und das Systemverhalten zu erweitern. Das Toolset deckt mehrere hochrangige Funktionsbereiche ab, einschließlich statischer Analyse für die Suche nach Anwendungsinhalten und der Simulation von Methodenausführungszuständen. Es unterstützt zudem Laufzeitinstrumentierung für das Anhängen an Live-Prozesse und automatisierte Bytecode-Transformation zum Entfernen von Obfuskation und Reparieren von Klassendateien. Headless-Ausführung wird über ein Command-Line-Interface unterstützt, um Workflows in externe Build-Pipelines zu integrieren.
Provides a pluggable framework that routes bytecode through multiple interchangeable decompilers.
Reverse engineering and pentesting for Android applications
Decompiles DEX and ODEX bytecode into readable source code for security analysis.
JPEX Software is a comprehensive reverse engineering suite for SWF binary files, serving as an ActionScript decompiler and editor. It provides a toolkit for decompiling, analyzing, and modifying the internal structure of compiled Flash content, including the extraction of scripts and media assets. The project is distinguished by its ability to perform direct binary modification, allowing users to edit bytecode and replace embedded resources without reverting to high-level source code. It includes a runtime ActionScript bytecode debugger for variable inspection and call stack analysis, as well
Ships a powerful ActionScript decompiler that transforms compiled bytecode back into human-readable source code.
This project is a comprehensive Android reverse engineering suite that functions as a decompiler, bytecode deobfuscator, and malware analysis tool. It is designed to convert APK, DEX, and OAT binaries into human-readable source code using a native implementation that does not require a Java Virtual Machine. The platform is distinguished by its integration with Frida for dynamic analysis, allowing users to hook methods, inject custom JavaScript, and dump device memory in real time. It also features specialized security engines, including a taint propagation engine and a stack-state machine, to
Translates Dalvik bytecode into readable source code using a structured algorithm to recover program logic.
Fernflower ist ein Java-Bytecode-Decompiler und Reverse-Engineering-Tool. Es transformiert kompilierte Java-Klassendateien zurück in menschenlesbaren Java-Quellcode, um die ursprüngliche Programmlogik und Variablennamen zu rekonstruieren. Das Tool fungiert als Befehlszeilen-Bytecode-Prozessor, der in der Lage ist, Java-Archive und Klassendateien im Batch-Verfahren zu verarbeiten. Es handhabt speziell die Analyse von obfuscated Code, indem es mehrdeutige Identifikatoren umbenennt und Namenskonflikte auflöst, um den resultierenden Quellcode leichter nachvollziehbar zu machen. Das System nutzt statische Analyse, um Bytecode in Quellcode umzuwandeln, und verwendet die Extraktion von Debug-Informationen, um lokale Variablennamen wiederherzustellen. Es rekonstruiert Programmstrukturen durch Kontrollflussgraphen-Analyse, Typinferenz und die Generierung eines abstrakten Syntaxbaums.
Functions as a bytecode decompiler that transforms compiled class files back into human-readable Java source code.
python-uncompyle6 ist ein Python-Bytecode-Decompiler und Reverse-Engineering-Tool, das darauf ausgelegt ist, kompilierte Bytecode-Dateien zurück in menschenlesbaren Quellcode zu konvertieren. Es fungiert als Quellcode-Wiederhersteller und Bytecode-Disassembler, was die Analyse interner Programmlogik und die Rekonstruktion ursprünglicher Sprachkonstrukte ermöglicht. Das Tool bietet Cross-Version-Unterstützung, was die Analyse und Wiederherstellung von Quellcode aus Bytecode ermöglicht, der über verschiedene Versionen des Python-Interpreters hinweg erstellt wurde. Dies erlaubt den Betrieb als Cross-Version-Bytecode-Analyzer, der unterschiedliche Instruktionssätze unabhängig von der zur Ausführung des Tools verwendeten Version interpretieren kann. Die Funktionen decken Bytecode-Analyse und Programminspektion ab, einschließlich der Möglichkeit, Instruktionen mit interpretierten Flags und Operanden aufzulisten. Das System kann Quellcode aus ganzen Dateien oder spezifischen fragmentierten Segmenten, wie Lambda-Bodys und List Comprehensions, durch Abbildung von Bytecode-Offsets auf Quellfragmente rekonstruieren.
Employs recursive descent techniques to recover complex nested expressions such as lambdas and list comprehensions.
pycdc is a reverse engineering toolset that decompiles and disassembles compiled Python bytecode files back into readable source code. It parses .pyc file headers, reconstructs abstract syntax trees from bytecode instructions, and handles version-specific opcodes across Python versions 1.0 through 3.13 with endian-aware binary parsing. The tool recovers numeric constants, string literals, and marshalled Python objects from compiled bytecode, supporting both file-based and in-memory bytecode loading. It provides a human-readable disassembly listing of bytecode instructions alongside full sourc
Translate compiled Python bytecode back into readable source code by analyzing and reconstructing the original program structure.
Fernflower is a Java bytecode decompiler designed to convert compiled Java class files back into human-readable source code. It functions as a bytecode analysis tool that recovers original program logic and structure from compiled binaries. The project includes capabilities for obfuscated identifier resolution to rename ambiguous member elements, ensuring clear identifiers in the resulting source. These features support the analysis of obfuscated code, legacy code recovery, and Java malware analysis for security auditing. The system utilizes a structural analysis pipeline that includes contr
Converts compiled Java class files back into readable source code to recover original program logic.
gdsdecomp is a project recovery suite and game engine reverse engineering toolset. It functions as a bytecode decompiler, binary resource converter, and asset extraction tool designed to reconstruct original directory hierarchies and scripts from compiled binary game assets. The toolset specializes in GDScript bytecode decompilation and compilation, translating compiled bytecode back into human-readable source code or converting source code into executable bytecode for specific engine versions and commit hashes. It includes a game archive patcher to modify project archives by replacing intern
Converts compiled bytecode files back into human-readable source code for various engine versions.