防止对特定的函数下CC断点

防止对特定的函数下CC断点

下面是对 GetDlgItemText下断的检测方法

DWORD WINAPI ThreadProc(LPVOID lpParam)
{
typedef UINT (__stdcall * pGetDlgItemText)(HWND, INT, LPTSTR, INT); //函数指针申明

PBYTE pByte = (PBYTE)(pGetDlgItemText) : :GetDlgItemText;
for ( int i = 0; i < 5; i ++)
{ //检查前五字节
if ( 0 == ( *pByte ++ ^0xcc) )
{
//这里只是简单的异或处理,大家仁者见仁,智者见智咯!!!
MessageBox(NULL, "Find debuger!", NULL, MB_OK);
}
}

return 0;
}

void CAntiCCFuncsDlg : :OnOK()
{
// TODO: Add extra validation here
CreateThread(NULL, 0, ThreadProc, NULL, 0, NULL);

//CDialog::OnOK();
}

你可能感兴趣的:(防止对特定的函数下CC断点)