-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SafeDisc 1 games crash #17
Comments
Figured out the root cause, it looks like the new injection mechanism involving overwriting the entry point from 8fedebb does not work for SafeDisc 1 ICDs. Simply calling |
While initializing from DllMain is unsafe due to loader lock, as far as I can tell, there's literally no other way to do this for ICD specifically. dplayerx.dll seems to be loaded before ICD entry point (from import table?) and it needs Secdrv driver in its own DllMain meaning that the shim must be initialized by this point or dplayerx.dll will crash. |
My memory aches trying to remember what rule of thumb I must have read in the past, but you might want to take a notice at: |
I have a solution in mind for this; I will work on it once I have completed some other obligations. |
It appears that none of SafeDisc 1 games work for me, ICD always crashes in dplayerx.dll. Tried the following games:
Running Windows 10. Using Alcohol 120% to mount Redump disc images. Not an issue with the game code since cracked exe produced by UnSafeDisc works fine. The games do work if Alcohol virtual drive is passed through to Windows XP VM.
Logs:
LEGORacers.exe_SafeDiscShim.log
LEGORacers.ICD_SafeDiscShim.log
Windows event log entries:
The text was updated successfully, but these errors were encountered: