b0b5f8442d
Sometimes, the finalizer for an `UcRef` runs so late that the members of the module have already been set to `None`. We need to make sure that we don't depend on anything in the module, or we risk getting a Exception when we try to access the `release_handle` method of `None` (`Uc`). |
||
---|---|---|
.. | ||
prebuilt | ||
unicorn | ||
Makefile | ||
MANIFEST.in | ||
README.TXT | ||
sample_all.sh | ||
sample_arm64.py | ||
sample_arm64eb.py | ||
sample_arm.py | ||
sample_armeb.py | ||
sample_m68k.py | ||
sample_mips.py | ||
sample_network_auditing.py | ||
sample_sparc.py | ||
sample_x86.py | ||
setup.cfg | ||
setup.py | ||
shellcode.py |
This documentation explains how to install the python binding for Unicorn from source. 1. Installing on Linux: $ sudo python setup.py install This will build the core C library, package it with the python bindings, and install it to your system. 2. Installing on Windows: Run the following command in command prompt: C:\> C:\location_to_python\python.exe setup.py install Next, copy all the DLL files from the 'Core engine for Windows' package available on the Unicorn download page and paste it in the path: C:\location_to_python\Lib\site-packages\unicorn\ 3. Sample code This directory contains some sample code to show how to use Unicorn API. - sample_<arch>.py These code show how to access architecture-specific information for each architecture. - shellcode.py This shows how to analyze a Linux shellcode. - sample_network_auditing.py This shows how to analyze & interpret Linux shellcode.