In computer sciences reverse engineering is the process of taking a software program's binary code to reproduce it, to see how it works or to find certain bugs.
We created a list of free software in active development with an emphasis on innovation and renewal.
- A hex editor is a computer program that allows to view and edit binary data that constitutes a computer file.
- A disassembler is a computer program that translates machine language into assembly language.
- A debugger is a computer program that is used to test and debug other programs.
- A decompiler is a computer program that translates executable programs into source code in a high level language.
Reverse Engineering Tools
Feel free to add suggestions to the comments
A binary analysis framework focusing on both static and dynamic symbolic analysis.
A tool for reverse engineering Android apk files.
A tool to assist vulnerability researchers who look for vulnerabilities in disassembled code.
A tool for analyzing and extracting firmware images.
A lightweight multi-platform, multi-architecture disassembly framework.
Tools to work with android .dex and java .class files.
A tool to decompile .NET assembly.
A tool to browse and decompile .NET assembly to intermediate language.
A tool to decompile and analyze Java byte code.
A reverse engineering framework in Python.
A dynamic binary instrumentation framework.
A generic and open source machine emulator and virtualizer.
A portable reversing framework.
A tool to decompile native code to C/C++.
A lightweight multi-platform, multi-architecture CPU emulator framework.
A network protocol analyzer for Unix and Windows.
An open-source x64/x32 debugger for windows.
A high-performance theorem prover being developed at Microsoft Research.