Crysis 3 - A required security module cannot be activated

For Crysis 3 (both the copy integrated with Steam and the standalone on Origin), Special K seems to run amok of the inert, but still present, SecuROM protection of the game. This is the case for both global and local injection.

This is confusing as neither ReShade nor RTSS seem to trigger it.

SecuROM throws the following error on launch:

A required security module cannot be activated.
This program cannot be executed (8007).

Please have a look at http://www.digitalsoftwareservices.com/message.asp?m=module&c=8007 for further, more detailed information.

dxgi.log - https://pastebin.com/rR7GpvFN

Thought to try HDR injection for that game but :sob:

ReShade and RTSS are not reverse engineering tools. SK raises :triangular_flag_on_post:'s because it is undoing some of the DRM’s obfuscation. I wouldn’t know which debug compat hacks need to be activated in SK without actually having a copy of the game in front of me.

This is why Denuvo is better. I pretty much know all of its tricks and bypass them trivially – and, of course, Denuvo pays me to say this. Denuvo + Patreon keeps the lights on.


08/10/2020 01:34:20.284: [DieAntiDbg] tid=17cc () tried to hide itself from debuggers; please attach one and investigate!
08/10/2020 01:34:20.761: [Input Mgr.] [!] > First Call:             NtUserGetCursor_Detour
08/10/2020 01:34:20.768: [DebugUtils] [!] > First Call:  CheckRemoteDebuggerPresent_Detour
08/10/2020 01:34:21.303: [DLL Loader]   ( crysis3.exe                  ) loaded '                                                                                                        Riched20.dll' <  LoadLibraryA> { 'CryGetIMemoryManagerInterface' }
08/10/2020 01:34:21.322: [DLL Loader]   ( crysis3.exe                  ) loaded '                                                                  C:\Users\******\AppData\Local\Temp\drm_dialogs.dll' <  LoadLibraryA> { 'CryGetIMemoryManagerInterface' }

Not sure if it needs to be lied to that there is a debugger attached or that there is not one. Either way, it’s not happy because SK’s doing anti-anti-debug stuff.

Is it possible to mass-disable all such checks and/or obfuscation removals in Special K ? I attempted a combo of using Silent=true everywhere, and disable various APIs but those had no luck.

No, but I can tie this behavior down to the “UseCrashHandler” option.

I can make it turn of anti-debug stuff a game does if you turn my crash handler off.

Hmm, I can’t think of a reason not to do so, right now, so that would be great.

I am still annoyed and baffled how this game can otherwise include SecuROM but in this inert state… God, how annoying.