feat(scanner): add data-section AOB scanning#89
Conversation
Whole-process readable-region sweep (the data-section sibling of scan_executable_regions): reaches .rdata/.data, C++ vtables, and RTTI type descriptors the executable-only sweep cannot. Adds a ScannerKind selector so resolve_cascade can opt into the readable sweep (default stays Executable, so existing call sites recompile unchanged). Skips guard/no-access/uncommitted pages and excludes the compiled pattern's own buffer from self-matching.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (7)
📝 WalkthroughWalkthroughThis PR extends DetourModKit's AOB pattern scanner with support for searching readable (data) memory regions. It introduces a ChangesReadable Memory Region Scanning
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary by CodeRabbit
New Features
scan_readable_regions()to scan committed readable memory regions (e.g.,.rdata,.data), complementing existing executable region scanning.ScannerKindenum to control whether pattern candidates resolve via executable or readable scanning.resolve_cascade()to accept optionalScannerKindparameter (defaults to executable).Documentation