27 Commits

Author SHA1 Message Date
x86byte fb5efbac62 Fix #10 #11: 32-bit ELF loader + multi-library DT_NEEDED v1.0.0 2026-07-02 13:21:59 +01:00
x86byte 3a33c84c05 Fix #9: implement PE export directory parsing
Fix #9: implement PE export directory parsing
2026-07-02 13:03:10 +01:00
x86byte dbcc09a8ea Implement PE export directory parsing 2026-07-02 13:02:59 +01:00
x86byte 664dafbc43 Fix #8: expose ELF .symtab symbol names to builder
Fix #8: expose ELF .symtab symbol names to CFG builder
2026-07-02 12:58:53 +01:00
x86byte 9146af0402 Add getSymbolName to Binary interface, implement in ELF loader 2026-07-02 12:58:33 +01:00
x86byte 50c9834a39 Expand .gitignore
Expand .gitignore with IDE and OS patterns
2026-06-30 11:16:57 +01:00
x86byte ba2bdb4394 Add common gitignore patterns for IDE and OS files 2026-06-30 11:16:44 +01:00
x86byte 67cceb02f1 Enable PIC
Enable PIC in CMake build
2026-06-30 11:16:16 +01:00
x86byte 08175d1549 Enable position-independent code in CMake 2026-06-30 11:16:00 +01:00
x86byte 08236ff565 Add .editorconfig
Add .editorconfig
2026-06-30 11:15:43 +01:00
x86byte 5505d402b2 Add .editorconfig for consistent editor settings 2026-06-30 11:15:30 +01:00
x86byte 51fada90da Add .gitattributes
Add .gitattributes
2026-06-30 11:14:42 +01:00
x86byte 2580fe7e7d Add .gitattributes with proper line ending handling 2026-06-30 11:14:14 +01:00
x86byte cb4ef0320e Remove obsolete test files with user-local paths 2026-06-30 10:18:33 +01:00
x86byte 6c2dca78ab Function boundary detection: multi-pass prolog, tail-call, .pdata, data pointers
- Extended prolog patterns: MSVC x64 callee-saves, sub rsp >= 0x20, enter
- Tail-call detection: jmp to prolog candidates seeds new functions
- endbr64/endbr32 CET skipping at function starts
- PE .pdata exception table parsing for precise start/end boundaries
- Data-section function pointer scanning (vtables, callbacks)
- PLT stub detection with is_thunk tag
- end_address and is_thunk fields in Function struct and JSON output
- getDataRanges() and getRuntimeFunctions() in Binary interface
- README docs for all new features + research paper reference
2026-06-30 10:04:56 +01:00
x86byte 236e428dce README: add output format docs for --subs-only and --clean modes
- Add mode field to normal JSON output example
- Add --subs-only output section with JSON sample
- Add --clean output section with stack_offset and xrefs sample
- Add --subs-only --clean combined output section
- Update function count 422 -> 414 (empty function removal)
- Include test example files for all modes
2026-06-30 09:41:55 +01:00
x86byte 8565b45c08 fix: skip empty functions, relax jump-threading to handle multi-instr jmp stubs 2026-06-30 09:28:52 +01:00
x86byte 5c31095555 chore: ignore generated test output files 2026-06-30 09:22:03 +01:00
x86byte dd3e5f9a3b remove stale test output artifacts 2026-06-30 09:21:15 +01:00
x86byte 30862455d9 feat: add mode field to JSON output, only emit stack_offset in clean mode 2026-06-30 09:21:05 +01:00
x86byte c4739221b7 fix: unique output filenames per mode (.subs, .clean, .subs.clean) 2026-06-30 09:00:47 +01:00
x86byte d7a02a9df7 readme: document --clean flag 2026-06-29 13:01:13 +01:00
x86byte 0c914f72e6 add --clean flag: jump-threading, dead-block pruning, stack deltas, xrefs 2026-06-29 13:00:53 +01:00
x86byte 815ddc53d4 readme: document --subs-only flag 2026-06-29 12:55:18 +01:00
x86byte a6e86fd2f2 add --subs-only flag for reachable-function-only extraction 2026-06-29 12:53:31 +01:00
x86byte 94cb67893c elf: fix readBytes to map vaddr through segment file offset 2026-06-29 12:25:15 +01:00
x86byte 5fab3a419c cfgrip: standalone CFG extraction tool from PE/ELF binaries 2026-06-29 11:48:20 +01:00