下你所需,载你所想!
汇集开发技术源码资料

VEH异常处理CE+VEH硬件断点查找访问该地址的代码

:114.955KB :1 :2019-12-16 15:36:03

部分简介

高级表格1.置数据 (0, 0, #表格常量.文本型, “地址(Address)”)
高级表格1.置数据 (0, 1, #表格常量.文本型, “值(Value)”)
高级表格1.置数据 (0, 2, #表格常量.文本型, “Address”) ' 不可视的内容,仅供内部使用
高级表格1.置列类型 (2, #表格常量.数值型)

.如果真 (调试DLL.是否已注入 () = 假)
.如果 (信息框 (“将会使用 VEH 的调试器附加当前进程,继续吗?”, #是否钮, , ) = #是钮)
.如果 (调试DLL.注入DLL (进程句柄, #vehdebug_x86) = 0)
信息框 (“附加当前进程失败!”, #错误图标, , )
返回 ()
.否则
调试DLL.执行DLL函数 (“SetPtr”, 真, , , GetCurrentProcessId (), 到整数 (&寄存器))

调试地址 = 超级列表框2.取表项数值 (超级列表框2.现行选中项)
调试DLL.执行DLL函数 (“Breakpoint”, 真, 调试状态, , 调试地址, 调试状态)
分组框1.标题 = “下列地址写入了 ” + 取十六进制文本 (调试地址)

.如果真 (高级表格1.取光标行号 () ≠ -1)
BytesAddr = VirtualAlloc (0, 搜索长度, 12288, 64)
.变量循环首 (高级表格1.取选择起始行 (), 高级表格1.取选择终止行 (), 1, n)
ReadProcessMemory (进程句柄, 到整数 (高级表格1.取数据 (n, 2)), BytesAddr, 搜索长度, 0)
添加地址 (“无描述”, 到整数 (高级表格1.取数据 (n, 2)), 搜索类型, 搜索_十六进制, 指针到字节集 (BytesAddr, 搜索长度))
.变量循环尾 ()
VirtualFree (BytesAddr, 0, 32768)

VEH异常处理CE+VEH硬件断点查找访问该地址的代码

热门推荐

相关文章