For deobfuscation tools, the strongest matches are fesh0r/fernflower (Fernflower is a Java bytecode decompiler and reverse engineering), fireeye/flare-floss (This tool is a binary static analysis utility that) and mandiant/flare-floss (Flare-floss is a security utility that performs automated string). jetbrains/fernflower and nationalsecurityagency/ghidra round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked open-source deobfuscation tools to reverse-engineer obfuscated code, compare features, and find the right one for your project.
Fernflower is a Java bytecode decompiler and reverse engineering tool. It transforms compiled Java class files back into human-readable Java source code to reconstruct original program logic and variable names. The tool functions as a command line bytecode processor capable of batch processing Java archives and class files. It specifically handles obfuscated code analysis by renaming ambiguous identifiers and resolving naming conflicts to make the resulting source code easier to follow. The system employs static analysis to convert bytecode to source, utilizing debug information extraction t
Fernflower is a Java bytecode decompiler and reverse engineering tool featuring a command-line interface and structured control-flow reconstruction, though it is limited to Java bytecode rather than general-purpose multi-language deobfuscation.
This project is a binary static analysis tool designed to recover hidden and non-standard encoded strings from compiled binaries. It functions as a malware analysis utility and string decryptor, extracting obfuscated text to reveal concealed program behavior without executing the code. The tool automates the recovery of embedded strings through a combination of emulated instruction execution and abstract syntax tree evaluation. It utilizes pattern-based heuristic detection to identify obfuscation routines and employs cross-platform binary parsing to process multiple executable formats. The s
This tool is a binary static analysis utility that extracts and decrypts obfuscated strings through instruction emulation, aligning closely with the reverse engineering and deobfuscation focus of your search.
Flare-floss is a security utility and static binary string extractor designed to uncover hidden text and configuration data within compiled binaries. It functions as an obfuscated string decoder and reverse engineering tool to translate encoded strings into readable text for security auditing. The project employs emulated execution to capture the decrypted state of strings in memory by running small chunks of binary code in a virtual CPU. It further utilizes static analysis disassembly, intermediate representation analysis, and heuristic-based pattern matching to identify and decode strings t
Flare-floss is a security utility that performs automated string decryption and static binary analysis to uncover hidden text in compiled binaries, matching the reverse engineering category while focusing specifically on string recovery rather than full decompilation.
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
Fernflower is a Java bytecode decompiler that recovers readable source code and handles obfuscated identifiers, fitting the reverse engineering category well even though its scope is limited to Java bytecode rather than general-purpose deobfuscation.
Ghidra is a software reverse engineering suite designed to analyze compiled binaries and reconstruct program logic without access to original source code. It provides an interactive environment for disassembly and decompilation, utilizing a platform-independent intermediate representation to maintain consistency across diverse hardware architectures. The framework supports automated binary analysis through programmatic routines, enabling the investigation of complex code patterns and security indicators. The platform distinguishes itself through a modular architecture that allows for extensiv
Ghidra is a comprehensive software reverse engineering suite that provides binary decompilation, automated analysis, and a scriptable environment, which directly addresses the needs of this search.
Radare2 is a comprehensive framework for reverse engineering and analyzing compiled software. It provides a command-line environment designed for disassembling, debugging, and patching binary executables across a wide range of processor architectures and operating systems. The system distinguishes itself through a modular, plugin-based architecture that supports cross-platform analysis and automated workflows. It utilizes memory-mapped file access to enable efficient structural inspection and modification of binaries without requiring full file loads. By lifting machine instructions into a un
Radare2 is a comprehensive reverse engineering and binary analysis framework with a robust command-line interface, disassembler, and extensive debugging capabilities well suited for inspecting compiled software.
The real deal
This repository provides a dedicated Java bytecode deobfuscator that handles complex obfuscation and string decryption, making it a strong fit for your reverse engineering workflow.
de4dot is a .NET deobfuscator, unpacker, and assembly analysis tool. It is designed to remove obfuscation layers, restore metadata, and simplify bytecode control flow to transform protected binaries back into human-readable code. The project features specialized systems for decrypting strings and constants using both static and dynamic analysis. It identifies specific protection tools through pattern-based detection and strips anti-analysis protections, such as tamper detection and anti-debugging code. The tool provides a suite of reverse engineering capabilities, including binary wrapper un
This .NET deobfuscator and unpacker specializes in restoring obfuscated bytecode and removing anti-analysis protections, making it a well-suited reverse engineering tool despite focusing specifically on the .NET ecosystem.
python-uncompyle6 is a Python bytecode decompiler and reverse engineering tool designed to convert compiled bytecode files back into human-readable source code. It functions as a source code recoverer and bytecode disassembler, allowing for the analysis of internal program logic and the reconstruction of original language constructs. The tool provides cross-version support, enabling the analysis and recovery of source code from bytecode created across multiple different versions of the Python interpreter. This allows it to operate as a cross-version bytecode analyzer that can interpret varied
This repository provides a Python bytecode decompiler for reverse engineering compiled files back into readable source code, fitting the core category despite lacking general JavaScript or native binary support.
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
This C++ toolkit disassembles and decompiles compiled Python bytecode back into readable source code, fitting the requested reverse engineering domain with AST reconstruction and bytecode deconvolution capabilities despite its narrow focus on Python rather than multi-language support.
Reverse engineering and pentesting for Android applications
Androguard is a specialized Android reverse engineering and decompilation framework that provides bytecode disassembly and binary parsing, making it a strong fit for analyzing obscured mobile applications despite lacking general-purpose JavaScript or native binary features.
Recaf is a suite of specialized tools for assembling, editing, deobfuscating, decompiling, and instrumenting Java bytecode and runtime processes. It provides a coordinated environment for modifying compiled Java class files and analyzing the behavior of Java applications. The project distinguishes itself through a multi-level abstraction layer that allows for editing across different formats and a pluggable framework that routes bytecode through multiple configurable decompilation engines. It includes an embedded scripting engine and plugin architecture to automate repetitive tasks and extend
Recaf is a specialized Java bytecode decompiler and editor that offers deobfuscation and analysis tools, though it focuses exclusively on the Java ecosystem rather than general multi-language reverse engineering.
de4dot is a .NET deobfuscator and unpacker designed to reverse obfuscation and restore readable code and metadata within .NET assemblies. It functions as a bytecode analyzer that simplifies control flow, strips anti-debugging protections, and extracts original payloads from packed executable wrappers. The project distinguishes itself through a modular deobfuscation pipeline and a sandbox environment used for dynamic string decryption, which executes decryption methods to replace encrypted strings with plain-text values. It can identify specific obfuscation tools through pattern-based binary a
This tool is a specialized .NET deobfuscator and unpacker that restores readable code, handles string decryption, and simplifies control flow, fitting the reverse engineering category well despite its platform-specific scope.
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
This repository provides a comprehensive Android reverse engineering suite with bytecode deobfuscation and static analysis capabilities, though it is specifically focused on mobile binaries rather than general-purpose code deobfuscation.
Jadx is a comprehensive Java decompilation suite designed to transform compiled binary application files into readable source code. It functions as a static analysis workbench, providing a graphical interface for navigating, searching, and inspecting the internal logic of complex software packages. By utilizing a bytecode-to-Java pipeline, the project reconstructs high-level logical structures from low-level binary instructions, making it a primary tool for Android application reverse engineering. The project distinguishes itself through a sophisticated control flow reconstruction engine and
Jadx is a powerful Java and Android bytecode decompiler that provides a comprehensive static analysis workbench, fitting the reverse engineering intent well despite its primary focus on Java/DEX rather than general JavaScript or native binaries.
dnSpy is a desktop application designed for the analysis, debugging, and modification of compiled .NET assemblies. It functions as an assembly analysis suite and decompiler, translating binary instruction streams back into readable source code to facilitate reverse engineering when original source files are unavailable. The tool distinguishes itself through an integrated binary patching engine and metadata editor, which allow for the direct modification of executable logic and internal metadata tables. It supports in-process debugging instrumentation, enabling users to inject runtime hooks, s
dnSpy is a robust desktop decompiler and debugger specifically tailored for .NET assemblies, fitting the reverse engineering category well though specialized for binary assemblies rather than generic multi-language deobfuscation or JS un-minification.
Simplify is an Android virtual machine sandbox, bytecode execution tracer, and static analysis framework. It serves as a Dalvik bytecode deobfuscator designed to recover readable code from binaries by simulating program behavior without a physical device. The project distinguishes itself by using execution graph analysis to resolve reflection calls and simplify obfuscated code through constant propagation and dead code removal. It employs multi-path execution simulation to track all possible conditional branch outcomes and maps instruction flow to identify constant values. The system covers
Simplify is a Dalvik bytecode deobfuscator and static analysis framework that simulates program execution to reverse obfuscation on Android binaries, aligning well with code deobfuscation and reverse engineering despite lacking a general AST manipulation or un-minification feature.
Reverse engineering tool for virtualization wrappers
This tool is designed to reverse virtualization wrappers used in obfuscation, fitting the code deobfuscation and reverse engineering category, though it is specialised rather than a general-purpose decompiler suite.
RetDec is a reverse engineering framework and static binary analysis tool. Its primary purpose is to function as an LLVM-based machine code decompiler that translates binary machine code from multiple architectures into high-level C source code. The system employs a multi-stage lifting pipeline to recover program logic, using an intermediate representation to apply optimizations before emitting source code. It distinguishes itself through the ability to identify compilers and packers, perform executable unpacking, and reconstruct class hierarchies and original program structures. The framewo
RetDec is a retargetable machine code decompiler and static binary analysis framework that translates native binaries into high-level C source code, making it a strong tool for binary reverse engineering despite lacking JavaScript-specific deobfuscation or symbolic execution.
Deobfuscator is a static analysis and manipulation framework designed to inspect and modify compiled Java class files and bytecode instructions. It functions as a deobfuscator that simplifies and reverses obfuscated Java applications, alongside operating as a security runtime environment that isolates and executes untrusted or potentially malicious Java bytecode safely. The project processes class files through a sequence of custom transformation passes using visitor-based instruction parsing and a static class analysis engine that maps out class hierarchies and cross-references without dynam
This Java deobfuscator provides AST manipulation and specialized un-minification capabilities for analyzing protected bytecode, fitting the requested reverse engineering domain well despite its narrow scope.
This project is a desktop application designed for the reverse engineering and inspection of compiled Java code. It functions as a graphical interface that translates Java bytecode back into readable source code, allowing users to examine the internal logic of class files and archives when original source files are unavailable. The tool provides a structured environment for navigating complex file hierarchies, including nested archives like JAR and WAR files. By maintaining an in-memory representation of loaded classes, it enables rapid searching and cross-referencing of code elements. The ap
This desktop application provides a dedicated bytecode decompiler and source code viewer tailored for Java reverse engineering, though it lacks AST manipulation and symbolic execution features.
Angr is a binary analysis framework and static analysis tool used for reverse engineering compiled binaries. It serves as a binary decompiler and a lifting platform that translates machine code into a common intermediate representation to enable cross-architecture analysis. The framework integrates a symbolic execution engine and constraint solvers to determine the inputs required to reach specific program states. It also employs untrusted code sandboxing to isolate guest code from the host environment during analysis. Its capabilities cover control flow and data flow analysis, including the
angr is a powerful binary analysis and reverse engineering framework featuring a symbolic execution engine and static analysis tools, though it focuses more on deep program analysis and constraint solving than general JavaScript deobfuscation.
radare2 is a reverse engineering framework and binary analysis toolset. It functions as a multi-architecture disassembler, low-level binary debugger, and hexadecimal editor for inspecting executable structures and interpreting machine code when original source files are unavailable. The framework provides capabilities for decompiling machine instructions, performing symbolic analysis, and diffing binary files to identify structural changes across versions. It also includes a digital forensic analyzer and disk analyzer for browsing filesystem formats in userland. The toolset supports binary p
Radare2 is a powerful reverse engineering and binary analysis framework featuring a disassembler, decompiler, and symbolic execution capabilities for examining native binaries.
dnSpy is a specialized toolset for the reverse engineering, analysis, and modification of compiled .NET binaries. It functions as a decompiler that converts assemblies back into readable high-level source code, an assembly editor for modifying bytecode and metadata, and a debugger for inspecting compiled binaries. The project integrates a hex editor specifically for inspecting and modifying raw bytes and Common Intermediate Language structures. It allows for the direct modification of binary contents to change application behavior without requiring the original project source files. The tool
dnSpy is a specialized toolset for .NET reverse engineering and decompilation, providing a robust decompiler and debugger that fits the category despite its language-specific scope.
Retdec is an LLVM-based machine code decompiler and static binary analysis tool designed for binary reverse engineering. It translates binary executable code into high-level representations to facilitate the reconstruction of program logic from compiled machine code. The system utilizes a retargetable frontend architecture and a multi-stage lifting pipeline to convert raw bytes into a common intermediate language. It differentiates custom program logic from known library code through signature-based identification and provides utilities for binary symbol demangling to restore human-readable n
Retdec is an LLVM-based machine code decompiler and binary analysis tool that reconstructs program logic from native binaries, though it lacks specific features for JavaScript un-minification and high-level string decryption.
Agile - ArchangelCloak - Atomic - AutoIt - Autori Obfuscator - Babel - BoxedAppPacker - BytePress - Beebyte - Confuser 1.9 - ConfuserEx - Crypto Obfuscator - Cypher - DCNETProtector - De4dot - DNGuard - DotnetPatcher - DotNetCompressor - DotRefiner - DotWall - Dumper - Eazfuscator - Habib -…
This repository provides a collection of specialized deobfuscators for .NET applications, fitting the reverse engineering category well by targeting common packers and obfuscation tools.
| 仓库 | Star 数 | 语言 | 许可证 | 最后推送 |
|---|---|---|---|---|
| fesh0r/fernflower | 4.3K | Java | Apache-2.0 | |
| fireeye/flare-floss | 4.1K | Python | Apache-2.0 | |
| mandiant/flare-floss | 3.9K | Python | apache-2.0 | |
| jetbrains/fernflower | 4.2K | Java | apache-2.0 | |
| nationalsecurityagency/ghidra | 69.7K | Java | Apache-2.0 | |
| radareorg/radare2 | 23.1K | C | other | |
| java-deobfuscator/deobfuscator | 1.7K | Java | Apache-2.0 | |
| 0xd4d/de4dot | 7.4K | C# | GPL-3.0 | |
| rocky/python-uncompyle6 | 4.3K | Python | GPL-3.0 | |
| zrax/pycdc | 4.3K | C++ | gpl-3.0 |