Код
int __fastcall RandArtGenerator_Body(int _this, int edx, int type)
{
*(int*)0x4C9248 = (int)(conf_randomartifact);
*(int*)0x4C91C2 = (int)(conf_randomartifact);
char backup_4E224[144+ART_NUM];
memcpy((void*)backup_4E224,(const void*) ((*(int*)0x699538)+0x4E224 ),144+ART_NUM);
int ret = RandArtGenerator(_this,type);
memcpy((void*) ((*(int*)0x699538)+0x4E224 ),(const void*)backup_4E224,144+ART_NUM);
*(int*)0x4C9248 = 144;
*(int*)0x4C91C2 = 144;
return ret;
}
void RandArtGenerator_Hook()
{
WriteHook((void*)0x0047A750, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x0047A78B, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x0047A7C6, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x0047A7FF, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0053, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C013B, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C014A, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0159, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0168, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0177, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0186, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0195, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0AD5, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0AE5, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0AF5, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0B04, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0B13, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0B22, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0B31, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0B40, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0B4F, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C0E06, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C1894, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C18C7, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C18DC, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C18F1, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C1901, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C1B03, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C1BB6, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C1C18, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8EFF, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8F0E, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8F1D, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8F2C, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8F3B, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8F4A, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C8F59, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x004C9C07, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
WriteHook((void*)0x00716B54, (void*)(RandArtGenerator_Body), HOOKTYPE_CALL);
}