|
miasm
Reverse engineering framework
|
#define EXCEPT_UNK_EIP
Definition: vm_mngr.h:181
PyObject * get_memory_write(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:457
p
Definition: test_types.py:465
bn_t bignum_rshift(bn_t a, int nbits)
Definition: bn.c:416
#define PyGetInt_uint16_t(item, value)
Definition: compat_py23.h:193
int vm_read_mem(vm_mngr_t *vm_mngr, uint64_t addr, char **buffer_ptr, size_t size)
Definition: vm_mngr.c:514
struct memory_page_node * get_memory_page_from_address(vm_mngr_t *vm_mngr, uint64_t ad, int raise_exception)
Definition: vm_mngr.c:139
#define MOD_DEF(ob, name, doc, methods)
Definition: compat_py23.h:218
void reset_code_bloc_pool(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:776
#define PyGetInt_uint32_t(item, value)
Definition: compat_py23.h:194
PyObject * vm_set_exception(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:538
void dump_code_bloc_pool(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:724
PyObject * vm_get_u16(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:295
PyObject * vm_reset_code_bloc_pool(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:713
PyObject * vm_get_u64(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:350
PyObject * vm_set_u64(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:457
PyObject * vm_reset_memory_access(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:592
Definition: vm_mngr.h:145
PyObject * vm_remove_memory_breakpoint(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:519
void add_memory_breakpoint(vm_mngr_t *vm_mngr, uint64_t ad, uint64_t size, unsigned int access)
Definition: vm_mngr.c:954
bn_t bignum_or(bn_t a, bn_t b)
Definition: bn.c:531
#define RET_MODULE
Definition: compat_py23.h:221
void reset_memory_page_pool(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:761
i
Definition: modint.py:70
PyObject * bn_to_PyLong(bn_t bn)
Definition: vm_mngr_py.c:1064
size_t size
Definition: vm_mngr.h:93
void reset_memory_access(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:790
vm_mngr_t vm_mngr
Definition: vm_mngr_py.h:11
uint32_t set_endian32(vm_mngr_t *vm_mngr, uint32_t val)
Definition: vm_mngr.c:90
PyObject * vm_get_memory_write(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:781
bn_t PyLong_to_bn(PyObject *py_long)
Definition: vm_mngr_py.c:1034
PyObject * vm_add_code_bloc(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:722
int vm_write_mem(vm_mngr_t *vm_mngr, uint64_t addr, char *buffer, size_t size)
Definition: vm_mngr.c:594
PyObject * get_memory_read(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:452
ad_start
Definition: shellcode.py:115
#define EXCEPT_CODE_AUTOMOD
Definition: vm_mngr.h:169
PyObject * vm_get_mem_access(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:214
void * ad_hp
Definition: vm_mngr.h:95
uint64_t exception_flags
Definition: vm_mngr.h:121
ad
Definition: full.py:147
#define PyGetStr(dest, name)
Definition: compat_py23.h:181
void check_invalid_code_blocs(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:375
PyObject * vm_set_u16(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:403
void dump_memory_breakpoint_pool(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:940
PyObject * vm_reset_memory_breakpoint(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:584
void check_memory_breakpoint(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:404
PyObject * vm_get_memory_read(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:773
PyObject * vm_is_mapped(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:756
def ret(arg1)
Definition: sem.py:1796
#define BREAK_SIGALARM
Definition: vm_mngr.h:83
PyObject * vm_get_u32(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:322
PyObject * py_add_mem_read(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:599
PyObject * vm_set_u32(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:430
void add_mem_read(vm_mngr_t *vm_mngr, uint64_t addr, uint64_t size)
Definition: vm_mngr.c:365
struct memory_page_list_head memory_page_pool
value
Definition: export_llvm.py:69
PyObject * vm_reset_memory_page_pool(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:705
void init_code_bloc_pool(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:743
bn_t bignum_from_uint64(uint64_t i)
Definition: bn.c:82
struct code_bloc_list_head code_bloc_pool
int is_mapped(vm_mngr_t *vm_mngr, uint64_t addr, size_t size)
Definition: vm_mngr.c:632
PyObject_HEAD PyObject * vmmngr
Definition: vm_mngr_py.h:10
MOD_INIT(VmMngr)
Definition: vm_mngr_py.c:1015
def j(arg1)
Definition: sem.py:156
void remove_memory_breakpoint(vm_mngr_t *vm_mngr, uint64_t ad, unsigned int access)
Definition: vm_mngr.c:970
PyObject * vm_init_code_bloc_pool(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:568
type
Definition: full.py:35
name
Definition: export_llvm.py:70
Definition: vm_mngr_py.h:8
void add_memory_page(vm_mngr_t *vm_mngr, struct memory_page_node *mpn_a)
Definition: vm_mngr.c:836
PyObject * vm_remove_memory_page(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:132
PyObject * vm_dump_code_bloc_pool(VmMngr *self)
Definition: vm_mngr_py.c:746
PyObject * vm_dump(PyObject *self)
Definition: vm_mngr_py.c:649
int is_mpn_in_tab(vm_mngr_t *vm_mngr, struct memory_page_node *mpn_a)
Definition: vm_mngr.c:811
bn_t bignum_from_int(DTYPE_TMP i)
Definition: bn.c:54
void reset_memory_breakpoint(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:796
#define PyGetInt_uint64_t(item, value)
Definition: compat_py23.h:195
stderr
Definition: dse_crackme.py:320
void add_mem_write(vm_mngr_t *vm_mngr, uint64_t addr, uint64_t size)
Definition: vm_mngr.c:370
struct memory_page_node * create_memory_page_node(uint64_t ad, size_t size, unsigned int access, const char *name)
Definition: vm_mngr.c:664
PyObject * _vm_get_exception(unsigned int xcpt)
Definition: vm_mngr_py.c:42
uint16_t set_endian16(vm_mngr_t *vm_mngr, uint16_t val)
Definition: vm_mngr.c:82
ad_stop
Definition: shellcode.py:116
PyObject * vm_add_memory_breakpoint(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:488
bn_t bignum_lshift(bn_t a, int nbits)
Definition: bn.c:387
#define EXCEPT_UNK_MEM_AD
Definition: vm_mngr.h:179
args
Definition: shellcode.py:26
char * dump(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:892
PyObject * vm_get_mem(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:234
char vm_mngr_mod_name[]
Definition: vm_mngr_py.c:1012
char vm_mngr_mod_docs[]
Definition: vm_mngr_py.c:1011
#define PyGetInt_uint8_t(item, value)
Definition: compat_py23.h:192
bn_t PyLong_to_bn(PyObject *py_long)
Definition: vm_mngr_py.c:1034
uint64_t ad_code
Definition: vm_mngr.h:148
PyObject * vm_set_u8(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:378
PyObject * vm_check_memory_breakpoint(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:642
PyObject * vm_init_memory_page_pool(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:561
PyObject * vm_set_mem_access(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:150
#define PyGetInt_size_t(item, value)
Definition: compat_py23.h:190
uint64_t bignum_to_uint64(bn_t n)
Definition: bn.c:134
bn_t bignum_mask(bn_t src, int bits)
Definition: bn.c:699
string result
Definition: depgraph.py:99
void init_memory_breakpoint(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:755
PyObject * vm_get_all_memory(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:668
PyObject * py_add_mem_write(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:617
addr
Definition: dis_binary.py:24
VmMngr * global_vmmngr
Definition: vm_mngr_py.c:40
PyObject * vm_add_memory_page(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:76
PyObject * vm_set_mem(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:176
void init_memory_page_pool(vm_mngr_t *vm_mngr)
Definition: vm_mngr.c:736
Definition: vm_mngr.h:110
struct code_bloc_node * create_code_bloc_node(uint64_t ad_start, uint64_t ad_stop)
Definition: vm_mngr.c:698
uint64_t ad_start
Definition: vm_mngr.h:146
void remove_memory_page(vm_mngr_t *vm_mngr, uint64_t ad)
Definition: vm_mngr.c:865
PyObject * vm_get_u8(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:268
uint64_t ad_stop
Definition: vm_mngr.h:147
uint64_t set_endian64(vm_mngr_t *vm_mngr, uint64_t val)
Definition: vm_mngr.c:98
PyObject * set_alarm(VmMngr *self)
Definition: vm_mngr_py.c:65
PyObject * vm_get_exception(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:553
PyObject * vm_dump_memory_breakpoint(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:660
PyObject * vm_check_invalid_code_blocs(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:635
PyObject * bn_to_PyLong(bn_t bn)
Definition: vm_mngr_py.c:1064
PyObject * vm_init_memory_breakpoint(VmMngr *self, PyObject *args)
Definition: vm_mngr_py.c:576
#define RAISE(errtype, msg)
Definition: vm_mngr_py.c:35
uint64_t access
Definition: vm_mngr.h:94
#define BN_BYTE_SIZE
Definition: bn.h:43
void add_code_bloc(vm_mngr_t *vm_mngr, struct code_bloc_node *cbp)
Definition: vm_mngr.c:715
size
Definition: shellcode.py:32
exception_flags
Definition: regs.py:7
uint64_t ad
Definition: vm_mngr.h:92