Capstone
view release on metacpan or search on metacpan
Capstone.xs view on Meta::CPAN
SV *code
UV address
size_t count
int details
PREINIT:
size_t ret, i;
HV *hash;
cs_insn *insn;
PPCODE:
if(SvTYPE(code) != SVt_PV) {
croak("<code> argument not an array scalar");
}
ret = cs_disasm(*handle, SvPVbyte(code, SvCUR(code)), SvCUR(code), address, count, &insn);
for(i = 0; i < ret; i++) {
hash = newHV();
hv_store(hash, "id", 2, newSVuv(insn[i].id), 0);
Capstone.xs view on Meta::CPAN
cs_free(insn, ret);
}
# Wrapper to cs_version()
SV*
version()
PREINIT:
int major, minor;
PPCODE:
cs_version(&major, &minor);
EXTEND(SP, 2);
XST_mIV(0, major);
XST_mIV(1, minor);
XSRETURN(2);
# Wrapper to cs_support()
int
( run in 1.239 second using v1.01-cache-2.11-cpan-71847e10f99 )