Skip to content
/ idaemu Public

idaemu is an IDA Pro Plugin - use for emulating code in IDA Pro.update for ida pro 7.7

License

Notifications You must be signed in to change notification settings

zengfr/idaemu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

idaemu

idaemu is an IDA Pro Plugin - use for emulating code in IDA Pro.update for ida pro 7.7

about Plugin

contact group

  • qq group: 1群 143824179 (IDA汇编逆向分析)
  • qq group: 2群 26318788 (romhacking)

ida pro plugin for recommends

ida pro idb database files

code Test Example 1

from idaemu import *
from unicorn import *
from unicorn.x86_const import *
from unicorn.arm_const import *
from unicorn.arm64_const import *

def myprint(uc, out, args):
    out.append("hook args: %s" % args)
    return args[0]
aa=[n for n in range(0, 128)]
print(aa)

e = Emu(UC_ARCH_ARM64, UC_MODE_ARM)
e.setTrace(TRACE_CODE|TRACE_DATA_READ|TRACE_DATA_WRITE)
#e.setTrace(TRACE_INTR)
e.setInstSkip(0x01234)
buf_md5_addr = 0x00bfba8
hex2str_addr=0x00b6334

str='40397\/A2PA31473'
str_addr=0x8120000

res_addr=0x8120000+0x1000

fmt="%02hhx"
fmt_addr=0x8120000+0x2000

e.setData(str_addr,str,True)
e.setData(res_addr,aa,True)
e.setData(fmt_addr,fmt,True)

printf_addr = 0x38e6d0 
e.alt(printf_addr, myprint, 4, False)

e.eFunc(buf_md5_addr, None, [str_addr, 16,res_addr])
e.showTrace()
e.showLine()
#e.getAndsetAll('arm64')
e.eFunc(hex2str_addr, None, [res_addr, 16,fmt_addr])
#n_hex2str((__int64)v21, 16LL, "%02hhx");
e.showTrace()
e.showLine()

screenshot

 idaemu plugin Screenshot 1  idaemu plugin Screenshot 2

About

idaemu is an IDA Pro Plugin - use for emulating code in IDA Pro.update for ida pro 7.7

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages