patch4.idc
来自「IDA教程」· IDC 代码 · 共 37 行
IDC
37 行
#include "idc.idc"
static main() {
auto StartAddr,EndAddr,cKey,lKey,hKey,Cbuffer,Kbuffer,Counter;
EndAddr = 0x00461F92 - 0x5;
cKey = 0;
for (StartAddr = EndAddr - 0x0BE9C; StartAddr < EndAddr; StartAddr ++){
cKey = cKey + Byte(StartAddr);
}
Kbuffer = Dword(MinEA());
PatchDword(MinEA(),cKey);
lKey=Byte(MinEA());
hKey=Byte(MinEA()+1);
StartAddr = 0x447000;
for (Counter = 0x0BC00 ; Counter !=0 ; Counter --){
lKey=lKey + hKey;
lKey=lKey ^ hKey;
Cbuffer = Byte(StartAddr) ^lKey;
PatchByte(StartAddr,Cbuffer);
StartAddr++;
}
StartAddr = 0x462069+0x16;
PatchByte(MinEA(),lKey);
cKey = Dword (MinEA());
Cbuffer = Dword(StartAddr) - cKey;
PatchDword(StartAddr,Cbuffer);
PatchDword(MinEA(),Kbuffer);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?