我正在反转一个应用程序,我知道它使用 CRC 检查的事实,所以如果我修改代码,例如挂钩某些东西,它会被检测到。该应用程序使用了一个 DLL,我用我的自定义 DLL 替换了它,我正在尝试绕过 CRC 检查。然而,这些症状让我感到困惑。如果我修改代码并检测到它,就会发生这种情况:

然而,这个地址的代码似乎只是一些无关函数的开始:

我觉得这有点令人费解;我期待类似的东西
if (detected) RaiseException(EXCEPTION_SINGLE_STEP),但它只是在此功能开始时“崩溃”。
- 这意味着什么?
- 我认为我们在第一个屏幕截图中看到的内容暗示必须在代码中的某处故意调用 RaiseException 是否正确?
