You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
714 B
49 lines
714 B
4 years ago
|
# The Bitdefender disassembler Python wrapper
|
||
|
|
||
|
## Build
|
||
|
|
||
|
Building and installing is easy:
|
||
|
|
||
|
```bash
|
||
|
python3 setup.py build
|
||
|
python3 setup.py install
|
||
|
```
|
||
|
|
||
|
## Usage
|
||
|
|
||
4 years ago
|
Use it by importing the pybddisasm.disasm module:
|
||
4 years ago
|
|
||
|
```python
|
||
4 years ago
|
from pybddisasm.bddisasm import *
|
||
4 years ago
|
|
||
|
instr = nd_decode_ex2(buff, arch, arch, arch, vendor, current_rip)
|
||
|
```
|
||
|
|
||
4 years ago
|
## Example
|
||
|
|
||
|
```python
|
||
|
from pybddisasm.bddisasm import *
|
||
|
from sys import *
|
||
|
|
||
|
buff = b"\x55\x48\x8b\x05\xb8\x13\x00\x00"
|
||
|
offset = 0
|
||
|
|
||
|
while offset < getsizeof(buff):
|
||
|
instr = nd_decode_ex2(buff[offset:], 64, 64, 64)
|
||
|
|
||
|
if instr is None:
|
||
|
break
|
||
|
|
||
|
print(instr.Text)
|
||
|
|
||
|
offset += instr.Length
|
||
|
```
|
||
|
|
||
4 years ago
|
## Pip
|
||
|
|
||
|
Use pip to install the package:
|
||
|
|
||
|
```bash
|
||
|
pip install pybddisasm
|
||
|
```
|