https://github.com/ivision-research/banjo
Android Dex disassembler and Binary Ninja plugin
https://github.com/ivision-research/banjo
android binaryninja-plugin disassembler reverse-engineering
Last synced: 12 months ago
JSON representation
Android Dex disassembler and Binary Ninja plugin
- Host: GitHub
- URL: https://github.com/ivision-research/banjo
- Owner: ivision-research
- License: mit
- Created: 2020-01-29T22:08:15.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-04-25T21:39:03.000Z (almost 2 years ago)
- Last Synced: 2025-03-24T15:47:20.167Z (about 1 year ago)
- Topics: android, binaryninja-plugin, disassembler, reverse-engineering
- Language: Python
- Homepage:
- Size: 327 KB
- Stars: 60
- Watchers: 7
- Forks: 8
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Banjo

_Android Dex disassembler and Binary Ninja plugin_
## Description
Banjo parses Dex files and disassembles them into a smali syntax that is close to [baksmali](https://github.com/JesusFreke/smali)'s.
There are three parts to this project:
- Core disassembler library in [android/](android)
- Binary Ninja plugin in [architecture.py](architecture.py) and [binaryview.py](binaryview.py)
- Standalone disassembler script in [disas_to_files.py](disas_to_files.py)
For more documentation, see the [doc/](doc) directory.
There are still some rough edges. See [GitHub issues](https://github.com/CarveSystems/banjo/issues) for more details.
This project was released at a [ShmooCon 2020 talk](https://github.com/CarveSystems/presentations/tree/master/2020/banjo).

## Installation Instructions
Make sure Binary Ninja is using Python 3.8 or higher and copy banjo to `BN_USER_DIRECTORY/plugins/`. On Linux:
```
cd ~/.binaryninja/plugins/ && git clone https://github.com/carvesystems/banjo.git
```