Cutter¶
Cutter is a Qt and C++ GUI for Rizin. Its goal is to provide an advanced, customizable and FOSS reverse-engineering platform while keeping the user experience in mind. Cutter was created by reverse engineers for reverse engineers.

Getting Cutter¶
Cutter is available for all major platforms. You can download the latest release from here.
macOS: Download the
.dmg
file and install it.Windows: Download the
.zip
archive and extract it.Linux: Download the
.AppImage
file and make it executable by doing:
chmod +x Cutter*.AppImage
Building from Sources¶
To build Cutter on your machine, please follow this guide: Building from Source.
Need help?¶
You can contact the Cutter developers and community on:
Telegram: https://t.me/cutter_re
#cutter on https://web.libera.chat
Twitter: https://twitter.com/cutter_re
Want to help the project?¶
If you want to contribute to Cutter, take a look at our Contribution Guidelines to learn how you can help improve the project!
Contents:
- User Documentation
- Contributing to Cutter
- Developer documentation
- Building
- Plugins
- API Reference
- Common
- AddressableFilterProxyModel
- AddressableItemModel
- AddressableItemModelI
- AnalysisTask
- AsyncTask
- AsyncTaskManager
- BasicBlockHighlighter
- BasicInstructionHighlighter
- CachedFontMetrics
- ColorThemeWorker
- Colors
- CommandTask
- Configuration
- CutterSeekable
- Decompiler
- DecompilerHighlighter
- DirectionalComboBox
- DisassemblyTextBlockUserData
- FallbackSyntaxHighlighter
- FunctionsTask
- HighDpiPixmap
- Highlighter
- IOModesController
- LazySegmentTreeBase
- LinkedListPool
- LinkedListPool::List
- LinkedListPool::ListIterator
- MdHighlighter
- MinMaxAccumulateTree
- PointSetMinTree
- PointSetSegmentTree
- ProgressIndicator
- RangeAssignMaxTree
- RefreshDeferrer
- RefreshDeferrerAccumulator
- ReplacingRefreshDeferrerAccumulator
- RichTextPainter
- RizinCmdTask
- RizinFunctionTask
- RizinTask
- RunScriptTask
- SegmentTreeBase
- StringsTask
- SvgIconEngine
- TempConfig
- UpdateWorker
- BasicBlockHighlighter::BasicBlock
- BasicInstruction
- CommandDescription
- CutterInterfaceTheme
- Cutter::CutterLayout
- FallbackSyntaxHighlighter::HighlightingRule
- Highlighter::HighlightingRule
- InitialOptions
- LinkedListPool::Item
- MdHighlighter::HighlightingRule
- Metrics
- Metrics< int >
- Metrics< qreal >
- RichTextPainter::CustomRichText_t
- mmio_lookup_context
- qhelpers::SizePolicyMinMax
- Core
- Basefind
- CutterCore
- CutterCore::SeekReturn
- CutterJson
- CutterJsonOwner
- CutterJson::iterator
- CutterPVector
- CutterPVector::iterator
- CutterRzIter
- CutterRzList
- CutterRzList::iterator
- FreeBinder
- MainWindow
- RzCoreLocked
- AddrRefs
- AnalysisBaseClassDescription
- AnalysisMethodDescription
- AnalysisVTableDescription
- Arena
- BasefindCoreStatusDescription
- BasefindResultDescription
- BinClassBaseClassDescription
- BinClassDescription
- BinClassFieldDescription
- BinClassMethodDescription
- BlockDescription
- BlockStatistics
- BreakpointDescription
- Chunk
- CommentDescription
- DisassemblyLine
- EntrypointDescription
- ExportDescription
- FlagDescription
- FlagspaceDescription
- FlirtDescription
- FunctionDescription
- GlobalDescription
- HeaderDescription
- ImportDescription
- MemoryMapDescription
- ProcessDescription
- RefDescription
- RegisterRef
- RegisterRefValueDescription
- RelocDescription
- ResourcesDescription
- RzAsmPluginDescription
- RzBinPluginDescription
- RzCorePluginDescription
- RzIOPluginDescription
- SearchDescription
- SectionDescription
- SegmentDescription
- StringDescription
- SymbolDescription
- ThreadDescription
- TypeDescription
- VTableDescription
- VariableDescription
- XrefDescription
- Dialogs
- AboutDialog
- ArenaInfoDialog
- AsyncTaskDialog
- AttachProcDialog
- Base64EnDecodedWriteDialog
- BinsModel
- BreakpointsDialog
- CommentsDialog
- DuplicateFromOffsetDialog
- EditFunctionDialog
- EditInstructionDialog
- EditMethodDialog
- EditStringDialog
- EditVariablesDialog
- FlagDialog
- GlibcHeapBinsDialog
- GlibcHeapInfoDialog
- GlobalVariableDialog
- HexdumpRangeDialog
- IncrementDecrementDialog
- InitialOptionsDialog
- LayoutManager
- MapFileDialog
- MultitypeFileSaveDialog
- NativeDebugDialog
- NewFileDialog
- ProcessBeingAnalysedProxyModel
- ProcessModel
- ProcessProxyModel
- RemoteDebugDialog
- RizinPluginsDialog
- RizinTaskDialog
- SetToDataDialog
- TypesInteractionDialog
- VersionInfoDialog
- WelcomeDialog
- XrefModel
- XrefsDialog
- DbgBackend
- InitialOptionsDialog::AnalysisCommands
- MultitypeFileSaveDialog::TypeDescription
- Menus
- Plugins
- Src
- Widgets
- AbstractAddrDock
- AbstractData
- AddrDockScene
- AddressableDockWidget
- AddressableItemList
- AnalysisClassesModel
- BacktraceWidget
- BinClassesModel
- BoolTogggleDelegate
- BreakpointModel
- BreakpointProxyModel
- BreakpointWidget
- BufferData
- CallGraphView
- CallGraphWidget
- ClassesModel
- ClassesSortFilterProxyModel
- ClassesWidget
- ColorOptionDelegate
- ColorPicker
- ColorPickerHelpers::AlphaChannelBar
- ColorPickerHelpers::ColorPickArea
- ColorPickerHelpers::ColorPickWidgetAbstract
- ColorPickerHelpers::ColorPickerWidget
- ColorPickerHelpers::ColorShowWidget
- ColorPickerHelpers::ColorValueBar
- ColorSettingsModel
- ColorThemeComboBox
- ColorThemeListView
- ComboQuickFilterView
- CommentsModel
- CommentsProxyModel
- CommentsWidget
- ConsoleWidget
- CutterDockWidget
- CutterGraphView
- CutterTreeView
- CutterTreeWidget
- Dashboard
- DebugActions
- DecompilerWidget
- DisassemblerGraphView
- DisassemblyLeftPanel
- DisassemblyScrollArea
- DisassemblyTextEdit
- DisassemblyWidget
- EntrypointWidget
- ExportsModel
- ExportsProxyModel
- ExportsWidget
- FlagsModel
- FlagsSortFilterProxyModel
- FlagsWidget
- FlirtModel
- FlirtProxyModel
- FlirtWidget
- FunctionModel
- FunctionSortFilterProxyModel
- FunctionsWidget
- GenericRizinGraphView
- GlibcHeapModel
- GlibcHeapWidget
- GlobalsModel
- GlobalsProxyModel
- GlobalsWidget
- GraphGridLayout
- GraphHorizontalAdapter
- GraphLayout
- GraphView
- GraphWidget
- GraphvizLayout
- HeadersModel
- HeadersProxyModel
- HeadersWidget
- HeapBinsGraphView
- HeapDockWidget
- HexSelection
- HexWidget
- HexdumpWidget
- ImportsModel
- ImportsProxyModel
- ImportsWidget
- ListDockWidget
- MemoryData
- MemoryDockWidget
- MemoryMapModel
- MemoryMapWidget
- MemoryProxyModel
- Omnibar
- OverviewView
- OverviewWidget
- ProcessesFilterModel
- ProcessesWidget
- QuickFilterView
- RawAddrDock
- RegisterRefModel
- RegisterRefProxyModel
- RegisterRefsWidget
- RegistersWidget
- RelocsModel
- RelocsProxyModel
- RelocsWidget
- ResourcesModel
- ResourcesWidget
- RizinGraphWidget
- SdbWidget
- SearchModel
- SearchSortFilterProxyModel
- SearchWidget
- SectionsModel
- SectionsProxyModel
- SectionsWidget
- SegmentsModel
- SegmentsProxyModel
- SegmentsWidget
- SimpleTextGraphView
- StackModel
- StackWidget
- StringsModel
- StringsProxyModel
- StringsWidget
- SymbolsModel
- SymbolsProxyModel
- SymbolsWidget
- ThreadModel
- ThreadsWidget
- TypesModel
- TypesSortFilterProxyModel
- TypesWidget
- VTableModel
- VTableSortFilterProxyModel
- VTablesWidget
- VirtualAddrDock
- VisualNavbar
- AnalysisClassesModel::Attribute
- BasicCursor
- ColorOption
- CommentGroup
- DisassemblerGraphView::DisassemblyBlock
- DisassemblerGraphView::Instr
- DisassemblerGraphView::Text
- DisassemblerGraphView::Token
- DisassemblyLeftPanel::Arrow
- GraphGridLayout::GridBlock
- GraphGridLayout::GridEdge
- GraphGridLayout::LayoutState
- GraphGridLayout::Point
- GraphLayout::GraphBlock
- GraphLayout::GraphEdge
- GraphLayout::LayoutConfig
- GraphView::EdgeConfiguration
- HeapBinsGraphView::GraphHeapChunk
- HexCursor
- HexWidget::Selection
- OptionInfo
- RegisterRefDescription
- SimpleTextGraphView::BlockContent
- StackModel::Item
- VisualNavbar::XToAddress
- Common