#include #include bool PatchDOL(u8 * Address, int Size, const u8 * SearchPattern, int SearchSize, const u8 * PatchData, int PatchSize) { u8 * Addr = Address; u8 * Addr_end = Address + Size; while (Addr <= Addr_end - SearchSize) { if (memcmp(Addr, SearchPattern, SearchSize) == 0) { memcpy(Addr, PatchData, PatchSize); return true; } Addr += 4; } return false; }