Skip to content

Update loader for IDA Pro 9.4 - #19

Open
SaveEditors wants to merge 2 commits into
emoose:masterfrom
SaveEditors:ida-pro-9-4-windows
Open

Update loader for IDA Pro 9.4#19
SaveEditors wants to merge 2 commits into
emoose:masterfrom
SaveEditors:ida-pro-9-4-windows

Conversation

@SaveEditors

@SaveEditors SaveEditors commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Update the loader and build configuration for the final IDA Pro 9.4 SDK.
  • Adopt the IDA 9.4 function APIs while retaining IDA SDK 9.3 compatibility.
  • Improve XEX and XBE handling, including early XEX variants and XEX% identification.
  • Add Windows build-environment validation, exact SDK provenance checks, and automated loader regression testing.
  • Add installation and usage documentation.
  • Enable strict warning checks for first-party code while keeping vendored dependency warnings separate.

This update targets IDA Pro 9.4 on Windows. macOS was not included in compatibility testing.

Verification

  • Builds: final IDA SDK v9.4.0-release, Release x64; strict /W4; IDA SDK 9.3 compatibility build
  • Format coverage: XEX0, XEX1, XEX2, XEX-, XEX?, XEX%, and XBE
  • Structural validation: 44 SHA-256-unique XEX-family inputs; file type, PowerPC processor, segments, loaded data, entry points, functions, imports, names, and database generation
  • Focused regression: 16/16 loader cases
  • Additional XEX2 coverage: 9/9 content-unique cases
  • Command-line parser: 15/15 focused XEX inputs plus 2/2 XEX% inputs
  • Installation: isolated IDA Pro 9.4 loader installation and database generation
  • Code quality: zero first-party warnings in the clean strict build

Closes #13.

Release was published here for testing: https://github.com/SaveEditors/idaxex/releases/tag/ida-pro-9.4-saveeditors-1

Comment thread xex1tool.cpp Outdated
case MAGIC_XEX3F:
exe_type = "XEX3F ('XEX?')";
exe_versions = ">=1434";
exe_versions = ">=1529";

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like 1434 has some xex using XEX?, did those have issues with loader?

@SaveEditors

Copy link
Copy Markdown
Contributor Author

Whoops, that was a leftover from my testing — only had 1529 XEXs on hand and mislabeled it. 1434 loads fine, just the version string was wrong. Reverted to >=1434.

@SaveEditors
SaveEditors marked this pull request as ready for review July 25, 2026 05:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Usage Instruction

2 participants