Also erstmal sind die Dateien metin2client.bin und devil.dll mit upx gepackt.
(UPX 0.89.6 - 1.02 / 1.05 - 2.90 -> Markus & Laszlo) (PEID)
Die Unpacked Versionen findet ihr im Anhang.
Um zu verhindern das der Client diese gleich wieder aufs Orginal zurück patcht müssen wir den Client selbst etwas modifizieren.
Der Patcher funktioniert so:
1)Lese vom Patch Server die aktuelle crclist
2)Suche jede auf der crc List enthaltene Datei und überprüfe die gleichheit der Checksumme mit der in der crclist enthaltenen Checksummme.
3)Sollten sich diese unterscheiden, lade die Korrekte Datei vom Server.
In Assembly ist das folgende Stelle:
Code:
0040E4D9 . 50 PUSH EAX 0040E4DA . 8B4424 34 MOV EAX,DWORD PTR SS:[ESP+34] 0040E4DE . 51 PUSH ECX //ECX=checksumme 0040E4DF . 8B4C24 40 MOV ECX,DWORD PTR SS:[ESP+40] 0040E4E3 . 52 PUSH EDX 0040E4E4 . 50 PUSH EAX 0040E4E5 . 51 PUSH ECX//ECX=checksumme 0040E4E6 . E8 E54A0000 CALL metin2.00412FD0 0040E4EB . 83C4 14 ADD ESP,14 0040E4EE . 84C0 TEST AL,AL//AL = 1 Checksumme stimmt. 0040E4F0 . 0F85 48010000 JNZ metin2.0040E63E
Code:
JNZ -> JMP
Es sollte euch nun leichter fallen folgende Files ungehindert zu modifizieren oder zu überschreiben:
Code:
724857a9 110592 30072960 2380483840 artpclnt.dll a1b116a2 8 30092662 217018048 channel.inf 471c7e8a 35328 30072960 2381283840 dsetup.dll 5e97d387 15 30072959 2374051136 locale.cfg c6d6e5c6 2631640 30063269 2481349376 metin2.bin 8ccc0df1 914944 30084628 753674112 metin2client.bin cab6c049 131072 30072960 2381083840 mscoree.dll 6c5812e3 349696 30072960 2380483840 mss32.dll 7f386569 401462 30072960 2381083840 msvcp60.dll 192baed0 434252 30072960 2380583840 msvcrtd.dll 60c762a2 13368 30092111 367398144 pack\locale_de.addr ac0bcd2 5620 30091258 947101632 pack\locale_de.eix 3200b426 2017024 30091258 937301632 pack\locale_de.epk 6e92f4c5 17 30072959 2373851136 patch.add 249261c1 9 30072959 2373851136 patch.ver 224b3e35 3682 30072959 2372751136 patchskin\btn_hwreport_up.bmp 4dafbcba 10388 30072959 2372951136 patchskin\btn_idpwd_dn.bmp b6bb774c 10388 30072959 2371951136 patchskin\btn_idpwd_fs.bmp b8e1c6a 10388 30072959 2372651136 patchskin\btn_idpwd_up.bmp c02b913f 7868 30072959 2372951136 patchskin\btn_newaccount_dn.bmp ef554bca 7868 30072959 2373251136 patchskin\btn_newaccount_fs.bmp 9402681a 7868 30072959 2372651136 patchskin\btn_newaccount_up.bmp 6ff6fd46 7868 30072959 2372151136 patchskin\btn_quit_dn.bmp 70310ae4 7868 30072959 2372651136 patchskin\btn_quit_fs.bmp 39ae26a0 7868 30072959 2372951136 patchskin\btn_quit_up.bmp 99e459cb 10388 30072959 2372951136 patchskin\btn_settings_dn.bmp 48353f31 10388 30072959 2372951136 patchskin\btn_settings_fs.bmp 2811ae8 10388 30072959 2372351136 patchskin\btn_settings_up.bmp 38f07686 13448 30072959 2372651136 patchskin\btn_startgame_dn.bmp 233048e5 13448 30072959 2372751136 patchskin\btn_startgame_fs.bmp 18598d10 13448 30072959 2372951136 patchskin\btn_startgame_up.bmp 35ee14cc 720056 30072959 2372951136 patchskin\main.bmp e176a4ae 131072 30072960 2380883840 patchupdater.exe a4a5e8de 202240 30072960 2380883840 patchw32.dll 1816d4f4 258352 30072960 2380583840 unicows.dll
Patched Client:

Unpacked Client:






