Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/junron/auto-enum
IDA Plugin to automatically identify and set enums for standard functions
https://github.com/junron/auto-enum
Last synced: 6 days ago
JSON representation
IDA Plugin to automatically identify and set enums for standard functions
- Host: GitHub
- URL: https://github.com/junron/auto-enum
- Owner: junron
- Created: 2024-05-05T13:43:44.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-05-14T09:30:22.000Z (6 months ago)
- Last Synced: 2024-05-14T10:41:53.124Z (6 months ago)
- Language: Python
- Size: 77.1 KB
- Stars: 222
- Watchers: 4
- Forks: 11
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Auto Enum
IDA/Binary Ninja Plugin to automatically identify and set enums for standard functions## Demo
### Linux
https://github.com/junron/auto-enum/assets/26194273/9e43f3ec-0722-4388-951a-b90bec5ab19b
See [`demo.c`](./demo/demo.c) for the source code.
### Windows
https://github.com/junron/auto-enum/assets/26194273/0c6a0f69-b9c0-42ea-b97b-5848b6f7c3a1
See [`demo-win.cpp`](./demo/demo-win.cpp) for the source code.
## Plugin Installation
Copy `plugin/*` to your IDA/Binary Ninja Plugin directory. No dependencies required.
## TIL patching for IDA
Auto-enum can be integrated directly into the type library (TIL) files, allowing for enum loading without the plugin's installation. However, per-call analysis will only be available if the plugin is installed.
To modify the TIL files, run the following commands in the `plugin/enumlib/scripts` directory:
```shell
# Generate for linux
python3 apply_to_til.py --platform linux --overwrite
# Generate for Windows
python3 apply_to_til.py --platform windows --overwrite
```
Note that you must have IDA Pro 9 installed, with `idalib` activated.As the TIL files installed with IDA will be modified, ensure that you have a backup of the `til` directory, as well as sufficient permissions to modify files in the IDA installation directory.