27 lines
818 B
C++
Raw Normal View History

2024-02-07 20:59:24 +08:00
#include"Footy2.h"
bool insertstrcpyhook() {
const BYTE bytes[] = {
0x3B,0xD8,0x72,0x45,0x83,0xF9,0x10,0x72,0x04,0x8B,0x16,0xEB,0x02
};
auto addrs = Util::SearchMemory(bytes, sizeof(bytes), PAGE_EXECUTE, processStartAddress, processStopAddress);
const BYTE funcstart[] = {
0x55,0x8b,0xec,0x53,0x8b,0x5d,0x08
};
bool succ=false;
for (auto addr : addrs) {
addr = reverseFindBytes(funcstart, sizeof(funcstart), addr - 0x100, addr);
if (addr == 0)continue;
HookParam hp;
hp.address = addr;
hp.offset=get_stack(1);
hp.type = USING_STRING;
ConsoleOutput("strcpy %p", addr);
succ|=NewHook(hp, "strcpy");
}
return succ;
}
bool Footy2::attach_function() {
//ガールズ・ブック・メイカー -幸せのリブレット-
return insertstrcpyhook();
}