Go Back   FileForums > Game Backup > PC Games

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 03-06-2006, 10:53
pokopo pokopo is offline
Registered User
 
Join Date: May 2006
Location: europe
Posts: 14
Thanks: 0
Thanked 0 Times in 0 Posts
pokopo is on a distinguished road
old game crack request..

could someone remove the cd-check from this exe (should be only a simple cd check,according to protection-id)? its an old game and it was released only on certain european markets so no crack exists..

it would make my life a bit easier..thanks.

zipped exe
Reply With Quote
Sponsored Links
  #2  
Old 03-06-2006, 10:58
phil8900
Guest
 
Posts: n/a
Hi,
should work:
http://rapidshare.de/files/22119255/phi-owar.rar.html
Reply With Quote
  #3  
Old 03-06-2006, 13:03
DABhand DABhand is offline
Banned
 
Join Date: Nov 2004
Location: Near my PC
Posts: 5,406
Thanks: 0
Thanked 3 Times in 3 Posts
DABhand is on a distinguished road
Im guessing you changed this


Code:
:00457C6D E8B6E6FAFF   CALL 00406328
:00456C72 83F805       CMP EAX,00000005
:00457C75 753D         JNE 00457CB4  --- CHANGED TO JMP 00457CB4
Reply With Quote
  #4  
Old 03-06-2006, 16:11
BarryB BarryB is offline
Die Hard Member
 
Join Date: Jun 2004
Location: In a House
Posts: 1,972
Thanks: 0
Thanked 1 Time in 1 Post
BarryB is on a distinguished road
Nope!

He changed CMP EAX,00000005 to CMP EAX,00000003, which may or not work depending on the rest of the CD checking routine.
Reply With Quote
  #5  
Old 03-06-2006, 17:56
DABhand DABhand is offline
Banned
 
Join Date: Nov 2004
Location: Near my PC
Posts: 5,406
Thanks: 0
Thanked 3 Times in 3 Posts
DABhand is on a distinguished road
ack either way, his or my way would have got to the same place :P
Reply With Quote
  #6  
Old 04-06-2006, 03:06
phil8900
Guest
 
Posts: n/a
Hi,
yeah, BarryB is right - i couldn't test it, so i just "guessed"

Last edited by phil8900; 04-06-2006 at 03:11.
Reply With Quote
  #7  
Old 04-06-2006, 10:55
pokopo pokopo is offline
Registered User
 
Join Date: May 2006
Location: europe
Posts: 14
Thanks: 0
Thanked 0 Times in 0 Posts
pokopo is on a distinguished road
nope,didnt work,still asks for cd..
Reply With Quote
  #8  
Old 04-06-2006, 11:52
phil8900
Guest
 
Posts: n/a
Hi,
is there a file named "data6.owp" on the disc?
Try copying it to the installdir & and try this exe:
http://rapidshare.de/files/22207441/Owar.rar.html

We'll get this game to work without a cd
Reply With Quote
  #9  
Old 06-06-2006, 05:19
pokopo pokopo is offline
Registered User
 
Join Date: May 2006
Location: europe
Posts: 14
Thanks: 0
Thanked 0 Times in 0 Posts
pokopo is on a distinguished road
I'll see if I can find it..thanks.
Reply With Quote
  #10  
Old 06-06-2006, 07:06
cdkiller cdkiller is offline
Registered User
 
Join Date: Oct 2002
Posts: 1,899
Thanks: 0
Thanked 5 Times in 1 Post
cdkiller is on a distinguished road
CODE:00459335 loc_459335: ; CODE XREF: sub_4592F8+1Cj
CODE:00459335 ; sub_4592F8+36j
CODE:00459335 call sub_457C2C ---> calls GetDriveTypeA
CODE:0045933A test al, al ---> test al = 0 (if 0 = no cd inserted)
CODE:0045933C jz short loc_459316 ---> patch to jmp, elso bad guy
CODE:0045933E mov eax, esi
CODE:00459340 call sub_458F2C
CODE:00459345 lea eax, [ebp+var_4]
CODE:00459348 call @System@@LStrClr$qqrr17System@AnsiString ; System::__linkproc__ LStrClr(System::AnsiString &)
CODE:0045934D cmp byte ptr [esi+319h], 0
CODE:00459354 jz short loc_459399
CODE:00459356 lea eax, [ebp+var_4]
CODE:00459359 mov edx, offset unk_459508

patching the jz should work so u can play without cd.
if the "pls insert cd blablabla" doesn´t appear ingame u can upload the dlls + exe so it can be debugged.
__________________
http://pid.gamecopyworld.com

home of Protection ID the ultimate Protection Scanner.
Reply With Quote
  #11  
Old 06-06-2006, 21:32
pokopo pokopo is offline
Registered User
 
Join Date: May 2006
Location: europe
Posts: 14
Thanks: 0
Thanked 0 Times in 0 Posts
pokopo is on a distinguished road
nope,the last patched exe from rapidshare doesnt work either..pretty sure the protection is only in the exe file-its possible to use the exe from the demo and the game runs,but its buggy,especially after updating..
Reply With Quote
  #12  
Old 07-06-2006, 01:04
The-S-Owl The-S-Owl is offline
Registered User
 
