/
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
函数名称: WriteMemoryData 支持加壳程序不允许修改内存
函数功能: 替换内存中的字符
输入参数: memAddress 内存地址 ULONGLONG memAddress
=
0x7C5C
;
hexData 替换数据 std::string hexData
=
"55 ?? 77 88 ?? AA BB"
; 可用通配符
返 回: 替换成功返回首字节(可用于int3断点首字节恢复),否则返回""
调 用: std::string returnStr
=
"
";设置int3断点 returnStr = WriteMemoryData(bp,"
CC");
returnStr
=
WriteMemoryData(memAddress, replaceData);
unicode
编码的内容用
"0000"
截断,Ansi编码的内容用
"00"
截断,replaceData
+
"0000"
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
/
std::string WriteMemoryData(ULONGLONG memAddress, std::string hexData);