62 lines
1.7 KiB
C
62 lines
1.7 KiB
C
void patch_aio(void * kbase) {
|
|
{
|
|
size_t off = 0x9f141;
|
|
u8 patch[] = {0xeb, 0x48};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f183;
|
|
memset(kbase + off, 0x90, 8);
|
|
}
|
|
{
|
|
size_t off = 0x9f18b;
|
|
u8 patch[] = {41, 83, 0xbf, 0xa0, 0x04, 0x00, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f199;
|
|
u8 patch[] = {0x49, 0x8b, 0x87, 0xd0, 0x04, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f1a6;
|
|
u8 patch[] = {0x49, 0x8b, 0xb7, 0xb0, 0x04, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f1be;
|
|
u8 patch[] = {0x49, 0x8b, 0x87, 0x40, 0x05, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f1cb;
|
|
u8 patch[] = {0x49, 0x8b, 0xb7, 0x20, 0x05, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f1e3;
|
|
u8 patch[] = {0x49, 0x8d, 0xbf, 0xc0, 0x00, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f1ef;
|
|
u8 patch[] = {0x49, 0x8d, 0xbf, 0xe0, 0x00, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f202;
|
|
u8 patch[] = {0x49, 0x8d, 0xbf, 0x00, 0x01, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f20e;
|
|
u8 patch[] = {0x49, 0x8d, 0xbf, 0x20, 0x01, 0x00, 0x00};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
{
|
|
size_t off = 0x9f21f;
|
|
u8 patch[] = {0x49, 0x8b, 0xff};
|
|
memcpy(kbase + off, patch, sizeof patch);
|
|
}
|
|
}
|