- Home
- Reverse Engineering Tools
- Boomerang
Boomerang
What it is
Boomerang is a free, BSD-licensed, open-source decompiler that translates supported machine-code binaries into C source code. It supports x86 (IA-32 only), PPC and ST20 architectures, with input formats including ELF, PE, DOS MZ, DOS/4GW LE and Mach-O. Users can run it as a command-line tool or a GUI application. Build instructions cover Linux, macOS and Windows, but compiling requires a 64-bit operating system and a C++17 compiler; 32-bit systems are not supported. Listed prerequisites include CMake, Qt5, Capstone, GNU bison and GNU flex. Precompiled packages are available for release versions, while the project recommends building the development branch from source. It provides unit and regression tests, though the README says the regression test suite cannot be built on Windows. The maker positions the release for developers and experimenters and warns that large-binary decompilation may disappoint. Decompiled output does not reproduce the original source file and may differ from it. Bytecode decompilation is not supported.
For and against
For
- Free and BSD licensed.
- Offers both command-line and GUI interfaces.
- Supports Linux, macOS and Windows builds.
- Includes unit and regression tests.
Against
- Requires a 64-bit system and C++17 compiler.
- Does not support bytecode decompilation.
- Windows regression test suite cannot be built.
- Output may differ from the original source.
The verdict
Boomerang provides a free way to decompile selected native binaries into C, with both command-line and graphical interfaces. Its architecture and format limits, build requirements and non-identical output matter when deciding whether it fits a project.
Who it suits
Boomerang is aimed at developers and experimenters working with supported native machine-code binaries. It is less suited to users who need bytecode decompilation or a recreation of the original source.
Plans and prices
Boomerang Decompiler
Open source · BSD licensed
Read 8 Oct 2026 · github.com
On the record
- Architectures
- The GitHub project lists support for x86 IA-32, PPC, and ST20 architectures.github.com · read 8 Oct 2026
- Build dependencies
- Required build dependencies listed include CMake, Qt5, Capstone, GNU bison, and GNU flex.github.com · read 8 Oct 2026
- Build platforms
- The README gives build instructions for Linux, macOS, and Windows.github.com · read 8 Oct 2026
- Build requirements
- Building requires a 64-bit operating system and a C++17 compiler; 32-bit systems are not supported.github.com · read 7 Oct 2026
- Development recommendation
- The README recommends building the development branch from source, while noting precompiled packages are available for release versions.github.com · read 8 Oct 2026
- File formats
- The project lists ELF, PE, DOS MZ, DOS/4GW LE, and Mach-O file formats.github.com · read 8 Oct 2026
- Input formats
- It supports ELF, PE, DOS MZ, DOS/4GW LE, and Mach-O file formats.github.com · read 7 Oct 2026
- Integrations
- The README lists CMake, Qt5, Capstone, GNU bison, GNU flex, and optional CCache, Doxygen, and Python 3 as build tools or dependencies.github.com · read 8 Oct 2026
- Intended users
- The maker's download page says its release is strictly for developers and experimenters and warns that large-binary decompilation may disappoint.boomerang.sourceforge.net · read 8 Oct 2026
- Interfaces
- Boomerang can be run as a command-line tool or as a GUI application.github.com · read 8 Oct 2026
- License
- The repository describes Boomerang as BSD licensed.github.com · read 7 Oct 2026
- Licensing
- The GitHub README describes the project as BSD licensed.github.com · read 8 Oct 2026
- Operating systems
- The README documents build instructions for Linux, macOS, and Windows.github.com · read 7 Oct 2026
- Output
- The GitHub project says Boomerang outputs C source code.github.com · read 8 Oct 2026
- Purpose
- Boomerang is an open-source machine-code decompiler that attempts to turn executable files into high-level source code.boomerang.sourceforge.net · read 8 Oct 2026
- Quality limits
- The maker's original project page says decompilation does not recreate the original source file and may produce source unlike it.boomerang.sourceforge.net · read 8 Oct 2026
- Release guidance
- Although precompiled packages are available for release versions, the project recommends building the development branch from source.github.com · read 7 Oct 2026
- Requirements
- The README lists a 64-bit operating system and a C++17 compiler among the build prerequisites.github.com · read 8 Oct 2026
The review
Boomerang is an open-source decompiler for supported native binaries, aimed at developers and experimenters investigating machine code. It is a sensible zero-cost option if its architecture and file-format support match your target; it is not a route back to the original source.
Overview
Boomerang translates machine code into C, which can help make supported binaries easier to inspect. The result is not a recreation of the original source file and may differ from it, so treat the output as an aid to analysis rather than a faithful recovery. The maker also cautions that decompiling large binaries may disappoint, making this a more plausible fit for focused development or experimentation than for reconstructing a large codebase.
Key features
- Native-code decompilation: Boomerang outputs C from supported native binaries. It does not decompile bytecode, so choose another tool for bytecode-based targets.
- Specific architecture coverage: It supports x86 (IA-32 only), PPC, and ST20. That is useful when a target matches one of those architectures, but the x86 restriction rules out x86-64 work.
- Five input formats: Supported formats are ELF, PE, DOS MZ, DOS/4GW LE, and Mach-O. This covers several common executable formats, but does not imply support for other formats.
- CLI and GUI: The command-line and graphical interfaces offer different ways to work with the same decompiler; neither changes its architecture or output limitations.
- Open-source project: The project describes Boomerang as BSD licensed. It also provides unit and regression tests, though Windows users cannot build the regression test suite.
Pricing
Boomerang is free: its Boomerang Decompiler plan costs nothing and is open source under a BSD license. There are no paid tiers to trade features against, which makes it attractive for developers and experimenters who can work within its supported targets.
The practical cost is setup. Building requires a 64-bit operating system and a C++17 compiler, along with documented prerequisites including CMake, Qt5, Capstone, GNU bison, and GNU flex. The project recommends building its development branch from source, although precompiled packages are available for release versions. This is a less convenient choice for anyone seeking a ready-to-run, broadly compatible decompiler.
Platforms
Boomerang has build instructions for Linux, macOS, and Windows. A 64-bit operating system is required; 32-bit systems are unsupported. The listed platforms therefore describe where users can build it, not a promise of support for every system configuration.
Who it's for
Boomerang fits developers and experimenters who want to inspect supported native binaries, are comfortable with a source build, and can accept C output that may diverge from the original. It is a poor fit for bytecode analysis, x86-64 targets, large-binary recovery expectations, or anyone who needs original source reconstructed. Bug reports go through the GitHub issue tracker.
Pros and cons
- Pro: Free BSD-licensed access to native-code decompilation keeps the direct software cost at zero.
- Pro: CLI and GUI interfaces, plus builds for three desktop operating systems, allow more than one workflow.
- Con: Architecture coverage is narrow, including x86-32 only, so many targets will fall outside its scope.
- Con: Output is not the original source and may differ from it; large binaries may also disappoint.
- Con: The 64-bit, C++17 build requirement and several dependencies add setup work, and Windows regression-test builds are unsupported.
Alternatives
For other tools in the same category, see Decompiler Software and Reverse Engineering Tools.
- IDA Pro is worth considering when you want a named-license free plan with x86-32 and x86-64 disassembly and two cloud-based decompilers, or a paid Pro Essential plan at $1,099. Its free plan does not offer a free trial.
- JEB may suit researchers, students, hobbyists, and nonprofit reverse engineers seeking free x86 and x86-64 decompilation through its Community Edition; it also offers a free trial.
- Relyze is a Windows option with a Professional Trial License covering one named user, three concurrent installs, and 30 day updates.
- rev.ng is an alternative if you want a free-software decompilation pipeline across Linux, Windows, macOS, web, and API platforms; its UI is offered commercially in cloud and standalone versions.
- Binary Ninja may fit users who want a free evaluation and education plan with five decompilation architectures, or a Personal plan at $199, paid once. The free plan excludes API and plugin access.
- Bytecode Viewer is another free, open-source option under GPL v3 Copyleft for readers comparing decompiler software.
- dotPeek is a free Windows alternative with no license key required.
- Ghidra is another free decompiler option for Linux, macOS, and Windows.
Verdict
Choose Boomerang if you need a free, BSD-licensed tool to turn supported native binaries into C and are willing to build or configure it for your system. Its command-line and GUI options are useful, but limited architecture coverage and non-identical output are decisive constraints. Look elsewhere for bytecode, x86-64 work, or a better prospect of handling large binaries.