Tool
PLASMA
Interactive terminal disassembler, formerly named Reverse, for x86 and x86-64 with partial ARM and MIPS/MIPS64 support, reading ELF, PE and raw binaries. Its visual mode shows functions as indented, colored pseudo-code and lets the analyst reshape the flow by inverting conditional jumps, while a Python API runs scripts for strings, cross-reference call graphs, crypto-constant detection and Keystone assembly. Development stopped in 2019, and the repository has no releases.
- Targets
- Binary
- Category
- Native analysis tools
- Relationship
- Foundation tool
- Sources reviewed
Requirements & limits
- Inactive: the last commit on master, ec7df9b, is dated 2019-03-04, and there are no releases or tags; GitHub does not mark the repository archived. The README still describes the project as in heavy development and warns that the database format may break until structures and type definitions are implemented.
- Requires Python 3.4+, Capstone (install.sh builds 4.0-alpha5 from source), pyelftools, pefile with python3-future, msgpack-python 0.4.6+, c++filt from binutils and a UTF-8, 256-colour terminal; python-qt4 for the memory map and Keystone for asm.py are optional. The Dockerfile builds on Ubuntu 16.04, and these old pins were not tested with current Python or Capstone releases.
- make runs the regression suite, comparing output for the bundled test binaries with expected .rev listings; tests/ holds 96 small compiled test binaries, most next to their C sources. Analysis inputs are the user's own binaries; no binary was analysed and no test was run in this review.
- GPL-3.0; the relocation definitions taken from angr's cle keep their BSD-style license.
About this entry
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · plasma-disassembler/plasma · Revision ec7df9b
- install.sh GitHub · plasma-disassembler/plasma · Revision ec7df9b
- requirements.txt GitHub · plasma-disassembler/plasma · Revision ec7df9b
- Dockerfile GitHub · plasma-disassembler/plasma · Revision ec7df9b
- Makefile GitHub · plasma-disassembler/plasma · Revision ec7df9b
- tests GitHub · plasma-disassembler/plasma · Revision ec7df9b
- plasma/scripts GitHub · plasma-disassembler/plasma · Revision ec7df9b
- plasma/lib/fileformat/relocations/LICENSE GitHub · plasma-disassembler/plasma · Revision ec7df9b
- LICENSE GitHub · plasma-disassembler/plasma · Revision ec7df9b
More in Native binaries
- mobdevim · Tool
- XPEViewer · Tool
- Fermion · Tool
- Ghidrathon · Tool
- diStorm3 · Tool
- ProbeDroid · Tool