blacktop
e4a55a9e55
chore: replace inline regex with precompiled variables for improved performance and readability
2026-04-04 17:42:26 -06:00
blacktop
27e8ec23ad
chore: refactor disassembly code to use new instruction representation
...
- Updated disassembly functions to utilize the new `disassemble.Inst` type instead of `disassemble.Instruction`.
- Modified operand retrieval functions to accommodate the new instruction structure.
- Enhanced error handling and logging for instruction decoding failures.
- Improved JSON output for disassembly to ensure disassembly strings are preserved.
- Refactored various components across the disassembly package, including Mach-O and dyld handling, to streamline instruction processing.
- Added tests to validate the new disassembly behavior and ensure backward compatibility.
2026-03-09 21:13:33 -06:00
blacktop
7fea36dbe3
fix: Add safe operand access helpers to prevent out-of-bounds panics
2026-02-23 11:22:00 -07:00
blacktop
889ae1f792
fix: ipsw dsc xref commad
2026-02-21 13:16:53 -07:00
blacktop
365ad6b4a6
feat(symbolicate): apply kernel symbols and enrich peek disassembly
...
- Add KernelSymbols to Ips and populate during symbolication so the generated IDA script can apply names discovered via
--signatures.
- Make IDA script generation safer: escape Python string literals and sort kernel symbol addresses for deterministic
output.
- Extract symbol names referenced by branch targets from peek bytes and attach them to PanicFrame.PeekSymbols for
display in disassembly. Results are optionally demangled.
- Thread PeekSymbols into formatPeekDisassembly to show branch target names, and add defensive operand checks in
disassembler triage.
2025-12-08 09:56:15 -07:00
blacktop
31bc2009f0
fix: ipsw macho disass not parsing __auth_stubs for symbolication
2025-11-07 20:30:44 -07:00
blacktop
ff6d7dfb20
fix: ipsw macho disass logging issue when disass-ing all functions
2025-11-07 17:15:33 -07:00
blacktop
0c052c6c19
fix(symbols): implement symbol demangling and formatting functions
2025-11-01 14:55:35 -06:00
blacktop
5de6fed777
chore: use go-macho's swift demangle + remove internal one
2025-10-30 09:16:39 -06:00
blacktop
fb02c65d22
chore: various command typos
2025-07-15 16:41:41 -06:00
blacktop
e7127c0198
fix: properly identify stub islands in ParseStubIslands func #758
2025-06-12 22:37:52 -06:00
blacktop
5cbd83a718
fix: symbolicate strings with emojis in ipsw disass cmds
2025-06-02 23:45:21 -06:00
blacktop
7b938f50cb
fix: two edge case errors w/ AI decompiler sym cache + AI cache
2025-05-22 12:06:26 -06:00
blacktop
27eb048378
fix: ipsw dsc disass --cache writing errors (auto try to create in tmp)
2025-05-07 01:37:47 -06:00
blacktop
53a30bd97b
Update macho.go
2025-05-06 23:56:51 -06:00
blacktop
04db347ad7
fix: ipsw macho disass auto symbol cache file create when source is in a read-only folder
2025-05-06 23:46:32 -06:00
blacktop
635803ed8e
chore: add another disass imm load edge case
2025-05-05 00:00:07 -06:00
blacktop
9807779a64
fix: ipsw dsc disass --demangle support + minor fixes
2025-05-04 23:07:06 -06:00
blacktop
0498c1a7e2
feat: add more objc class/meth info to ipsw macho disass output
2025-05-04 19:40:28 -06:00
blacktop
29a60c2dbe
fix: simplify ipsw macho disass's got/auth_ptr parsing
2025-05-04 19:39:51 -06:00
blacktop
b5332dfe6d
fix: add swift-strings to ipsw macho disass
2025-05-04 13:37:13 -06:00
blacktop
a2ccd26880
chore: cleanup macho disass helper code
2025-05-04 13:01:07 -06:00
blacktop
500c5b6faf
fix: allow user supplied lang to be passed into AI prompt template
2025-05-04 10:47:11 -06:00
blacktop
ceca3eb317
fix: ipsw macho disass symtab/exports pre-processing
2025-05-01 17:04:11 -06:00
blacktop
1bf45e29e0
feat: 🆕 add --dec flag to ipsw dsc disass and ipsw macho disass to add AI decompiler 🎉 + a few improvements to disass output
2025-05-01 12:40:47 -06:00
blacktop
6cca9a980d
refactor: replace interface{} with any and simplify loop constructs
2025-03-26 22:53:29 -06:00
blacktop
235fdcd214
chore: add MemoryStatus to ips output + more 309 fields
2024-06-04 15:24:29 -06:00
blacktop
21fc9d62d2
Update disass.go
2023-12-01 11:09:49 -07:00
blacktop
91f8ff726b
fix: improve swift string dumping
2023-09-22 20:28:32 -06:00
blacktop
1eb131755a
Update macho.go
2023-09-21 14:02:27 -06:00
blacktop
c45bc5ba3b
Update macho.go
2023-09-20 20:21:07 -06:00
blacktop
d785090755
Update macho.go
2023-09-20 20:01:45 -06:00
blacktop
4134fdfd67
Update macho.go
2023-09-20 19:49:49 -06:00
blacktop
d24f94a4ec
feat: add ability to dump llvm optimized Swift string structures via ipsw macho info --strings (shoutout to my RE brothers @radare and @mrmacete)
2023-09-20 19:09:32 -06:00
blacktop
d378792a94
Update disass.go
2023-08-03 16:03:27 +12:00
blacktop
7ff4c9f9ec
fix: improve ipsw dsc disass addr labeling
2023-08-03 10:24:56 +12:00
blacktop
c775a8a1ea
feat: support swift demangling in disass cmds and improve got ptr lookup
2023-07-04 19:19:24 +01:00
blacktop
3f3847613e
feat: add 🆕 ipsw kernel mach command to dump mach_traps
2023-05-18 22:11:10 -06:00
blacktop
a0d67c8916
fix: objc parsing for dyld4
2022-12-08 17:25:49 -07:00
blacktop
5c649e1e60
feat: for disass cmds if imm not found in image/macho try as a pointer
2022-09-21 19:10:40 -06:00
blacktop
30be905248
fix: show _objc_msgSend stubs in ipsw dyld disass cmd
2022-09-21 13:46:52 -06:00
blacktop
ebed875d64
feat: add NEW --all-fileset-entries flag to ipsw macho disass to allow for disass-ing ALL kernelcache file-set entries at once
2022-09-12 14:30:29 -06:00
blacktop
91f6a45288
fix: --cache support in ipsw macho disass command. This allows for say using syms from kernel fileset entry in another kexts entry
2022-09-08 23:35:36 -06:00
blacktop
43603aa351
fix: ipsw macho disass command
2022-09-08 22:09:53 -06:00
blacktop and GitHub
f697d66374
feat: support stub islands ( #127 )
2022-07-06 04:07:46 -06:00
blacktop
6324ea932e
fix: various fixes and improvements
2022-06-09 09:47:03 -06:00
blacktop
186be63c22
fix: bug in ipsw dyld disass stub parsing
2022-06-01 12:27:29 -06:00
blacktop
a9e048d896
fix: disass for error case (addr de-sync)
2022-04-22 19:16:46 -06:00
blacktop
4ecfc759d8
fix: dyld a2s cmd but fix 🐛 in stub parsing
2022-02-12 13:55:50 -07:00
blacktop
891fbb01ef
Update disass.go
2022-01-31 22:14:14 -07:00