https://github.com/paradiseduo/resymbol
A reverse engineering tool to restore stripped symbol table and dump Objective-C class or Swift types for machO file.
https://github.com/paradiseduo/resymbol
Last synced: about 2 months ago
JSON representation
A reverse engineering tool to restore stripped symbol table and dump Objective-C class or Swift types for machO file.
- Host: GitHub
- URL: https://github.com/paradiseduo/resymbol
- Owner: paradiseduo
- Created: 2021-12-22T05:40:20.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-09-28T10:32:14.000Z (almost 2 years ago)
- Last Synced: 2025-03-31T10:22:30.324Z (3 months ago)
- Language: Swift
- Homepage:
- Size: 134 KB
- Stars: 206
- Watchers: 2
- Forks: 23
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# resymbol
A reverse engineering tool to restore stripped symbol table and dump Objective-C class or Swift types for machO file.## class-dump
```
❯ git clone https://github.com/paradiseduo/resymbol.git
❯ cd resymbol
❯ ./build-macOS_x86.sh
❯ ./resymbol
OVERVIEW: resymbol v1.0.0Restore symbol
USAGE: resymbol [--ipa] [--symbol]
ARGUMENTS:
The machO/IPA to restore symbol.OPTIONS:
-i, --ipa If restore symbol ipa, please set this flag.
Default false mean is machO file path.
-s, --symbol Dump Symbol Table.
--version Show the version.
-h, --help Show help information.
```### Example
```
❯ ./resymbol resymbol > result
❯ cat result
struct Methods {
let baseMethod: DataStruct
let elementSize: DataStruct
let elementCount: DataStruct
let methods: Swift.Array?
}struct MethodName {
let name: DataStruct
let methodName: DataStruct
}struct segment_command_64 {
let cmd: Swift.UInt32
let cmdsize: Swift.UInt32
let segname: Swift.Int8
let vmaddr: Swift.UInt64
let vmsize: Swift.UInt64
let fileoff: Swift.UInt64
let filesize: Swift.UInt64
let maxprot: Swift.Int32
let initprot: Swift.Int32
let nsects: Swift.UInt32
let flags: Swift.UInt32
}struct mach_header_64 {
let magic: Swift.UInt32
let cputype: Swift.Int32
let cpusubtype: Swift.Int32
let filetype: Swift.UInt32
let ncmds: Swift.UInt32
let sizeofcmds: Swift.UInt32
let flags: Swift.UInt32
let reserved: Swift.UInt32
}
........
```## restore symbol table
To do...## Thanks
https://github.com/neil-wu/SwiftDump
https://github.com/nygard/class-dump
https://juejin.cn/post/6919034854159941645
## Stargazers over time
[](https://starchart.cc/paradiseduo/resymbol)