unicorn/bindings
Ahmed Samy 02e6c14e12 x86: add MSR API via reg API (#755)
Writing / reading to model specific registers should be as easy as
calling a function, it's a bit stupid to write shell code and run them
just to write/read to a MSR, and even worse, you need more than just a
shellcode to read...

So, add a special register ID called UC_X86_REG_MSR, which should be
passed to uc_reg_write()/uc_reg_read() as the register ID, and then a
data structure which is uc_x86_msr (12 bytes), as the value (always), where:
	Byte	Value		Size
	0	MSR ID		4
	4       MSR val		8
2017-02-24 21:37:19 +08:00
..
dotnet update ChangeLog 2017-01-25 12:00:18 +08:00
go update ChangeLog 2017-01-25 12:00:18 +08:00
haskell rename API uc_mem_free() to uc_free(). see #662 2017-01-10 20:59:14 +08:00
java update ChangeLog 2017-01-25 12:00:18 +08:00
msvc VB6 bindings and dynload update w/ uc_context* and uc_free api,… (#715) 2017-01-16 09:40:56 +08:00
python x86: add MSR API via reg API (#755) 2017-02-24 21:37:19 +08:00
ruby Updated ruby bindings (#744) 2017-01-29 08:13:17 +08:00
vb6 VB6 bindings and dynload update w/ uc_context* and uc_free api,… (#715) 2017-01-16 09:40:56 +08:00
const_generator.py ruby binding added 2016-03-22 12:17:23 +01:00
Makefile python: only preload librt.so on Linux 2016-12-26 15:54:46 +08:00
README update CREDITS.TXT 2017-01-16 09:43:11 +08:00

This directory contains bindings & test code for Python, Java, Go, .NET and MSVC.
See <language>/README or <language>/README.TXT or <language>/README.md for how to install each binding.

The following bindings are contributed by community.

- Java binding: by Chris Eagle.
- Go binding: by Ryan Hileman.
- .NET binding: by Antonio Parata.
- MSVC binding: by Zak Escano
- Ruby binding: by Sascha Schirra
- Haskell binding: by Adrian Herrera.
- VB6 binding: David Zimmer.

More bindings created & maintained externally by community are available as follows.

- UnicornPascal: Delphi/Free Pascal binding (by Stievie).
    https://github.com/stievie/UnicornPascal

- Unicorn-Rs: Rust binding (by Sébastien Duquette)
    https://github.com/ekse/unicorn-rs

- UnicornEngine: Perl binding (by Vikas Naresh Kumar)
    https://metacpan.org/pod/UnicornEngine