本帖最后由 crhxm 于 2022-12-6 21:04 编辑
看见群友需要这个,就分析了一下, 刚好取临时目录的地方,直接改就行,原来打算从函数入手,发现不好改,然后这把 取临时目录的地址改了就可以了,补丁和特征码刚好长度一致!无缝衔接。
[Asm] 纯文本查看 复制代码 0040125C | 8D85 6CFEFFFF | lea eax,dword ptr ss:[ebp-194] | ebp-194 :应该是个全局变量地址,后面会重复用到,要修改的就是这里
00401262 | 83C6 04 | add esi,4 | esi:"ssss"
00401265 | 50 | push eax |
00401266 | 68 04010000 | push 104 |
0040126B | FF15 14604000 | call dword ptr ds:[<&GetTempPathA>] | 这里是获取临时目录api,直把它修改掉就行
修改后
[Asm] 纯文本查看 复制代码 0040125C | 8D85 6CFEFFFF | lea eax,dword ptr ss:[ebp-194] | ebp-194 :应该是个全局变量地址,后面会重复用到,要修改的就是这里
00401262 | 83C6 04 | add esi,4 | esi:"ssss"
00401265 | C700 00000000 | mov dword ptr ds:[eax],0 | 设置为0
0040126B | C700 2E5C0000 | mov dword ptr ds:[eax],5C2E | 设置为 .\
00401271 | 85C0 | test eax,eax |
如果真 (通用对话框1. 打开 ()) 编辑框1.内容 = 通用对话框1.文件名 字节集 = 读入文件 (编辑框1.内容 )写到文件 (编辑框1.内容 + “.bak”, 字节集 ) 调试输出 (寻找字节集 (字节集, { 80, 104, 4, 1, 0, 0, 255, 21, 20, 96, 64, 0 }, )) 字节集 = 子字节集替换 (字节集, { 80, 104, 4, 1, 0, 0, 255, 21, 20, 96, 64, 0 }, { 199, 0, 0, 0, 0, 0, 199, 0, 46, 92, 0, 0 }, , )如果真 (写到文件 (编辑框1.内容, 字节集 )) 信息框 (“修改完毕”, 0, , )
修改独立编译输出目录.zip
(982.02 KB, 下载次数: 47)
|