mirror of
https://github.com/bplaat/MachOView
synced 2026-10-27 03:33:44 +00:00
No description
- C 52.2%
- Objective-C++ 42.3%
- Objective-C 4.2%
- C++ 0.7%
- Shell 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| architecture | ||
| Casks | ||
| English.lproj | ||
| lib | ||
| mach | ||
| mach-o | ||
| MachOView.icon | ||
| machoview.xcodeproj | ||
| otool_disasm | ||
| .gitignore | ||
| AppController.h | ||
| AppController.mm | ||
| ArchiveLayout.h | ||
| ArchiveLayout.mm | ||
| Attach.h | ||
| Attach.mm | ||
| check_vendored_headers.sh | ||
| Common.h | ||
| createdmg.sh | ||
| CRTFootPrints.h | ||
| CRTFootPrints.mm | ||
| DataController.h | ||
| DataController.mm | ||
| DataSources.h | ||
| DataSources.mm | ||
| Document.h | ||
| Document.mm | ||
| DyldInfo.h | ||
| DyldInfo.mm | ||
| Exceptions.h | ||
| Exceptions.mm | ||
| FatLayout.h | ||
| FatLayout.mm | ||
| Info.plist | ||
| Layout.h | ||
| Layout.mm | ||
| libdisasm.a | ||
| LICENSE | ||
| LinkEdit.h | ||
| LinkEdit.mm | ||
| LoadCommands.h | ||
| LoadCommands.mm | ||
| MachOLayout.h | ||
| MachOLayout.mm | ||
| MachOThreadStates.h | ||
| main.mm | ||
| ObjC.h | ||
| ObjC.mm | ||
| PreferenceController.h | ||
| PreferenceController.mm | ||
| Prefix.pch | ||
| README.md | ||
| ReadWrite.h | ||
| ReadWrite.mm | ||
| runtime_smoke.sh | ||
| SectionContents.h | ||
| SectionContents.mm | ||
| THIRD_PARTY_NOTICES.md | ||
| VENDORED_HEADERS.md | ||
MachOView
Hungry Apple icons by Nicholas Boyd (http://loafninja.deviantart.com)
Install with Homebrew
brew tap bplaat/machoview https://github.com/bplaat/MachOView.git
brew install --cask bplaat/machoview/machoview
MachOView requires macOS 26 or later.
todo:
- code sections parsing on demand
- string table
ver 3.0.10000
- Updated for macOS 26 and Xcode 26
- Added current Mach-O load commands, chained fixups, filesets, modern thread states, and relative Objective-C method lists
- Hardened parsing of malformed and truncated binaries
- Added native Apple silicon support and deterministic runtime validation
- Refreshed the interface, application icon, credits, and release packaging
ver 2.4.9200
- Lots of leaks fixed
- Updated disassembler from cctools-855
- Updated llvm disassembler from libLTO OSX10.9
- ARM64 relocations in detail (need to review)
- Added new load commands
ver 2.4.9000
- ARM64
- LC_ENCRYPTION_INFO_64,LC_LINKER_OPTION
- data in code and entries (DICES)
- updated disassembler (cctools-845 and LLVM with enhanced symbol table)
- SDK 10.8 / deploy 10.8
- fix for multithreaded usage of CoreAnimation
ver 2.3.8505
- updated disassembler (LLVM included for testing)
- some GUI improvements (PreferencePanel)
- transitions to
__weakreferences instead of__unsafe_retain - SDK 10.8 / deploy 10.6
- crash fix for disassembling encrypted ARM text sections
ver 2.3.8370
- merge changes from fG!
- do not reopen unclosed binaries
- some new Load Commands
- bugfixes
ver 2.3.8345
- Transition to ARC (but targeting OS X 10.6 for compatibility)
- FAT binary layout in details
- LC_ENCRYPTION_INFO,LC_PREBIND_CKSUM,LC_RPATH,LC_FUNCTION_STARTS
- twolevel swapping for smaller memory usage and better GUI response
- Better ObjectiveC 2 section parsing
ver 2.2.6500
- objC sections
- crash fix for concurrent treeView update
- crash fix for disassembler (could read beyond file data)
- relocs/bindings stored in a shadow NSData for faster access
- improved exception records parser
ver 2.1.5290
- mainly bugfixes (relocInfoInfo, static libraries)
- stop button for cancelling background tasks
- exception safe symbol/section namelookup
- disassembler updated to cctools-806
ver 2.0.5000
- ARM support
- symbolic disassembling of text sections (based on otool)
- split segment info in details
- fast symbol stubs in details
- improved RAW/RVA switch
- typelist is fixed in LSDAs
ver 1.3.4090
- some new file types, section types
- minor fixes
- indirect symbols showed between squared brackets
ver 1.3.4045
- static libraries (binary archives)
- dyld info parsing in details
- base SDK and deploy target detection
- fix indirect symbol issues in compressed Mach-O files
- fix treeLock stability (now belongs to dataController not to the layout)
- display multiply symbols for the same address
ver 1.3.3047
- swapfile based processing to avoid memory overhead for extremely big binaries (note: Ctrl+click toggles swap file usage on the selected node for faster access)
- two-level namespaces in details
- export dylibs (e.g.: libSystem.B.dylib)
- safer symbol/section table access
ver 1.2.2632
- some command binary representation (dyld info, routines, two-level namespace)
- better grouping and ordering of parsed content
- 64bit exception data and relocation fixes
- more stable name unmangling in tooltips
ver 1.2.2200
- tooltip with unmangled name for all the mangled symbol
- better section parsing
- common symbol table for better search (types distinguished by coloured background)
ver 1.2.1842:
- coloured background for special items:
- local/absolute indirect symbol
- scattered relocation
- edit and save function
- RVA/RWA offset uses segments' properties for calculation