Browse free open source Disassemblers and projects below. Use the toggles on the left to filter open source Disassemblers by OS, license, language, programming language, and project status.
An open-source x64/x32 debugger for windows.
Creates APNG animation from PNG/TGA image sequence.
The Open On-Chip Debugger
RetDec is a retargetable machine-code decompiler based on LLVM
A Hex Editor for Reverse Engineers, Programmers
Capstone disassembly/disassembler framework
An open-source x64/x32 debugger for windows
Binary (hexadecimal) editor for Windows
Deconstruct APNG file into a sequence of PNG frames.
Interactive 6502 Disassembler for Atari binary files on Windows
Third-party TI-84 Plus CE / TI-83 Premium CE emulator
An open source interactive disassembler
An educational software system of a tiny self-compiling C compiler
JVM class file parser and disassembler C++ library.
ZiLOG Z80 CPU emulation library
Open source disassemblers are a type of software that can reverse engineer compiled computer programs. This means they can decode and reproduce the original program code from its binary format, thus making it possible to understand how the program works and to modify or debug the code if needed.
Open source disassemblers are typically open-source software, meaning that their code is released under a free and open license which allows anyone to use, modify, and redistribute the source code. Due to this, anyone can contribute fixes or enhancements to these programs to make them better.
Open source disassemblers also differ from binary reverse engineering tools in that they may analyze the entire program instead of just individual instructions or machine code segments. This makes it possible to understand how different parts of the program interact with each other, as well as how they relate to the environment in which they execute. Additionally, many open source disassemblers support various architectures including x86 (32-bit Intel), AMD64 (64-bit Intel & AMD) and ARM (embedded processors).
The main features of open source disassemblers include: analyzing multiple modules within a program; supporting advanced search techniques such as regular expression searches; displaying flow diagrams for easier understanding of control flow structures; providing graphical user interfaces for ease of navigation; automatically generating intermodular call graphs for better visualization; and offering support for debugging features such as breakpoints and watchpoints.
Overall, open source disassemblers are powerful tools for reverse engineering programs from any platform regardless of language used. They offer an abundance of features that can be advantageous during debugging sessions or when trying to comprehend complex programs. Therefore, it is no wonder why these types of software have become so popular among programmers who want access to such powerful tools without having to rely on expensive commercial products with restrictive licenses.
Open source disassemblers provide numerous benefits to developers and other users:
Open source disassemblers are completely free to use, so they cost nothing. The great advantage of open source software is that it can be modified and redistributed without any limitation or restriction. This makes it possible for developers to contribute their own code and modify existing code in order to create new features or better solutions to existing problems. However, with the vast number of open source disassemblers available, it can be hard to find the exact one you're looking for. As a result, some users may opt for paid disassemblers which usually come with more comprehensive features and technical support. It's important to note that these programs usually require a license fee but this cost is often discounted significantly when compared with what closed-source equivalents would cost. Ultimately though, the best way to get an idea of how much any program will cost is by researching each option carefully or seeking out expert advice from professionals specializing in this field.
Open source disassemblers can integrate with a variety of different types of software. These include code coverage analysis tools, dynamic binary instrumentation frameworks, debugging and reverse engineering tools, compilers and linkers, decompilation tools, operating system kernels and bootloaders, emulator packages, and more. Each type of software allows the disassembler to be used in different ways to provide valuable insights into program behavior and control flow. For example, a code coverage analysis tool can be used to track which parts of the code have been tested or executed during testing cycles. Dynamic binary instrumentation frameworks can be used for profiling functions or modules for benchmarking purposes. Debugging and reverse engineering tools allow users to inspect instructions at lower levels in order to identify discrepancies between expected program behaviors and actual results produced by the running application. Compilers and linkers help developers prepare programs for execution on specific architectures while decompilation tools run machine code through a translator in order to convert it into human-readable source code. Finally, operating system kernels (such as Linux) can work together with open source disassemblers in order to facilitate the development of device drivers that are compatible with multiple platforms while emulators allow users to test programs on various architectures without needing access to the actual hardware device being investigated.