mirror of
https://github.com/yincongcyincong/wechat_chatter.git
synced 2026-07-15 10:26:52 +08:00
30 lines
893 B
Python
30 lines
893 B
Python
import ida_dbg
|
|
import ida_idaapi
|
|
import ida_bytes
|
|
|
|
def dbg_bpt(ea):
|
|
# 获取X22寄存器的值(指向的内存地址)
|
|
x22_value = ida_dbg.get_reg_val("X22")
|
|
|
|
if x22_value != ida_idaapi.BADADDR:
|
|
# 要写入的数据:'1','2','3' 的ASCII码
|
|
patch_data = [ord('1'), ord('2'), ord('3')]
|
|
|
|
# 修改内存
|
|
for i, byte_val in enumerate(patch_data):
|
|
ida_bytes.patch_byte(x22_value + i, byte_val)
|
|
|
|
print(f"[断点 0x{ea:X}] 已将 X22(0x{x22_value:X}) 的前3字节修改为 '123'")
|
|
|
|
# 可选:显示修改前后的内容对比
|
|
original = []
|
|
for i in range(3):
|
|
original.append(ida_bytes.get_byte(x22_value + i))
|
|
|
|
print(f" 修改前: {[hex(b) for b in original]}")
|
|
print(f" 修改后: {[hex(b) for b in patch_data]}")
|
|
|
|
# 返回0继续执行
|
|
return 0
|
|
|
|
dbg_bpt(0x1006DDE30) |