explaingit

rizinorg/cutter

📈 Trending18,868C++Audience · developerComplexity · 4/5ActiveLicenseSetup · moderate

TLDR

Free graphical tool for reverse engineering compiled software. Disassemble binaries, debug code, inspect memory, and understand how programs work without source code.

Mindmap

mindmap
  root((Cutter))
    What it does
      Disassemble binaries
      Debug programs
      Hex editor
      Code flow graphs
    Key features
      Visual interface
      Python plugins
      Ghidra integration
      Cross-platform
    Use cases
      Malware analysis
      Security research
      Binary debugging
      Learning assembly
    Tech stack
      C++ core
      Qt framework
      Rizin engine
      Python support

Things people build with this

USE CASE 1

Analyze malware samples to understand their behavior and find vulnerabilities without running them.

USE CASE 2

Debug a compiled binary when you don't have access to the original source code.

USE CASE 3

Learn how programs work at the machine level by stepping through assembly code.

USE CASE 4

Reverse engineer proprietary software to understand its logic or recover lost functionality.

Tech stack

C++QtRizinPythonGhidra

Getting it running

Difficulty · moderate Time to first run · 30min

Requires building C++ with Qt dependencies and Rizin/Ghidra integration; pre-built binaries may be available but source compilation is common.

Free and open-source; you can use, modify, and distribute it freely under the terms of the LGPL license.

In plain English

Cutter is a free, open-source graphical desktop application for reverse engineering, the practice of analyzing compiled software to understand how it works, find security vulnerabilities, or recover logic from a program when you don't have the source code. It is powered by rizin, a command-line reverse engineering framework, and wraps it in a visual interface so you can explore binary files without memorizing command-line syntax. The tool gives you a visual disassembler (which converts compiled machine code back into human-readable assembly instructions), a graph view of code flow, a debugger for stepping through programs, and a hex editor for inspecting raw bytes. It supports plugins written in Python or C++, including a native integration with the Ghidra decompiler, Ghidra being a separate reverse engineering tool from the NSA that can convert assembly back into approximate C code, which is much easier to read. You would use Cutter if you are a security researcher analyzing malware, a developer debugging a compiled binary you don't have source for, or a student learning how programs work at the machine level. It runs on Linux, macOS, and Windows. It is written in C++ and built on Qt for its graphical interface.

Copy-paste prompts

Prompt 1
How do I load a binary file into Cutter and start disassembling it to see the assembly code?
Prompt 2
Show me how to use Cutter's debugger to step through a program and inspect register values.
Prompt 3
How do I integrate Ghidra's decompiler into Cutter to convert assembly back into readable C code?
Prompt 4
What's the best way to write a Python plugin for Cutter to automate reverse engineering tasks?
Prompt 5
How do I use Cutter's hex editor to inspect and modify raw bytes in a binary file?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.