https://github.com/marirs/smda-rs
SMDA is a minimalist recursive disassembler library
https://github.com/marirs/smda-rs
capstone capstone-project disassembler disassembler-libraries rust rust-crate rust-lang rust-library smda
Last synced: 11 months ago
JSON representation
SMDA is a minimalist recursive disassembler library
- Host: GitHub
- URL: https://github.com/marirs/smda-rs
- Owner: marirs
- License: mit
- Created: 2022-01-16T03:31:56.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2025-07-12T18:36:22.000Z (11 months ago)
- Last Synced: 2025-07-12T20:42:12.850Z (11 months ago)
- Topics: capstone, capstone-project, disassembler, disassembler-libraries, rust, rust-crate, rust-lang, rust-library, smda
- Language: Rust
- Homepage:
- Size: 1.94 MB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SMDA
[](https://github.com/marirs/smda-rs/actions/workflows/linux_x86-64.yml)
[](https://github.com/marirs/smda-rs/actions/workflows/linux_arm7.yml)
[](https://github.com/marirs/smda-rs/actions/workflows/windows.yml)
[](https://github.com/marirs/smda-rs/actions/workflows/macos.yml)
SMDA is a minimalist recursive disassembler library that is
optimized for accurate Control Flow Graph (CFG) recovery
from memory dumps. It is based on Capstone and currently
supports x86/x64 Intel machine code. As input, arbitrary
memory dumps (ideally with known base address) can be processed.
The output is a collection of functions, basic blocks,
and instructions with their respective edges between blocks and
functions (in/out). Optionally, references to the Windows API
can be inferred by using the ApiScout method.
### Requirements
- Rust 1.56+ (edition 2021)
### Reference
This is a [python port](https://github.com/danielplohmann/smda/) whose original authors are: Daniel Plohman and Steffen Enders
---
LICENSE: MIT