v4.0.0-beta2 - 2026-08-05
- Loaded types are now visible in a dedicated dialog.
- Implemented patching and general editing in UI.
- Detect Tiling WMs on Linux in Debug builds and lock main window's size.
- Improved cursor movement behavior in listing and graph views.
- Added load file from command line support.
- Added
SELECT_ALLaction, reworked Edit menu. - Added
Reanalyzeaction. - Added
UNDEFINE,CODE,DATAandCreate functionmenu actions. - Adjusted rendering mode ordering.
- Updated welcome page.
- Cleaned UI.
- Smoother UX.
- Bumped QHexView to v5.1.3.
- Fixed: Missing CTRL+Enter in comments dialog (#8).
- Fixed: Don't show reference dialog when no xrefs are available, log instead.
- Fixed: Don't use native dialogs for
QFileDialog::getExistingDirectory. - Fixed:
LoaderDialogpremature deallocation whenRD_ACCEPT_FAIL_WRITEhappens. - Fixed: Debug builds when ASAN or LSAN are not enabled.
- Fixed:
SplitWidgetstability (dangling pointers) and better UX. - Fixed: Missing highlighting in
EXPERIMENTALflagged analyzers. - Fixed: Detach some actions from
QMainWindow. - Fixed: Don't store
RDFunctioninFunctionsModel. - Fixed: Autojump on EP only after first analysis.
- Fixed: Give detached dialogs a valid size.
- Fixed: Stale
RDGraphinGraphViewafter mutations. - Fixed: Manual addressing.
- Implemented
rd_version_parseAPI. - Implemented
rd_patch_instructionAPI. - Implemented
rd_make_codeAPI. - Implemented
rd_get_flagsAPI. - Implemented
rd_encode_instructionandrd_encode_instruction_toAPIs. - Implemented
rd_typedef_is_builtinAPI. - Implemented
RDLexertype. - Implemented
RDScratchBuffertype. - Implemented general byte level edit and patching capabilities.
- Added
bool,function,isizeandusizebuiltin types. - Added
rolandrorAPI set. - Added
rd_read_strAPI. - Added
rd_resolve_nameAPI. - Added
PLACEHOLDERconfidence level. - Added
RECONCILEstep in worker. - Notify reconciling to core peers.
- Improved
RDFunctioncreation, handling and internal storage. - Improved
noretdetection and propagation. - Reworked logging APIs.
- Reworked
RDTypeandRDTypeDeffor future proofing and stability. - Implemented Encoding APIs.
- Renderer now uses grouping instead of character matching.
- Redesigned hex dump behavior and alignment.
- Functions with unknown return type and/or arguments are now allowed.
- Expanded surface APIs.
- Prefer system-wide
minizif available. - BREAKING: Reworked internal
FLAGSlayout. - BREAKING: Removed
int_sizefield inRDProcessorPlugin. - BREAKING: Removed
unitfield inRDSegment. - BREAKING: Simplified and cleaned up SQLite schema.
- BREAKING: Removed RDListing type, rendering is now direct.
- BREAKING: Projects now validate against core version.
- Fixed: Crash in binary loader (#4).
- Fixed:
USERconfidence inrd_i_set_type. - Fixed: Restore
min_stringon project load. - Fixed: Autorenamer confidence propagation.
- Fixed: Analyzer plugins sorting.
- Fixed: Ignore empty comments.
- Fixed: String detection.
- PE loader now handles Load Config Directory.
- Implemented Rich Header parsing and classification for PE files.
- Improved PE classification logic.
- Fixed: MZ loader now respects x86 decode/emulate hooks.
- Implemented x86 encoder.
- Improved x86 logging.
- Fixed: x86 instruction
hltnow propagates 'noret'.
- Implemented MSVC RTTI plugin (experimental).
- Moved VB decompiler from PE loader to "compiler" analyzer plugin.
- BREAKING: Reworked and simplified definition format.
- Reorganized VB types and dependencies.
- Added PE_LOADER_CONFIG_DIRECTORY struct.
- Added MSVC RTTI types.
- Lowered CMake requirements to 3.20.
- Updated unit tests, stricter requirements.
- Added GCC 11 support.