0 1 0 1 0 1 0
WIDYA-Cl 2011 [ WORLD CRACKING LINK ]
0 1 0 1 0 1 0
 
Reversing Engineering Lab Name : unreal.exe - Type : Multimedia Player - Size : 746,496 bytes Reversing Engineering Lab
  ... from newbie to another ...
Tools Used :  Softice V3.24 - Hiew 6.02
... from newbie to another ...
 
 
Time Limits in Unreal Player Max 1.29 Release 8 Trial Version
 
   
 
Author  : 303 Technology
 
Email : info@303tek.com 
 
Homepage : http://www.303tek.com 
 

Intro

 
Hi guys .. you are now reading my 6th tutorial .. sorry for any grammatical errors .. hope you'll understand this piece .. 
 
Overview
 
Unreal Player is the player which can play most of your favorite files including mp3, MOD,MIDI ,AVI and CD-audio.You can use the same simple interface for all format. And you can also customize it.And you can control Unreal Player by TELNET client from port 30303.

Almost all players are FPU intensive and optimized for only Pentium processors. Therefore their performance is poor or even terrible on PC which is based on non-intel CPU. Unreal Player solved this problem using MMX and K6 3D technology. We are offering pentium build and cyrix/AMD build.

 
The essay
 
... this was very funny guys .. 'coz when i ran the programs for the very first time i was inform by thiz nice messages " Thank you for evaluating Unreal Player Max " ... 0 days left ... " Evaluation period has expired. Thank you for your interest in unreal player. " ... ???? ... what the ....  it was already expired even before i try it for once !? ..... hmm ... *@&!^ .... 

I pushed my system date backward one month ... and then ran it again ... hei now i have 11 days left ... better ! ... playing around for a few minutes ... heh .. what a great tool we got here ... now let's play a while with the time limits.

I was not in the mood to deadlisting this program ... now tell me guys .. !? how the program knows the expiration date .... yeah it must read the present system date everytime it run right ?! ... what's  the function name is Sice ?! ... GETLOCALTIME ... let's check it out.

[CTRL]+D
BPX GETLOCALTIME [ENTER]
X [ENTER]

... run the program ... ^ bOOm ^ ... first landing .... X [ENTER] ... ^ bOOm ^ ... F11 once (to get the caller) .. now we should be in Unreal code ... push F10 12 times until we get this interesting code :
 
0045B71E E87573FAFF call 00402A98 ; F10 ... EAX=00008D69
0045B723 2B430C sub eax, [ebx+0C] ; F10 ... look at EAX register ... (in my case) EAX=00000013 ... 
      ; with EAX=13 at here we'll have 11 days left !!
BC* [ENTER]
BPX 45B723 [ENTER]
X [ENTER]

.. now re-run the program .. #bOOm# :
 
0045B723 2B430C sub eax, [ebx+0C] ;  F10 ... edit eax value : R EAX=12 [ENTER] ...
      ; with EAX=12 at here we'll have 12 days left ..  right ?!
.. enough for me ! .. we should change the eax value to zero if we want our 30 days back ... let's make it permanently .... here i have an alternative solution ... 

Run your favourite hex editor .. open unreal.exe ... find for this value (hex) : 2B430C .. replace with : 2BC090 ... save it ... I also written a simple byte patcher in pascal ... simply compile it (tpc name.pas) 'n run it in the same directory as unreal.exe .. now the new code should look like this :
 
0045B723 2BC0 sub eax,eax ; eax=eax-eax .. the result always zero ... right ?! ,,, 
0045B725 90 nop ; no operand ... we need this code to fill the black hole ...
heh amazing ?! .. it only takes 1 minute ... the fastest crack i've ever made .. 
r u sayin' somethin' ?! ... yeah this should recorded in Guinnes Book Of Record ... #Doh# ...
now we have forever trial period ... 

 
Patcher Source 
 
Uses Crt;

Const A : Array[1..2] of Record
A : Longint;
B : Byte;
End =

((A:$5AB24;B:$C0),
(A:$5AB25;B:$90));

Var Ch:Char;
     I:Byte;
     F:File;

Begin
  Writeln;
  Writeln(' Unreal Player 1.29 Release 8 Trial Version');
  Writeln(' Crack bY widYa@cL 2011 [wOrLd cRaCkinG linK 99]');
  Writeln;
  Writeln(' Target Name: unreal.exe Size: 746,496 bytes');
  Writeln;
  Write(' Status :');

  Assign(F,'UNREAL.EXE'); 
  {$I-} Reset(F,1); {$I+}
  If IOResult <> 0 Then 
    Begin
      Write(' File not found!');
      Halt(1);
    End;
  If FileSize(F) <> 746496 Then
    Begin
      Write(' Wrong Version/File Size! .. aborted !');
      Halt(1);
    End;
  For I:=1 To 2 Do
    Begin
      Seek(F,A[I].A);
      Ch:=Char(A[I].B);
      Blockwrite(F,Ch,1);
    End;
  Write(' File successfully patched! .. Have Fun !')
End.

 
Final notes
 
any comment/suggestions/critics ?! ... juSt leT me knOw ! 
 
Greetz : 
SandMan,CrackZ,tKC/All PC members, tHATDUDE, UCF, Torn@do, The Immortal Descendants, +ORC, MiB , Iczelion, GCG, ED!SON, Razzia, +Xoanon, iCECREAM, FraVia, Lord Caligo, Buckaroo Banzai, +gthorne , Mexelite , Corn2, Vizion, Manson69, nIabI, Cyborg, ^pain^, intruder, Yaan, Laxity, JoGy, nIabI [C4N/ME], MR NICK, NaTzGUL [REVOLT], Qapla', The _RudeBoy_ , BigMoM, Aphex Twin [Vandals], vûltû_ë, eXact, YOSHi, Volatility, ZeroDay, Aescu, _CbD_, Gavin Estey, DR. Encryption, Joshua Auerbach, Klee8084, masta_, Chuck Nelson, _HaK_, Nemrod and ReN, R. DeYoung, Hugo Perez, lownoise, Hayras, Flu(X), YOU .....
 

 



 
  

 
Written / Design bY  : widYa-cL 2011
Page Created : 9 March 1999
  ERE -->