Join Date: Dec 2002
Location: Behind you
Posts: 134
Thanks: 0
Thanked 0 Times in 0 Posts
The-S-Owl
Get a hex editor and change the bytes 8D 45 at raw offset 5704A to EB 47
Reply With Quote
  #13  
Old 08-06-2006, 07:16
DABhand DABhand is offline
Banned
 
Join Date: Nov 2004
Location: Near my PC
Posts: 5,406
Thanks: 0
Thanked 3 Times in 3 Posts
DABhand is on a distinguished road
You cant change a 3 byte instruction to a 2 byte only, that will screw up the rest of the coding, you have to nop the last byte also.

Besides I dont see why a jump there would help with anything.


You could just nop out


457C6D to 457C76

That would take out the call,cmp and conditional jmp.

Last edited by DABhand; 08-06-2006 at 07:18.
Reply With Quote
  #14  
Old 08-06-2006, 12:30
The-S-Owl The-S-Owl is offline
Registered User
 
Join Date: Dec 2002
Location: Behind you
Posts: 134
Thanks: 0
Thanked 0 Times in 0 Posts
The-S-Owl
Quote:
Originally Posted by DABhand
You cant change a 3 byte instruction to a 2 byte only, that will screw up the rest of the coding, you have to nop the last byte also.
Congratulations, you have just given the proof that you do not have a clue how a program works.


Quote:
Originally Posted by DABhand
Besides I dont see why a jump there would help with anything.


You could just nop out


457C6D to 457C76

That would take out the call,cmp and conditional jmp.
That will not work.

Time for a REAL lesson in assembly maybe ?

1. If you do not kill the instruction at 457C6C too, the stack pointer will be screwed and the program will crash when it tries to leave the function.
2. In the beginning of the function, the variable [ebp-1] is set to 1. If your patch is applied, the call at 457C8A will always fail (al = 0) since data6.owp will not be found. After doing this check from drive C to Z, [ebp-1] is set to 0 and this value will be given back. Moreover, since the check always fails, the code between 457C93 and 457CB2 is never executed. I have not analyzed what these functions do, but they are executed if the cd-check succeeds, but not when it fails. And that is exactly what my patch does: the cd-check is skipped and these functions are executed without even checking any drive.
Reply With Quote
  #15  
Old 08-06-2006, 23:45
DABhand DABhand is offline
Banned
 
Join Date: Nov 2004
Location: Near my PC
Posts: 5,406
Thanks: 0
Thanked 3 Times in 3 Posts
DABhand is on a distinguished road
Quote:
Originally Posted by The-S-Owl
Congratulations, you have just given the proof that you do not have a clue how a program works.




That will not work.

Time for a REAL lesson in assembly maybe ?

1. If you do not kill the instruction at 457C6C too, the stack pointer will be screwed and the program will crash when it tries to leave the function.
2. In the beginning of the function, the variable [ebp-1] is set to 1. If your patch is applied, the call at 457C8A will always fail (al = 0) since data6.owp will not be found. After doing this check from drive C to Z, [ebp-1] is set to 0 and this value will be given back. Moreover, since the check always fails, the code between 457C93 and 457CB2 is never executed. I have not analyzed what these functions do, but they are executed if the cd-check succeeds, but not when it fails. And that is exactly what my patch does: the cd-check is skipped and these functions are executed without even checking any drive.


Now let me give you a lesson.



1. You replaced a 3 byte instruction with a 2 byte short jump, there is a byte left over, the coding will then continue making instructions from the 3rd byte you left behind unchecked and screw the rest of the program.

It is basic Assembly and everyone knows this as fact. Besides if I didnt know ASM why have I made code-injected trainers in the past?

2. The previous set of instructions are only shifting values about ready for the CALL op, which is where the GetDriveTypeA API is being used, and if you knew this you will know it returns a value while checking a file if its on a local drive or CD-Rom device, each their own unique number (even the floppy or network devices), then the compare instruction will check this value and if it not the same value, the Zero Flag is set and the Conditional Jump comes into effect.

My first post was wrong I will admit that as I only looked over it for a few seconds.


When GetDriveTypeA is executed it will return a value of 3 for Hard Disk and 5 for CD-Rom, since the compare is checking this value with 5, I therefore figured out that the JMP will goto the Bad Boy and show the InsertCD message. Therefor nop'ing out the CALL - JNE ops it will miss the whole checking sequence and carry on and hopefully start the game, but the GetDriveTypeA could be called elsewhere in the coding and has to be changed also.


EBP is a Base Pointer and not the actual Stack itself which is ESP. If you check the GetDriveTypeA API you will see the stack itself is not changed in any way. So therefor the Stack is perfectly fine as it is.
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Hello? GTR: FIA GT Racing Game crack? plan_B_1980 PC Games 5 09-11-2004 06:39
GTR - FIA GT Racing Game CRACK? darksaber999 PC Games 2 03-11-2004 09:40
World Champ Rugby crack....What game is it for? t.foster73 PC Games 0 27-04-2004 04:47
How can i make a crack for a game? Robman CD/DVD Copy Protections & Utilities 10 02-09-2002 15:29
Request X Plane 5.52 Crack Froggy PC Games 0 14-02-2001 07:04



All times are GMT -7. The time now is 00:01.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com