Zebracorn
Zebracorn is a lightweight, multi-platform, multi-architecture CPU emulator framework based on a fork of Unicorn.
The API is identical to Unicorn, but Zebracorn offers a few additional features:
- Hooks:
- RDTSC instruction
- Block Translation
- Callback after N blocks executed
- Execution Info:
- Block count executed
- Instruction count executed
- Instruction Meta:
- Tiny Code Generator (TCG) representation of each instruction
- Unicorn AFL integration
These APIs are only supported through the Python bindings.
The Zebracorn engine is primarily made available to support functionality in the zelos binary emulator.
Installation
Zebracorn is distributed as a python pip package. Other bindings are not supported. To install the python package:
$ pip install zebracorn
Python packages are available for Windows, Linux and MacOS.
License
Unicorn and Qemu are released under the GPL license.
Release files for zebracorn 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| zebracorn-0.0.1.tar.gz | 1.6 MB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| zebracorn-0.0.1-py2.py3-none-win_amd64.whl | Python 3, Python 2 | none | Windows x86-64 | Details |
| zebracorn-0.0.1-py2.py3-none-win32.whl | Python 2, Python 3 | none | Windows x86-32 | Details |
| zebracorn-0.0.1-py2.py3-none-manylinux2010_i686.manylinux1_i686.whl | Python 3, Python 2 | none | Linux glibc 2.5+ x86-32, Linux glibc 2.12+ x86-32 | Details |
| zebracorn-0.0.1-py2.py3-none-manylinux1_x86_64.whl | Python 3, Python 2 | none | Linux glibc 2.5+ x86-64 | Details |
| zebracorn-0.0.1-py2.py3-none-manylinux1_x86_64.manylinux2010_x86_64.whl | Python 3, Python 2 | none | Linux glibc 2.5+ x86-64, Linux glibc 2.12+ x86-64 | Details |
| zebracorn-0.0.1-py2.py3-none-manylinux1_i686.whl | Python 2, Python 3 | none | Linux glibc 2.5+ x86-32 | Details |
| zebracorn-0.0.1-py2.py3-none-macosx_10_14_x86_64.whl | Python 2, Python 3 | none | macOS 10.14+ x86-64 | Details |
Total release size: 28.9 MB
Release files / zebracorn-0.0.1.tar.gz
| Download URL | zebracorn-0.0.1.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2ce32c0ce3d81201448452174b8ad4c61149d1c78873007dc78cf52d4d968fcd
|
|
BLAKE2b-256 checksum How to use checksums |
b55166acde99302092d7c75b16ef555428490d1145db5db7ed0535c488bf46b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-win_amd64.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-win_amd64.whl |
|---|---|
| Size | 1.8 MB |
| Tags | Python 2 Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d86729ff25c0c122355c75ef7b315a290efc31d06f91b05481e6474a5a8db32a
|
|
BLAKE2b-256 checksum How to use checksums |
ef276f5f68919c93890c8d292ab3b51afff13e9d1836d9270e550d0a9dd6272f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-win32.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-win32.whl |
|---|---|
| Size | 1.7 MB |
| Tags | Python 2 Python 3 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
9819df4ea2bf3e37742abe2201286db56b702257854c3dbba6e9df25706bd468
|
|
BLAKE2b-256 checksum How to use checksums |
6d6c78fe9d48ff813faf24f756dd6de359d9c6dd8237d7f7072d16bb869ba022
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-manylinux2010_i686.manylinux1_i686.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-manylinux2010_i686.manylinux1_i686.whl |
|---|---|
| Size | 5.0 MB |
| Tags | Linux glibc 2.12+ x86-32 Linux glibc 2.5+ x86-32 Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
dd9edd1f549740c67c5a98d9f9cf99a0244dcbd6d6f78257478e3057cd50d799
|
|
BLAKE2b-256 checksum How to use checksums |
9b5a7ad21ae28d57400ad0e74f0f7aaff65818795085aa4034075b81694b4c9b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-manylinux1_x86_64.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-manylinux1_x86_64.whl |
|---|---|
| Size | 4.0 MB |
| Tags | Linux glibc 2.5+ x86-64 Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
a60c5c2e1791ea0bdc7d84bab51e7e3c329eaf79706be24e38e94952a1a57085
|
|
BLAKE2b-256 checksum How to use checksums |
21e55dfb808becfe9fd10f9f3e1e02f1571c2485935774b4360e0e4f46ff3a73
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-manylinux1_x86_64.manylinux2010_x86_64.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-manylinux1_x86_64.manylinux2010_x86_64.whl |
|---|---|
| Size | 4.0 MB |
| Tags | Linux glibc 2.12+ x86-64 Linux glibc 2.5+ x86-64 Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
cea331e4af922d1d3a3da5e6d1f0f7827b428033ed645ed50587817aaa03eb4b
|
|
BLAKE2b-256 checksum How to use checksums |
37af6e8bb8edddbfa394f7e21ab0d8a1efffb00952d9d780e7744cd82934aa46
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-manylinux1_i686.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-manylinux1_i686.whl |
|---|---|
| Size | 5.0 MB |
| Tags | Linux glibc 2.5+ x86-32 Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
ad42d71fc4d12f794f395ba617c5c0d0e8fea6cc78f5bb8b86e220a0459a8e7f
|
|
BLAKE2b-256 checksum How to use checksums |
c66af5feac9a36b123ce769391cbebf53aa30dac7ed574683c80d0ebf8ab399e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|
Release files / zebracorn-0.0.1-py2.py3-none-macosx_10_14_x86_64.whl
| Download URL | zebracorn-0.0.1-py2.py3-none-macosx_10_14_x86_64.whl |
|---|---|
| Size | 5.9 MB |
| Tags | Python 2 Python 3 macOS 10.14+ x86-64 |
|
SHA-256 checksum How to use checksums |
88936f6708bd33a1926e93346ced1762a078abf85a7a4a0cf6793256ac229fe0
|
|
BLAKE2b-256 checksum How to use checksums |
bdfd03c7a8cfb38808cd4e98182e9104afb9250d37c740fdc2761834c1fe28e2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
|