SafeDisc 2 Cleaner
(c) bOOls eYe, waste_me & r!sc
Readme file
"It's just one of those days..."
Safedisc 2 Cleaner is a tool to unwrap a SafeDisc/SafeCast 2 protected file.
It is based on r!sc's unSafedisc tools.
Supported Safedisc versions:
- v2.05.30 EXE & DLL
- v2.10.30 EXE
- v2.30.30, v2.30.31 & v2.30.33 EXE
- v2.40.10 & v2.40.11 EXE
- v2.51.20 & v2.51.21 EXE
- v2.60.52 EXE "No-CD Loader"
Supported Safecast versions:
- v2.02.40 EXE
- v2.11.10, v2.11.20, v2.11.40 & v2.11.60 EXE
- v2.11.10 DLL
Maybe some other revision numbers work too.
Notes:
- Only SD 2.05.30 and SC 2.11.10 protected DLL's are supported. Probably 2.40.1x protected DLL's (Il-2 Sturmovik has got one) will be supported in a future version.
Maybe some other versions will be added later, but since I have never discovered protected DLL's with other versions, they don't need supported yet :)
- You don't need Safedisc Analyser anymore as the used Safedisc version is automatically detected.
Coded and tested on Win 98 SE, it should work on Win95/98/ME/NT/2000/XP too.
Tested games
- Age Of Wonders 2 v1.1 US
- American McGee's Alice
- Civilization III v1.17f
- Comanche 4 v1.0.0.12 & v1.0.1.15
- Command & Conquer: Renegade
- Conflict Zone v1.1 & v1.5
- Delta Force III Land Warrior
- Europe Racing
- F1 2001 v1.074 & v1.076
- Fifa 2002
- Freedom Force v1.0 & v1.1
- From Dusk Till Dawn
- Global Operations v1.2 & v2.0
- GTA 3 v1.0
- Hitman: Codename 47 (System.dll)
- Hostile Waters
- Largo Winch
- Max Payne v1.00, v1.01, v1.02 & v1.05
- Medal of Honor Allied Assault v1.1 & v1.11 English
- NBA Live 2001
- No One Lives Forever
- Operation Flashpoint v1.00, v1.30, v1.42 & v1.46
- Patrizier 2
- Randevu
- Red Alert 2
- Shogun Total War v1.02
- Sid Meier's Sim Golf v1.01 & v1.02
- Stronghold v1.1
- Sudden Strike v1.2 US
- Swedish Touring Car Championship 2 v3.3
- The Sims: Hot Date v1.41
- Tony Hawk Pro Skater 2
- Tiger Woods 2001
- Tiger Woods 2002
- Warcommander
- Worms World Party SP1
- Z: Steel Soldiers
All unwrap successfully, but most of them are not tested by playing the game with the unprotected file.
Tested SD 2.60.52 games with the No-CD Loader:
- Battlefield 1942 v1.1
- Civilization III v1.21f & v1.29f
- Dark Planet
- Delta Force TFD
- Divine Divinity
- F1 2002
- Medal Of Honor v1.11 Non-English
- Mobile Forces
- Operation Flashpoint Resistance
- Prince Of Qin
- Project Earth v1.10
- Serious Sam 2 v1.07 Euro
- Sid Meier's Sim Golf v1.03
- Stronghold v1.2
- Sum Of All Fears
- Tom And Jerry
Tested Safecast files:
- Reversi
- MathCad 2001i Professional
MathCad 2001i Professional contains both Safedisc and Safecast. You can read the unwrap instructions on my website.
Unsupported yet:
- Safedisc 2.40.11 DLL
- Safedisc 2.70.30 & 2.72.00
Use
Make sure your protected game runs correctly, i.e. install it.
If the protected program is not installed to your hard disc (i.e. Setup programs like on Red Alert 2 and Operation Flashpoint Gold Upgrade), just copy the exe to your hard disk, together with all required DLL's.
Anyway, make sure the protected file is on a writable drive. Do not try to use this tool on a file located on a cd-rom.
Launch the tool, press Unwrap and select the protected file. A messagebox will tell you some information. Press OK and wait...
After a while (please be patient: it might take a couple of minutes), it should create a file called SD2cleaned.exe
Just test it :)
If used on a DLL file, the unprotected DLL will be called SD2cleaned.dll.
To test it, just rename the original DLL file (to *.bak or something), rename the unwrapped DLL to the original DLL filename, and run the main program.
Any existing files called SD2cleaned.exe/dll will be OVERWRITTEN without any warning.
For Safedisc 2.60.52 protected files, the Cleaner will try to create a No-CD Loader. Of course, you have to execute the Loader instead of the protected program ! Please read the FAQ below for details.
In the main window, there are 2 options:
- Filesize: create a file with the same filesize as the protected one / create a smaller file.
r!sc's tools create an unwrapped file having a smaller size than the protected one. Since there are many setup programs checking filesize, i added this option so you can create an unwrapped file with the same filesize. Please be careful when replacing files: there are also some setup programs checking the installation files by calculating a CRC.
The compressed size is about the same for both versions, since all obsolete Safedisc code is removed.
- API stuff: use r!sc's method / use my method.
Some Safedisc protected files have an additional protection, named "API Stuff" (that's how r!sc calls it). For Safedisc 2.40.1x and 2.51.2x, you can choose between 2 methods to decrypt it. For all other versions, the selected method is not important as r!sc's method is automatically used.
Please note: you have to select these options BEFORE you press the Unwrap button. Changing the options while the game is being decrypted, is useless !
Why remove SafeDisc?
- SafeDisc is a VERY SLOW protection (not transparent at all, as they claim at www.macrovision.com). The protection is just a pain in the a** for owners of the original software.
- You are legally allowed to make a personal BACKUP copy of the software you own.
A lot of CD-writers can't make a working copy of Safedisc 2 protected CD's.
- Some CD-rom drives aren't compatible with SafeDisc, while the program would perfectly work with them.
- Safedisc is just rubbish :)
History
- v1.1.2, 13 sep 2002
- No ReadProcessMemory on the .rsrc section anymore: this will unwrap some files a lot faster !
- Fixed bug in the SD 2.60.52 No-CD Loader, which might cause trouble if the protected file has API stuff protection.
- Option to add commandline parameters in the SD 2.60.52 No-CD Loader.
- Support added for Spider-Man The Movie (German), The Italian Job and Kizato.
- Fixed bug causing the Cleaner to crash when a Safecast process is canceled (due to no response code or time limit expired)
- Fixed small bug in the SD 2.05.30 rebuilding routine, NBA Live 2001 unwraps successfully now.
- Support 'added' for Safecast 2.11.20 (just added this version as a known revision number, since there's no difference with 2.11.10)
- v1.1.1, 10 aug 2002
- Fixed bug for Age of Wonders 2 and Randevu (at last)
- v1.1.0, 3 aug 2002
- Added 2 options in main window: now you can decide which method to use to decrypt API stuff in v2.40.1x & v2.51.2x, and the "keep filesize" messagebox isn't needed anymore.
- Changed logo (thanks Jarnex !)
- Support for Safecast 2.11.10 DLL's
- Added my method for decrypting API stuff in the v2.40.1x code
- Fixed the Kohan 1.0.9 problem (thanks to r!sc himself for telling me how to fix)
- A couple of other minor updates/fixes
- And last but not least: "No-CD Loader"-support for Safedisc v2.60.52 !
- v1.0.3, 7 jul 2002
- Support added for Safecast v2.11.10
- v1.0.2, 4 jul 2002
- Support added for Safecast v2.11.60
- Added feature which let you decide whether the cleaned file should be same as the protected one or not
- XP problem "not a valid Win32 app" fixed, thanks to CirKutz for reporting & fixing it... hope it still works on Win9x now (lol)
- Fixed the GTA 3 issue under WinXP
- v1.0.1, 1 jul 2002
- 4 lines of code added in order to work for Warcommander and 4x4 Evolution (The cleaned files of both games don't seem to work on XP)
- Support added for Safecast v2.02.40 and v2.11.40 (Hopefully supported in fact, I couldn't test it)
- v1.0.0, 8 feb - 26 jun 2002
- r!sc's tools reversed, cleaned, rebuilt, changed, optimised.
- v2.51.xx dumper by CirKutz & waste_me reversed too...
- Added some code to scan for the Safedisc version (thanks dec0de12)
- Added simple GUI, based on unSafedisc's GUI (from r!sc too) as I know it works on Win NT/2K...
- Support added for v2.30.30 (found on Europe Racing)
- Added another method to decrypt 2.51.2x API stuff, since the 'classical' method from r!sc sometimes fails (i.e. GTA 3, Sims Hot Date 1.41)
My method is unoptimised and very slow, but works :)
If my method cannot be applied, r!sc's method will be used. If that fails too, you're out of luck :p
- Workaround added in the import fixing routine (for GTA 3)
- Support added for Patrizier 2
FAQ
- How do I know a game is Safedisc protected ?
Best way to find out is to use a copy protection scanner. A good one (although further development has been discontinued) is ClonyXXL.
This article decribes the properties of a Safedisc protected CD.
- And how do I know which file is Safedisc protected ?
There are always exceptions, but here are some general guidelines:
- The size is at least 800 kb, but most times between 2 and 3 MB.
- The file can not be compressed at a high ratio.
- String "BoG_*90.0&!! Yy>" located at the end of the PE header, followed by 3 dwords, indicating Safedisc version number. This is the way SD2Cleaner checks for the used version.
- In most cases, the SD protected file is the program's main executable.
- The protected file doesn't unwrap !
- Make sure the executable can run properly. You must have all required DLL's in order to run the protected program. Even a protected DLL may require some other special DLL's !
- No debuggers may be loaded, nor hided with FrogsIce or whatever, else the unwrapping will fail (or you must be very good at hiding debuggers :p).
SD2 has lots of anti-debugger features (especially against SoftIce) and shows a message or just quits if it detects a debugger.
- It is an unknown revision number. If unwrapping fails, please mail the protected file. If it unwraps successfully, report it !
- Restart the Cleaner and try again. Some temporary data may not be cleaned up...
- Check my website to see if the problem has been reported.
- Make sure you use the Cleaner's latest version.
- What's the difference between both methods of API stuff decrypting ?
Safedisc 2.40.1x & 2.51.2x protected files with API stuff can be decrypted with 2 different methods. For all other Safedisc/Safecast versions, this option is useless as there's only one decrypting method available for them.
r!sc's method is faster than mine, but doesn't work with all protected files. As far as I know, only 2 games fail with his method, but decrypt successfully with mine: "The Sims Hot Date" (not fully decrypted) and "GTA 3" (crashes). All other games decrypt with both methods and the result is exactly the same. So in most cases, it doesn't matter which method you choose, but my method is the safest one.
- The message "Unable to decrypt this piece of API stuff" appears one or more times while decrypting the game. What's happening ?
This is just a warning that the unwrapped file may not work correctly for some specific functions. The message can be a false warning, too. So far, Kohan v1.0.9 is the only game showing several false error messages. These can be ignored as the game unwraps successfully. If you receive this message for another game, please report it.
- The file unwraps ok, but it still requires the game cd. Why ?
This tool only removes the Safedisc protection. If you're lucky, the unwrapped game runs without CD, but sometimes there are more 'common' cd-checks present in the game itself. Removing these checks requires further crackwork.
- The file unwraps ok, but it doesn't work. What can I do ?
Some games only work properly if they are being executed under the original filename. Rename the original protected file to *.bak and the sd2cleaned.exe file to the original filename, then try again.
If it still fails, run the Safedisc protected executable and check if the same problem occurs. If so, please check your system configuration. Install the latest drivers, run Windows Update, etc.
If the protected executable doesn't have this problem, please report it.
- Why can't my Safecast protected program not be unwrapped ?
If you try to unwrap a file protected with Safecast, make sure the application can run. The trial period mustn't be expired yet, or you must have a valid response code, else the file can not be decrypted.
- If I try to create a No-CD Loader for a Safedisc 2.60.52 protected file, the game or even my whole system crashes!
This is a known problem: some games refuse to load correctly if the Safedisc splash screen can be loaded (especially Medal of Honor and Civilization III cause trouble). Solution: before creating the Loader, eject/unmount all CD-ROMs from your drives, and rename/remove all *.016 and *.256 files located in the game directory. The same problem can occur when using the Loader itself, so if the game still requires the game cd, burn all files back (except those splash screen files of course) to a backup cd.
Note: for a couple of games, a No-CD Loader cannot be created (see below). These games crash and a message "Unable to create a Loader for this file" will appear. I'm looking for a solution...
- Even when i execute the No-CD Loader, the game still asks for the CD !
The Loader only bypasses the Safedisc CD-Check. Some additional cd-checks could be implemented in the game code. A backup cd (written with Nero or another burning program) should be enough to run the game. As I've said above: to avoid crashes, don't include the .016 and .256 files on the compilation.
- What's the use of that "commandline parameters" dialog box ?
Some games work with commandline parameters, e.g. to enable debug/cheat modes, to run in a specific language (The Sims) or to force the program to let it work on your computer. I added this option, because the No-CD Loader cannot pass any parameters via the Loader's commandline.
Example: if the commandline should be:
Sims.exe -lFinnish -r1024x768
then fill out this in the text box:
-lFinnish -r1024x768
If the game doesn't require any parameters, just leave the text box blank and press OK.
Note: The commandline parameters length is limited to 100 characters. If you enter a longer string, it will be truncated.
Known bugs/problems/limitations
- Anatomy "PodMedSurg.exe" (SD v2.51.2x) doesn't unwrap under Windows 9x/ME. I gave up to create a separate unwrapper for it... i was able to unwrap it, but it refuses to run, whatever I try... it won't be supported in any future version.
- A SD 2.60.52 No-CD Loader cannot be created for "Spider-Man The Movie" (French) and "Grand Prix 4" v4.0.
- You are recommended to restart the Cleaner every time you want to unwrap a protected file.
Unwrapping another file after unwrapping a DLL might cause trouble, as a protected DLL file can not be unloaded until you quit the tool.
Future plannings
- I will probably add support for SD 2.40.1x protected DLL files.
- Full unwrap support for SD 2.60.52
- No-CD Loader support for SD 2.70.30
Credits & Thanks
I thank Jarnex for the logo.
Special thanks to GLH for beta testing and support for Spider-Man.
Black Check, dec0de12 and ArthaXerXes made a great job about Safedisc reversing.
Big thanks to waste_me & CirKutz, but most thanks go to r!sc !!
Most part of the code is by r!sc, the v2.51.2x key stuff is done by CirKutz & waste_me. I do respect their work, but I think many people rather like an all-in-one tool than separate executables for each version. I just brought r!sc's work together, as about 80% of the code used in the Cleaner is written by him. This program would NEVER exist without his brilliant work, and therefore we (= me, and everyone using this tool) cannot thank enough r!sc !
Disclaimer & Legal notice
Safedisc 2 Cleaner is freeware: no charge is asked for its use. You can freely distribute the original package you should have received/downloaded. Do not distribute any modified versions.
Do what you want with this tool, but use it at your own risk. It is provided "as is" without express or implied warranty, including, but not restricted to, the merchantability and the fitness for any purpose.
I can NOT be held responsible if Safedisc 2 Cleaner would crash your PC, would format your hard disc, or whatever may go wrong. You have been warned.
Using this tool is not illegal, but it's illegal to use/copy/distribute/sell software without the permission of the authors.
I don't support piracy in any way. The only purpose of this program is making it possible to create a personal backup of software you legally bought and own. You are legally allowed to use the unprotected version of that software, but in most cases this modified version mustn't be distributed.
The way you use Safedisc 2 Cleaner, legally or illegally, is your problem and is your entire responsibility!
How to contact me
WWW: http://boolseye.cjb.net
E-mail: safedisc2cleaner@yahoo.com for files, bools_eye@hotmail.com for other stuff
Before you send ANY file to my Yahoo address, please have a look at the FAQ in this readme file, and check my website !
If the same problem is mentioned there, it means I'm aware of the problem and I'm trying to fix it.
- You can mail any bug reports (e.g. when the Cleaner says the file isn't protected, while you are sure it is)
- Please do NOT send EXE files protected with Safedisc 2.70.30 or higher.
- I'm not a cracking service, so no requests please.
- Do NOT ask me to send the source code. Releasing the code could help Macrovision !
- ANY SafeDisc 2 protected DLL is welcome.
- If you are a graphic genius, you can send me another logo to use in the tool :)
- Anything that might be interesting to me.
Enjoy the unwrapping !
(c) 2002, bOOls eYe