Ghidra reverse engineering suite by NSA

Reverse engineering used to require either a five-figure IDA Pro license or years of manual assembly reading. Neither is strictly true anymore. A researcher recently ran a firmware reverse-engineering task through Qwen3-VL 27B, a model small enough to run on a single consumer GPU, and had it finished in 30 minutes, a job that assumption said needed a frontier model. That shift matters because the bottleneck was never really the AI. It was the tooling: the disassembler that turns machine code into something readable, the decompiler that lifts it into pseudo-C, and the debugger that lets a researcher watch a binary run step by step. This guide covers the best apps for reverse engineering on desktop right now, from free NSA-built suites to paid tools built for professional malware analysis, so whichever local model does the heavy lifting has something worth feeding it.

What to look for in a reverse engineering tool

Not every tool fits every job. Before picking one, weigh these criteria against the binaries in front of you.

Quick comparison

App Best for Platforms Free plan Starting price License
Ghidra Best free decompiler overall Windows, macOS, Linux Yes, full featured Free Open source
IDA Free Trying the IDA workflow Windows, macOS, Linux Yes, x86/x64 only Free (IDA Pro from custom pricing) Commercial (free tier)
Binary Ninja Scripting-first workflows Windows, macOS, Linux Yes, Binary Ninja Cloud $199/year (non-commercial) Commercial
Cutter A GUI on top of Rizin Windows, macOS, Linux Yes, full featured Free Open source
radare2 Terminal-native, scriptable analysis Windows, macOS, Linux Yes, full featured Free Open source
Hopper Disassembler Mach-O and ELF on a budget macOS, Linux No, trial only Around $99 (single-user, one-time) Commercial
x64dbg Windows PE debugging Windows Yes, full featured Free Open source
ILSpy .NET assembly decompilation Windows, macOS, Linux Yes, full featured Free Open source

The 8 best reverse engineering apps for desktop

1. Ghidra -- Best free decompiler overall

Ghidra is the NSA’s software reverse engineering suite, open-sourced in 2019 and still the default recommendation for anyone reverse engineering for the first time. It disassembles and decompiles binaries across dozens of processor architectures, ships a working Python and Java scripting API through PyGhidra, and handles multi-gigabyte firmware images without the memory problems older free tools had. Recent releases added kernel-level debugging, a p-code emulator, and Visual Studio Code integration, closing much of the gap with paid alternatives.

Where it falls short: The interface still shows its Java-Swing roots, and the decompiler occasionally produces messier pseudocode than IDA Pro on heavily obfuscated code.

Pricing: Free, open source.

Platforms: Windows, macOS, Linux.

Download: NSA / Ghidra project

Bottom line: The starting point for almost everyone, and good enough to stay the only tool most hobbyists ever need.

2. IDA Free -- Best for learning the industry-standard workflow

IDA Free is Hex-Rays’ no-cost edition of IDA, the disassembler most professional malware analysts still measure everything else against. It covers x86 and x64 binaries for non-commercial use, trailing the paid version by several release generations but keeping the same core disassembly engine and interface conventions that show up in nearly every reverse engineering job posting.

Where it falls short: Limited to x86/x64, lacks the Hex-Rays decompiler, and cannot be used commercially. Stepping up to IDA Home (around $365/year, one processor family) or IDA Pro (custom subscription pricing) is a real jump in cost.

Pricing: Free (non-commercial); IDA Home from about $365/year; IDA Pro priced on request.

Platforms: Windows, macOS, Linux.

Download: Hex-Rays

Bottom line: Worth installing purely to learn the interface conventions used across the industry, even for readers who will do their actual work in Ghidra.

3. Binary Ninja -- Best for scripting and team collaboration

Binary Ninja is built around its own intermediate language (BNIL) that makes writing analysis scripts noticeably less painful than working directly against raw disassembly. Vector 35 dropped the non-commercial license to $199 with the 6.0 release, and Binary Ninja Cloud offers a free, browser-based, collaborative option for analysts who want to share annotations on a sample in real time without a local install.

Where it falls short: The commercial license runs into four figures, and full architecture coverage depends on plugins rather than shipping in the box the way Ghidra’s does.

Pricing: Non-commercial license $199 one-time (includes a year of updates); commercial license around $1,499; Binary Ninja Cloud free.

Platforms: Windows, macOS, Linux.

Download: Vector 35

Bottom line: The pick for anyone who plans to write custom analysis scripts rather than click through a GUI.

4. Cutter -- Best free GUI for CLI-shy users

Cutter wraps a Qt-based graphical interface around the reverse engineering framework built by the same core developers who left radare2 to found Rizin. Since version 2.0 it runs on the Rizin backend and bundles a Ghidra-derived decompiler, giving it graph views, a hex editor, and function analysis without touching a command line.

Where it falls short: Less polished than Ghidra’s newer UI passes, and some advanced radare2/Rizin commands are easier to reach from the terminal than from Cutter’s menus.

Pricing: Free, open source.

Platforms: Windows, macOS, Linux.

Download: Rizin project

Bottom line: The right entry point for someone who wants radare2-family power without learning its command syntax first.

5. radare2 -- Best for terminal-native, scriptable analysis

radare2 is a command-line reverse engineering framework that treats every binary as something to be queried, scripted, and piped through Unix-style commands. It covers an unusually wide range of architectures and file formats, embeds directly into shell workflows, and has spawned an ecosystem of scripts and plugins built by over a decade of security researchers.

Where it falls short: The command syntax is famously dense, and the learning curve is steep enough that most beginners start with Cutter instead.

Pricing: Free, open source.

Platforms: Windows, macOS, Linux.

Download: radare2 project

Bottom line: Built for people who already live in a terminal and want reverse engineering to work the same way.

6. Hopper Disassembler -- Best for Mach-O and ELF on a budget

Hopper is a commercial disassembler and decompiler built specifically for macOS and Linux, with particular strength analyzing Mach-O binaries, something Windows-first tools handle less gracefully. It includes a graphical control-flow view, Python scripting, and integrated LLDB and GDB debugging for a fraction of what IDA Pro or Binary Ninja’s commercial tier costs.

Where it falls short: No Windows build, and the decompiler quality trails Ghidra and IDA Pro on complex or obfuscated binaries.

Pricing: Single-user license around $99, one-time purchase.

Platforms: macOS, Linux.

Download: Cryptic Apps

Bottom line: The most affordable commercial option for a Mac-based analyst who mostly works with Apple or Linux binaries.

7. x64dbg -- Best for Windows debugging

x64dbg is a dedicated open-source debugger for Windows executables, built for tracing execution, setting breakpoints, and inspecting memory in x86 and x64 PE binaries. It ships a graph view of control flow, a scripting engine, and a plugin system that the malware-analysis community has used to bolt on unpacking helpers, anti-anti-debug tricks, and format-specific extensions.

Where it falls short: It is a debugger, not a full disassembler or decompiler, so most workflows pair it with Ghidra or IDA for static analysis first.

Pricing: Free, open source (GPLv3).

Platforms: Windows.

Download: x64dbg project

Bottom line: The default choice for live debugging a Windows binary, used alongside a static analysis tool rather than instead of one.

8. ILSpy -- Best for .NET assembly decompilation

ILSpy is an open-source decompiler purpose-built for .NET assemblies, turning compiled C# and VB.NET binaries back into readable source with whole-project decompilation, type and method navigation, and support for everything from .NET Framework through .NET 10. It is the tool Visual Studio’s own “Go To Decompiled Source” feature is built on, and it runs cross-platform through Avalonia rather than being locked to Windows.

Where it falls short: It reads and decompiles assemblies but does not attach a live debugger the way the community-maintained dnSpyEx fork does; pair the two when a project needs both.

Pricing: Free, open source.

Platforms: Windows, macOS, Linux.

Download: ILSpy project

Bottom line: The tool to reach for the moment a target turns out to be a .NET assembly instead of native code.

How to pick the right one

If a reader wants the best free decompiler with no strings attached: Ghidra. It covers more architectures out of the box than anything else on this list and costs nothing.

If the work is native to .NET assemblies: ILSpy, paired with dnSpyEx when live debugging is needed alongside decompilation.

If a reader wants to write custom analysis scripts against a clean intermediate representation: Binary Ninja, worth the $199 non-commercial license the moment BNIL saves an afternoon of manual scripting.

If the target is a Mach-O binary on macOS and budget matters: Hopper Disassembler, for a fraction of IDA Pro’s cost.

If Windows live debugging is the task: x64dbg, paired with Ghidra or IDA Free for the static side.

If a reader wants radare2’s architecture coverage without memorizing its command syntax: Cutter.

If a reader is learning the field and wants to know what a professional’s tool looks like: IDA Free, even with its x86/x64-only restriction.

FAQ

What is the best free reverse engineering tool?

Ghidra is the best free option for most people. It covers more processor architectures than IDA Free, includes a full decompiler at no cost, and gets regular updates from the NSA’s Ghidra team and a large open-source contributor base.

Is IDA Pro worth paying for?

For professional malware analysis and vulnerability research, yes: its decompiler and processor module library remain the reference point the rest of the field is measured against. For hobbyist or occasional use, Ghidra covers most of the same ground for free.

Can local AI models actually help with reverse engineering now?

Yes, for a growing share of tasks. Mid-sized open-weight models running locally can now handle firmware unpacking and binary triage jobs that used to require a much larger, cloud-hosted model, especially when paired with a decompiler’s clean pseudocode output rather than raw assembly.

What is the difference between a disassembler and a decompiler?

A disassembler converts machine code into assembly instructions, a fairly mechanical, lossless translation. A decompiler goes further and reconstructs higher-level, C-like pseudocode with variables, loops, and function calls, which is far faster to read but involves the tool making educated guesses about the original source structure.

Do reverse engineering tools work on ARM and firmware binaries, not just x86?

Ghidra, Binary Ninja, and radare2 all support ARM, MIPS, and a long list of embedded architectures common in firmware, making them the right choice for router, IoT, or embedded firmware analysis. IDA Free and Hopper are more limited, focused mainly on x86/x64 and Mach-O/ELF respectively.

What reverse engineering tool do most malware analysts use?

IDA Pro remains the most common choice in professional malware-analysis teams, with Ghidra as the standard free alternative and Binary Ninja gaining ground for teams that script heavily. Most analysts keep more than one installed and switch depending on the sample.