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 + -
显示快捷键?