Code:
void WriteASM(DWORD dwAddy, DWORD dwASM, int len)
{
unsigned long Protection;
VirtualProtect((void*)dwAddy, len, PAGE_EXECUTE_READWRITE, &Protection);
memcpy((void*)dwAddy, (const void*)dwASM, len);
VirtualProtect((void*)dwAddy, len, Protection, NULL);
}
void HSBypass()
{
DWORD cEHSvc = (long)GetModuleHandle("EHSvc.dll");
if(cEHSvc !=0)
{
WriteASM((DWORD)0x006227E7, (DWORD)(PBYTE)"\x90\xE9", 2);
WriteASM((DWORD)cEHSvc+0x322EF, (DWORD)(PBYTE)"\x31", 1);
WriteASM((DWORD)cEHSvc+0x34D6E, (DWORD)(PBYTE)"\x31", 1);
WriteASM((DWORD)cEHSvc+0x3385F, (DWORD)(PBYTE)"\x31", 1);
WriteASM((DWORD)cEHSvc+0x3639E, (DWORD)(PBYTE)"\x31", 1);
WriteASM((DWORD)cEHSvc+0x4FB9F, (DWORD)(PBYTE)"\xEB", 1);
WriteASM((DWORD)cEHSvc+0x4FC86, (DWORD)(PBYTE)"\xEB", 1);
WriteASM((DWORD)cEHSvc+0x4FD74, (DWORD)(PBYTE)"\xEB", 1);
WriteASM((DWORD)cEHSvc+0x15120, (DWORD)(PBYTE)"\xC3", 1);
WriteASM((DWORD)cEHSvc+0x26997, (DWORD)(PBYTE)"\x90\x90", 2);
WriteASM((DWORD)cEHSvc+0x15620, (DWORD)(PBYTE)"\x90\x90", 2);
WriteASM((DWORD)cEHSvc+0x7225C, (DWORD)(PBYTE)"\xC2\x04\x00", 3);
WriteASM((DWORD)cEHSvc+0x34D6C, (DWORD)(PBYTE)"\x8B\x4D\x90\x90\x90", 5);
}
}
:)