Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Fixing main.exe (Ex700Plus) crashes

NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
OK, here is 1.04z (1.4.26.0) Unpacked main.exe with alot of crash fixes!

Unpacked + Fixes:
Code:
http://forum.ragezone.com/f508/fixing-main-exe-ex700plus-crashes-908470/#post7453388
Patch:
Code:
ftp://patch.muonline.webzen.net/pub/webzen/1.04.26/

Fixes need apply to unpacked file:
Code:
unit HDBot.Offsets.Patch;

interface

uses
 Winapi.Windows, HDBot.Patches;

const
{$REGION 'offsets'}
 {$IF Defined(MAIN10426)}
  MAIN_FIX_1  : DWORD = $AB76900; // SIZE: 2
  MAIN_FIX_2  : DWORD = $9EF9C41; // SIZE: 5
  MAIN_FIX_3  : DWORD = $AB76BC1; // SIZE: 5
  MAIN_FIX_4  : DWORD = $AB76951; // SIZE: 6
  MAIN_FIX_5  : DWORD = $AB73D4C; // SIZE: 5
  MAIN_FIX_6  : DWORD = $AB73DED; // SIZE: 6
  MAIN_FIX_7  : DWORD = $9D2EAB4; // SIZE: 7
  MAIN_FIX_8  : DWORD = $AB55E19; // SIZE: 6
  MAIN_FIX_9  : DWORD = $9D2F09C; // SIZE: 7
  MAIN_FIX_A  : DWORD = $AB57AE1; // SIZE: 5
  MAIN_FIX_B  : DWORD = $AB5A4C7; // SIZE: 7
  MAIN_FIX_C  : DWORD = $AB5A8DE; // SIZE: 5
  MAIN_FIX_D  : DWORD = $9FD31AC; // SIZE: 5
  MAIN_FIX_E  : DWORD = $AB76F60; // SIZE: 6
  MAIN_FIX_F  : DWORD = $AB76C7F; // SIZE: 2
  MAIN_FIX_10 : DWORD = $9FD2E0D; // SIZE: 5
  MAIN_FIX_11 : DWORD = $AB76EBA; // SIZE: 6
  MAIN_FIX_12 : DWORD = $AB76C8C; // SIZE: 6
  MAIN_FIX_13 : DWORD = $AB77334; // SIZE: 5
  MAIN_FIX_14 : DWORD = $AB773AB; // SIZE: 6
  MAIN_FIX_15 : DWORD = $ABA16E4; // SIZE: 2
  MAIN_FIX_16 : DWORD = $ABA16EB; // SIZE: 3
  MAIN_FIX_17 : DWORD = $ABA17E1; // SIZE: 2
  MAIN_FIX_18 : DWORD = $ABA17C2; // SIZE: 2
  MAIN_FIX_19 : DWORD = $ABA13F5; // SIZE: 5
  MAIN_FIX_1A : DWORD = $9D332D6; // SIZE: 7
  MAIN_FIX_1B : DWORD = $9D3334F; // SIZE: 5
  MAIN_FIX_1C : DWORD = $9D36077; // SIZE: 7
  MAIN_FIX_1D : DWORD = $AB6AAFE; // SIZE: 6
  MAIN_FIX_1E : DWORD = $A5DAC1E; // SIZE: 2
  MAIN_FIX_1F : DWORD = $AB8C428; // SIZE: 3
  MAIN_FIX_20 : DWORD = $AB8C5A1; // SIZE: 2
  MAIN_FIX_21 : DWORD = $AB8C5C0; // SIZE: 2
  MAIN_FIX_22 : DWORD = $AB8C20C; // SIZE: 5
  MAIN_FIX_23 : DWORD = $AB738A5; // SIZE: 5
  MAIN_FIX_24 : DWORD = $AB738E6; // SIZE: 6
  MAIN_FIX_25 : DWORD = $AB75D8D; // SIZE: 5
  MAIN_FIX_26 : DWORD = $AB75E0E; // SIZE: 6
  MAIN_FIX_27 : DWORD = $9D9EDBC; // SIZE: 7
  MAIN_FIX_28 : DWORD = $A442CC9; // SIZE: 2
  MAIN_FIX_29 : DWORD = $AB78678; // SIZE: 3
  MAIN_FIX_2A : DWORD = $AB78814; // SIZE: 2
  MAIN_FIX_2B : DWORD = $AB784B2; // SIZE: 5
  MAIN_FIX_2C : DWORD = $AB740BB; // SIZE: 6
  MAIN_FIX_2D : DWORD = $9D308A2; // SIZE: 7
  MAIN_FIX_2E : DWORD = $AB5D2D1; // SIZE: 5
  MAIN_FIX_2F : DWORD = $AB7619D; // SIZE: 2
  MAIN_FIX_30 : DWORD = $AB761A7; // SIZE: 3
  MAIN_FIX_31 : DWORD = $AB762D4; // SIZE: 2
  MAIN_FIX_32 : DWORD = $AB762CD; // SIZE: 2
  MAIN_FIX_33 : DWORD = $AB75FCE; // SIZE: 5
  MAIN_FIX_34 : DWORD = $AB73A7D; // SIZE: 7
  MAIN_FIX_35 : DWORD = $9D8FE18; // SIZE: 5
  MAIN_FIX_36 : DWORD = $AB8E95A; // SIZE: 2
  MAIN_FIX_37 : DWORD = $AB8E95F; // SIZE: 3
  MAIN_FIX_38 : DWORD = $AB8EA08; // SIZE: 2
  MAIN_FIX_39 : DWORD = $AB8EA26; // SIZE: 2
  MAIN_FIX_3A : DWORD = $AB8E6FF; // SIZE: 5
  MAIN_FIX_3B : DWORD = $9D3522E; // SIZE: 7
  MAIN_FIX_3C : DWORD = $AB6729F; // SIZE: 6
  MAIN_FIX_3D : DWORD = $9D3596C; // SIZE: 7
  MAIN_FIX_3E : DWORD = $AB68ED6; // SIZE: 6
  MAIN_FIX_3F : DWORD = $9D33D59; // SIZE: 7
  MAIN_FIX_40 : DWORD = $9D33DD2; // SIZE: 5
  MAIN_FIX_41 : DWORD = $9D32846; // SIZE: 7
  MAIN_FIX_42 : DWORD = $AB61DEB; // SIZE: 5
  MAIN_FIX_43 : DWORD = $AB770C9; // SIZE: 6
  MAIN_FIX_44 : DWORD = $AB7435C; // SIZE: 2
  MAIN_FIX_45 : DWORD = $9DB216A; // SIZE: 5
  MAIN_FIX_46 : DWORD = $AB74962; // SIZE: 5
  MAIN_FIX_47 : DWORD = $AB743CD; // SIZE: 6
  MAIN_FIX_48 : DWORD = $AB771C2; // SIZE: 2


  INSANE_ERROR_0: DWORD = $0AB6AA79;
  INSANE_PATCH_0: array [0 .. 4] of Byte = ($E9, $CF, $00, $00, $00);
  INSANE_ERROR_1: DWORD = $09D34C0C;
  INSANE_PATCH_1: array [0 .. 4] of Byte = ($EB, $4B, $90, $90, $90);

  DISAPEAR_0: DWORD = $008BD33F;
  DISAPEAR_1: DWORD = $09C29879;
  DISAPEAR_2: DWORD = $09C29970;
  DISAPEAR_3: DWORD = $09C29A66;
  DISAPEAR_4: DWORD = $09C29B06;
  DISAPEAR_5: DWORD = $09C29BB8;
  DISAPEAR_6: DWORD = $09C29C9A;
  DISAPEAR_7: DWORD = $09C29D71;
  DISAPEAR_8: DWORD = $09C29E0F;
  DISAPEAR_9: DWORD = $09C29EB1;

  DISAPEAR_ARR: array [0 .. 0] of Byte = ($C3);


  TRADE_PATCH: DWORD = $00971D93; //Alow trade from 1. Level
  TRADE_PATCH_ARR: array [0 .. 3] of Byte = ($83, $7D, $F0, $00);
 {$IFEND}
{$ENDREGION}

procedure FixMain;

implementation

procedure FixMain;
begin
  PatchBytes(TRADE_PATCH, TRADE_PATCH_ARR);

  PatchBytes(DISAPEAR_0, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_1, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_2, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_3, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_4, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_5, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_6, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_7, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_8, DISAPEAR_ARR);
  PatchBytes(DISAPEAR_9, DISAPEAR_ARR);

  PatchBytes(INSANE_ERROR_0, INSANE_PATCH_0);
  PatchBytes(INSANE_ERROR_1, INSANE_PATCH_1);

  NopThis(MAIN_FIX_1, 2);
  NopThis(MAIN_FIX_2, 5);
  NopThis(MAIN_FIX_3, 5);
  NopThis(MAIN_FIX_4, 6);
  NopThis(MAIN_FIX_5, 5);
  NopThis(MAIN_FIX_6, 6);
  NopThis(MAIN_FIX_7, 7);
  NopThis(MAIN_FIX_8, 6);
  NopThis(MAIN_FIX_9, 7);
  NopThis(MAIN_FIX_A, 5);
  NopThis(MAIN_FIX_B, 7);
  NopThis(MAIN_FIX_C, 5);
  NopThis(MAIN_FIX_D, 5);
  NopThis(MAIN_FIX_E, 6);
  NopThis(MAIN_FIX_F, 2);
  NopThis(MAIN_FIX_10, 5);
  NopThis(MAIN_FIX_11, 6);
  NopThis(MAIN_FIX_12, 6);
  NopThis(MAIN_FIX_13, 5);
  NopThis(MAIN_FIX_14, 6);
  NopThis(MAIN_FIX_15, 2);
  NopThis(MAIN_FIX_16, 3);
  NopThis(MAIN_FIX_17, 2);
  NopThis(MAIN_FIX_18, 2);
  NopThis(MAIN_FIX_19, 5);
  NopThis(MAIN_FIX_1A, 7);
  NopThis(MAIN_FIX_1B, 5);
  NopThis(MAIN_FIX_1C, 7);
  NopThis(MAIN_FIX_1D, 6);
  NopThis(MAIN_FIX_1E, 2);
  NopThis(MAIN_FIX_1F, 3);
  NopThis(MAIN_FIX_20, 2);
  NopThis(MAIN_FIX_21, 2);
  NopThis(MAIN_FIX_22, 5);
  NopThis(MAIN_FIX_23, 5);
  NopThis(MAIN_FIX_24, 6);
  NopThis(MAIN_FIX_25, 5);
  NopThis(MAIN_FIX_26, 6);
  NopThis(MAIN_FIX_27, 7);
  NopThis(MAIN_FIX_28, 2);
  NopThis(MAIN_FIX_29, 3);
  NopThis(MAIN_FIX_2A, 2);
  NopThis(MAIN_FIX_2B, 5);
  NopThis(MAIN_FIX_2C, 6);
  NopThis(MAIN_FIX_2D, 7);
  NopThis(MAIN_FIX_2E, 5);
  NopThis(MAIN_FIX_2F, 2);
  NopThis(MAIN_FIX_30, 3);
  NopThis(MAIN_FIX_31, 2);
  NopThis(MAIN_FIX_32, 2);
  NopThis(MAIN_FIX_33, 5);
  NopThis(MAIN_FIX_34, 7);
  NopThis(MAIN_FIX_35, 5);
  NopThis(MAIN_FIX_36, 2);
  NopThis(MAIN_FIX_37, 3);
  NopThis(MAIN_FIX_38, 2);
  NopThis(MAIN_FIX_39, 2);
  NopThis(MAIN_FIX_3A, 5);
  NopThis(MAIN_FIX_3B, 7);
  NopThis(MAIN_FIX_3C, 6);
  NopThis(MAIN_FIX_3D, 7);
  NopThis(MAIN_FIX_3E, 6);
  NopThis(MAIN_FIX_3F, 7);
  NopThis(MAIN_FIX_40, 5);
  NopThis(MAIN_FIX_41, 7);
  NopThis(MAIN_FIX_42, 5);
  NopThis(MAIN_FIX_43, 6);
  NopThis(MAIN_FIX_44, 2);
  NopThis(MAIN_FIX_45, 5);
  NopThis(MAIN_FIX_46, 5);
  NopThis(MAIN_FIX_47, 6);
  NopThis(MAIN_FIX_48, 2);
end;


end.
Im just looking for random client crashes and bugs to fix them all..

Cracked, Fixed:
- RG
- GG
- Mu.exe
- Log decrypted "MuError.log"
and fixed alot of Client crashes

"1.04.27" same old 1.04.26 as new:
Code:
http://forum.ragezone.com/f508/fixing-main-exe-ex700plus-crashes-908470/index2.html#post7471998

Note!
I dont crack CMStarterCore
!
 
Last edited:
Experienced Elementalist
Joined
Oct 19, 2010
Messages
231
Reaction score
531
//---- RESTORE BYTES DISABLE ----
memset((int*)0x0AB771C2,0x90,4); //restore crypt
memset((int*)0x0AB775AD,0x90,2); //restore crypt

memset((int*)0x0AB76806,0x90,2); //RF skill use

memset((int*)0x0AB766D0,0x90,8); //RF skill use
memset((int*)0x0AB766CD,0x90,3); //RF skill use

memset((int*)0x0AB7619D,0x90,2); //RF skill use
memset((int*)0x0AB761A7,0x90,3); //RF skill use
//---- RESTORE BYTES DISABLE ----

Character Dissapear
*(BYTE*)0x09C29962 = (BYTE)0xB8; //OK
*(BYTE*)0x09C29963 = (BYTE)0x01;
*(BYTE*)0x09C29964 = (BYTE)0x00;
*(BYTE*)0x09C29965 = (BYTE)0x00;
*(BYTE*)0x09C29966 = (BYTE)0x00;
*(BYTE*)0x09C29967 = (BYTE)0xC3;
*(BYTE*)0x09C29968 = (BYTE)0x90;
*(BYTE*)0x09C29969 = (BYTE)0x90;
*(BYTE*)0x09C2996A = (BYTE)0x90;
*(BYTE*)0x09C2996B = (BYTE)0x90;
//---
*(BYTE*)0x09C29879 = (BYTE)0xB8; //OK
*(BYTE*)0x09C2987A = (BYTE)0x01;
*(BYTE*)0x09C2987B = (BYTE)0x00;
*(BYTE*)0x09C2987C = (BYTE)0x00;
*(BYTE*)0x09C2987D = (BYTE)0x00;
*(BYTE*)0x09C2987E = (BYTE)0xC3;
*(BYTE*)0x09C2987F = (BYTE)0x90;
*(BYTE*)0x09C29880 = (BYTE)0x90;
//---
*(BYTE*)0x09C29A58 = (BYTE)0xB8; //OK
*(BYTE*)0x09C29A59 = (BYTE)0x01;
*(BYTE*)0x09C29A5A = (BYTE)0x00;
*(BYTE*)0x09C29A5B = (BYTE)0x00;
*(BYTE*)0x09C29A5C = (BYTE)0x00;
*(BYTE*)0x09C29A5D = (BYTE)0xC3;
*(BYTE*)0x09C29A5E = (BYTE)0x90;
*(BYTE*)0x09C29A5F = (BYTE)0x90;
*(BYTE*)0x09C29A60 = (BYTE)0x90;
*(BYTE*)0x09C29A61 = (BYTE)0x90;

*(BYTE*)0x004E0974 = (BYTE)0xE8; //OK
*(BYTE*)0x004E0975 = (BYTE)0x13;
*(BYTE*)0x004E0976 = (BYTE)0x5A;
*(BYTE*)0x004E0977 = (BYTE)0x70;
*(BYTE*)0x004E0978 = (BYTE)0x09;

Also I know that there is crush in Crywolf event, also with Dark Horse, Dark Raven, and Kanturu :D Could you tell what is fixed, and what is not? :)
 
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
Updated

Updated
- Added more then 20+ fixes for main.exe

Code:
http://www.mirrorupload.net/file/UNBPBTAR/UnpackedMain.exe
 
Last edited:
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
Code:
const
  MAIN_FIX_1  : DWORD = $AB76900; // SIZE: 2
  MAIN_FIX_2  : DWORD = $9EF9C41; // SIZE: 5
  MAIN_FIX_3  : DWORD = $AB76BC1; // SIZE: 5
  MAIN_FIX_4  : DWORD = $AB76951; // SIZE: 6
  MAIN_FIX_5  : DWORD = $AB73D4C; // SIZE: 5
  MAIN_FIX_6  : DWORD = $AB73DED; // SIZE: 6
  MAIN_FIX_7  : DWORD = $9D2EAB4; // SIZE: 7
  MAIN_FIX_8  : DWORD = $AB55E19; // SIZE: 6
  MAIN_FIX_9  : DWORD = $9D2F09C; // SIZE: 7
  MAIN_FIX_A  : DWORD = $AB57AE1; // SIZE: 5
  MAIN_FIX_B  : DWORD = $AB5A4C7; // SIZE: 7
  MAIN_FIX_C  : DWORD = $AB5A8DE; // SIZE: 5
  MAIN_FIX_D  : DWORD = $9FD31AC; // SIZE: 5
  MAIN_FIX_E  : DWORD = $AB76F60; // SIZE: 6
  MAIN_FIX_F  : DWORD = $AB76C7F; // SIZE: 2
  MAIN_FIX_10 : DWORD = $9FD2E0D; // SIZE: 5
  MAIN_FIX_11 : DWORD = $AB76EBA; // SIZE: 6
  MAIN_FIX_12 : DWORD = $AB76C8C; // SIZE: 6
  MAIN_FIX_13 : DWORD = $AB77334; // SIZE: 5
  MAIN_FIX_14 : DWORD = $AB773AB; // SIZE: 6
  MAIN_FIX_15 : DWORD = $ABA16E4; // SIZE: 2
  MAIN_FIX_16 : DWORD = $ABA16EB; // SIZE: 3
  MAIN_FIX_17 : DWORD = $ABA17E1; // SIZE: 2
  MAIN_FIX_18 : DWORD = $ABA17C2; // SIZE: 2
  MAIN_FIX_19 : DWORD = $ABA13F5; // SIZE: 5
  MAIN_FIX_1A : DWORD = $9D332D6; // SIZE: 7
  MAIN_FIX_1B : DWORD = $9D3334F; // SIZE: 5
  MAIN_FIX_1C : DWORD = $9D36077; // SIZE: 7
  MAIN_FIX_1D : DWORD = $AB6AAFE; // SIZE: 6
  MAIN_FIX_1E : DWORD = $A5DAC1E; // SIZE: 2
  MAIN_FIX_1F : DWORD = $AB8C428; // SIZE: 3
  MAIN_FIX_20 : DWORD = $AB8C5A1; // SIZE: 2
  MAIN_FIX_21 : DWORD = $AB8C5C0; // SIZE: 2
  MAIN_FIX_22 : DWORD = $AB8C20C; // SIZE: 5
  MAIN_FIX_23 : DWORD = $AB738A5; // SIZE: 5
  MAIN_FIX_24 : DWORD = $AB738E6; // SIZE: 6
  MAIN_FIX_25 : DWORD = $AB75D8D; // SIZE: 5
  MAIN_FIX_26 : DWORD = $AB75E0E; // SIZE: 6
  MAIN_FIX_27 : DWORD = $9D9EDBC; // SIZE: 7
  MAIN_FIX_28 : DWORD = $A442CC9; // SIZE: 2
  MAIN_FIX_29 : DWORD = $AB78678; // SIZE: 3
  MAIN_FIX_2A : DWORD = $AB78814; // SIZE: 2
  MAIN_FIX_2B : DWORD = $AB784B2; // SIZE: 5
  MAIN_FIX_2C : DWORD = $AB740BB; // SIZE: 6
  MAIN_FIX_2D : DWORD = $9D308A2; // SIZE: 7
  MAIN_FIX_2E : DWORD = $AB5D2D1; // SIZE: 5
  MAIN_FIX_2F : DWORD = $AB7619D; // SIZE: 2
  MAIN_FIX_30 : DWORD = $AB761A7; // SIZE: 3
  MAIN_FIX_31 : DWORD = $AB762D4; // SIZE: 2
  MAIN_FIX_32 : DWORD = $AB762CD; // SIZE: 2
  MAIN_FIX_33 : DWORD = $AB75FCE; // SIZE: 5
  MAIN_FIX_34 : DWORD = $AB73A7D; // SIZE: 7
  MAIN_FIX_35 : DWORD = $9D8FE18; // SIZE: 5
  MAIN_FIX_36 : DWORD = $AB8E95A; // SIZE: 2
  MAIN_FIX_37 : DWORD = $AB8E95F; // SIZE: 3
  MAIN_FIX_38 : DWORD = $AB8EA08; // SIZE: 2
  MAIN_FIX_39 : DWORD = $AB8EA26; // SIZE: 2
  MAIN_FIX_3A : DWORD = $AB8E6FF; // SIZE: 5
  MAIN_FIX_3B : DWORD = $9D3522E; // SIZE: 7
  MAIN_FIX_3C : DWORD = $AB6729F; // SIZE: 6
  MAIN_FIX_3D : DWORD = $9D3596C; // SIZE: 7
  MAIN_FIX_3E : DWORD = $AB68ED6; // SIZE: 6
  MAIN_FIX_3F : DWORD = $9D33D59; // SIZE: 7
  MAIN_FIX_40 : DWORD = $9D33DD2; // SIZE: 5
  MAIN_FIX_41 : DWORD = $9D32846; // SIZE: 7
  MAIN_FIX_42 : DWORD = $AB61DEB; // SIZE: 5
  MAIN_FIX_43 : DWORD = $AB770C9; // SIZE: 6
  MAIN_FIX_44 : DWORD = $AB7435C; // SIZE: 2
  MAIN_FIX_45 : DWORD = $9DB216A; // SIZE: 5
  MAIN_FIX_46 : DWORD = $AB74962; // SIZE: 5
  MAIN_FIX_47 : DWORD = $AB743CD; // SIZE: 6

Part of crash func, if anyone use a server with GMO main.exe can PM me.. so i check RF and SUM, DL and other char bugs..

This list is only part of what needs to be patched!
 
Last edited:
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
U need apply patches manualy from the post above yours ;) they was not added to released main.exe

Code:
MAIN_FIX_47 : DWORD = $AB743CD; // SIZE: 6
U simply need NOP bytes at OFFSET! "SIZE" represent instr count u need to nop ;) In this case 6 bytes!

GL.

PS. i stop dev it as there is no Ex700 servers. xD Bye bye!
 
Last edited:
Newbie Spellweaver
Joined
Aug 15, 2008
Messages
61
Reaction score
6
U need apply patches manualy from the post above yours ;) they was not added to released main.exe

Code:
MAIN_FIX_47 : DWORD = $AB743CD; // SIZE: 6
U simply need NOP bytes at OFFSET! "SIZE" represent instr count u need to nop ;) In this case 6 bytes!

GL.

PS. i stop dev it as there is no Ex700 servers. xD Bye bye!

Please don't stop it
i have eX 700 Plus server too
your work is very need for all us
 
Joined
Oct 29, 2007
Messages
1,290
Reaction score
1,311
SmallHabit you plain continue with Ex700 Plus public Server Files?, and... mauka: don't stop with this dev... this is really good and very necesary for all... I can release more customs for client side for all, and I think that our 3 can be made so much utils things for all community. or maybe mu online dev die coming soon.. :(
 
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
I personaly stop this dev, untill there will be public available Ex700 servers.
Thous who i think deserve something more, got something simply and good from me.. Maybe they will continue this dev xD

*No reups on RZ!
 
Last edited:
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
More unused crap
Code:
  DISAPEAR_1: DWORD = $09C29879;
  DISAPEAR_2: DWORD = $09C29970;
  DISAPEAR_3: DWORD = $09C29A66;
  DISAPEAR_4: DWORD = $09C29B06;
  DISAPEAR_5: DWORD = $09C29BB8;
  DISAPEAR_6: DWORD = $09C29C9A;
  DISAPEAR_7: DWORD = $09C29D71;
  DISAPEAR_8: DWORD = $09C29E0F;
  DISAPEAR_9: DWORD = $09C29EB1;

  DISAPEAR_PATCH: BYTE = $C3;

Set "RETN" at these offset, its C3 xx F3 31 xx packets, unused on private servers same as 0x32

PS. i got no idea what these 0xF3, 0x31 packet does, but its not realy used by GS nor main.exe.. must be some wzshit
 
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
Code:
  INSANE_ERROR_0: DWORD = $0AB6AA79;
  INSANE_PATCH_0: array [0 .. 4] of Byte = ($E9, $CF, $00, $00, $00);
  INSANE_ERROR_1: DWORD = $09D34C0C;
  INSANE_PATCH_1: array [0 .. 4] of Byte = ($EB, $4B, $90, $90, $90);
 
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
Main.exe of GMO have been updated, though version still same... I will work on new main.exe now xD

Unpacked Main:
Code:
http://www.mirrorupload.net/file/BQCIT37C/DumpedRZ.rar
Patch:
Code:
ftp://patch.muonline.webzen.net/pub/webzen/1.04.27/

Patches needs to apply:
Code:
  MAIN_FIX_0  : DWORD = $AB345C4; // SIZE: 5
  MAIN_FIX_1  : DWORD = $AB34650; // SIZE: 6
  MAIN_FIX_2  : DWORD = $AB31709; // SIZE: 5
  MAIN_FIX_3  : DWORD = $AB3176E; // SIZE: 6
  MAIN_FIX_4  : DWORD = $AB347FB; // SIZE: 2
  MAIN_FIX_5  : DWORD = $AB3483D; // SIZE: 2
  MAIN_FIX_6  : DWORD = $AB34713; // SIZE: 6
  MAIN_FIX_7  : DWORD = $AB13451; // SIZE: 7
  MAIN_FIX_8  : DWORD = $9D2852D; // SIZE: 5
  MAIN_FIX_9  : DWORD = $AB1451F; // SIZE: 7
  MAIN_FIX_A  : DWORD = $AB146AB; // SIZE: 5
  MAIN_FIX_B  : DWORD = $9D296B7; // SIZE: 7
  MAIN_FIX_C  : DWORD = $9D29725; // SIZE: 5
  MAIN_FIX_D  : DWORD = $AB34C2C; // SIZE: 5
  MAIN_FIX_E  : DWORD = $AB34C86; // SIZE: 6
  MAIN_FIX_F  : DWORD = $AB34921; // SIZE: 5
  MAIN_FIX_10 : DWORD = $AB34986; // SIZE: 6
  MAIN_FIX_11 : DWORD = $AB34F6F; // SIZE: 5
  MAIN_FIX_12 : DWORD = $AB34FFF; // SIZE: 6
  MAIN_FIX_13 : DWORD = $AB5EDCB; // SIZE: 2
  MAIN_FIX_14 : DWORD = $AB5EDD5; // SIZE: 3
  MAIN_FIX_15 : DWORD = $AB5EFBE; // SIZE: 2
  MAIN_FIX_16 : DWORD = $AB5EFA5; // SIZE: 2
  MAIN_FIX_17 : DWORD = $AB5EB71; // SIZE: 5
  MAIN_FIX_18 : DWORD = $9D2CC89; // SIZE: 7
  MAIN_FIX_19 : DWORD = $AB1E51E; // SIZE: 6
  MAIN_FIX_1A : DWORD = $9D2FAC8; // SIZE: 7
  MAIN_FIX_1B : DWORD = $AB268C9; // SIZE: 5
  MAIN_FIX_1C : DWORD = $A589138; // SIZE: 2
  MAIN_FIX_1D : DWORD = $A58913A; // SIZE: 3
  MAIN_FIX_1E : DWORD = $AB49100; // SIZE: 2
  MAIN_FIX_1F : DWORD = $AB4911F; // SIZE: 2
  MAIN_FIX_20 : DWORD = $AB48CDD; // SIZE: 5
  MAIN_FIX_21 : DWORD = $AB311D6; // SIZE: 5
  MAIN_FIX_22 : DWORD = $AB31236; // SIZE: 6
  MAIN_FIX_23 : DWORD = $AB338E7; // SIZE: 5
  MAIN_FIX_24 : DWORD = $AB33952; // SIZE: 6
  MAIN_FIX_25 : DWORD = $9DF94F2; // SIZE: 2
  MAIN_FIX_26 : DWORD = $9DF94F4; // SIZE: 3
  MAIN_FIX_27 : DWORD = $AB33E3D; // SIZE: 2
  MAIN_FIX_28 : DWORD = $AB33E44; // SIZE: 2
  MAIN_FIX_29 : DWORD = $AB33B27; // SIZE: 5
  MAIN_FIX_2A : DWORD = $AB192EB; // SIZE: 7
  MAIN_FIX_2B : DWORD = $9D2A2FB; // SIZE: 5
  MAIN_FIX_2C : DWORD = $AB34AC1; // SIZE: 2
  MAIN_FIX_2D : DWORD = $9FB0D5A; // SIZE: 2
  MAIN_FIX_2E : DWORD = $AB34A08; // SIZE: 5
  MAIN_FIX_2F : DWORD = $AB313AB; // SIZE: 7
  MAIN_FIX_30 : DWORD = $A400419; // SIZE: 2
  MAIN_FIX_31 : DWORD = $AB36529; // SIZE: 3
  MAIN_FIX_32 : DWORD = $AB36693; // SIZE: 2
  MAIN_FIX_33 : DWORD = $AB362BD; // SIZE: 5
  MAIN_FIX_34 : DWORD = $9D83836; // SIZE: 5
  MAIN_FIX_35 : DWORD = $AB4B643; // SIZE: 2
  MAIN_FIX_36 : DWORD = $AB4B645; // SIZE: 3
  MAIN_FIX_37 : DWORD = $AB4B780; // SIZE: 2
  MAIN_FIX_38 : DWORD = $AB4B774; // SIZE: 2
  MAIN_FIX_39 : DWORD = $AB4B47C; // SIZE: 5
  MAIN_FIX_3A : DWORD = $AB23C88; // SIZE: 7
  MAIN_FIX_3B : DWORD = $AB23FCA; // SIZE: 6
  MAIN_FIX_3C : DWORD = $AB257F4; // SIZE: 7
  MAIN_FIX_3D : DWORD = $AB258F2; // SIZE: 5
  MAIN_FIX_3E : DWORD = $AB1FD55; // SIZE: 7
  MAIN_FIX_3F : DWORD = $9D2D797; // SIZE: 5
  MAIN_FIX_40 : DWORD = $9D2C1E5; // SIZE: 7
  MAIN_FIX_41 : DWORD = $AB1C95B; // SIZE: 6
  MAIN_FIX_42 : DWORD = $AB33E3D; // SIZE: 2
  MAIN_FIX_43 : DWORD = $AB33E44; // SIZE: 2
// SIZE: 2 - represent how many bytes needs to NOP at offset, in this case 2
Code:
  DISAPEAR_0: DWORD = $09BF507F;
  DISAPEAR_1: DWORD = $09C24E6C;
  DISAPEAR_ARR_1 : array [0 .. 4] of Byte = ($E9, $B6, $00, $00, $00);
  DISAPEAR_2: DWORD = $09C24F61; // $09C29970;
  DISAPEAR_3: DWORD = $09C2504D; // $09C29A66;
  DISAPEAR_4: DWORD = $09C25102; // $09C29B06;
  DISAPEAR_5: DWORD = $09C251B7; // $09C29BB8;
  DISAPEAR_6: DWORD = $09C2529C; // $09C29C9A;
  DISAPEAR_7: DWORD = $09C2536E; // $09C29D71;
  DISAPEAR_8: DWORD = $09C2540F; // $09C29E0F;
  DISAPEAR_9: DWORD = $09C254A8; // $09C29EB1;
  DISAPEAR_ARR: array [0 .. 4] of Byte = ($C3, $90, $90, $90, $90);

Additional patches..
Code:
  INSANE_ERROR_1: DWORD = $09D2FB68;
  INSANE_PATCH_1: array [0 ..  1] of Byte = ($C3, $90);
  INSANE_ERROR_2: DWORD = $09D2E667;
  INSANE_PATCH_2: array [0 .. 11] of Byte = ($C3, $90, $90, $90, $90, $90, $90, $90, $90, $90, $90, $90);
  INSANE_ERROR_3: DWORD = $09D2F486;
  INSANE_PATCH_3: array [0 ..  1] of Byte = ($C3, $90);
  INSANE_ERROR_4: DWORD = $0AB23F35;
  INSANE_PATCH_4: array [0 ..  4] of Byte = ($C3, $90, $90, $90, $90);

 ERROR_DECRYPTED: DWORD =  $009E092B; //$009E314F; //Log decrypted strings
 ERROR_DECRYPTED_ARR: array [0 .. 0] of Byte = ($C3);

 GG1 = $004D94FA; //$004D92CB;
 GGSucces  : array [0 .. 5] of Byte = ($E9, $8B, $00, $00, $00, $90);
 GG2 = $004D94B7; //$004D9288;
 GGStart   : array [0 .. 1] of Byte = ($EB, $19);
 MU  = $004D90E0; //$004D8EB1;
 MULaunch  : array [0 .. 1] of Byte = ($EB, $5B);
PS. Since this is for developers, i dont bother to apply patches! Do it your self
 
Last edited:
Newbie Spellweaver
Joined
Oct 28, 2007
Messages
15
Reaction score
0
Ip = ?????????????
Version = ???????????????
Serial = ????????????????
 
NN - Nord & Noob
Loyal Member
Joined
Jul 15, 2004
Messages
1,207
Reaction score
689
Ip = ?????????????
Version = ???????????????
Serial = ????????????????
This is for developers, if u cant find serial or version u got into wrong topic ;)
PS.
Code:
  DISAPEAR_0: DWORD = $09BF507F;
  DISAPEAR_1: DWORD = $09C24E6C;
  DISAPEAR_ARR_1 : array [0 .. 4] of Byte = ($E9, $B6, $00, $00, $00);
  DISAPEAR_2: DWORD = $09C24F61; // $09C29970;
  DISAPEAR_3: DWORD = $09C2504D; // $09C29A66;
  DISAPEAR_4: DWORD = $09C25102; // $09C29B06;
  DISAPEAR_5: DWORD = $09C251B7; // $09C29BB8;
  DISAPEAR_6: DWORD = $09C2529C; // $09C29C9A;
  DISAPEAR_7: DWORD = $09C2536E; // $09C29D71;
  DISAPEAR_8: DWORD = $09C2540F; // $09C29E0F;
  DISAPEAR_9: DWORD = $09C254A8; // $09C29EB1;
  DISAPEAR_ARR: array [0 .. 4] of Byte = ($C3, $90, $90, $90, $90);
is wrong.. i later post correct patches

The corect code is
Code:
  MAIN_FIX_0  : DWORD = $AB345C4; // SIZE: 5
  MAIN_FIX_1  : DWORD = $AB34650; // SIZE: 6
  MAIN_FIX_2  : DWORD = $AB31709; // SIZE: 5
  MAIN_FIX_3  : DWORD = $AB3176E; // SIZE: 6
  MAIN_FIX_4  : DWORD = $AB347FB; // SIZE: 2
  MAIN_FIX_5  : DWORD = $AB3483D; // SIZE: 2
  MAIN_FIX_6  : DWORD = $AB34713; // SIZE: 6
  MAIN_FIX_7  : DWORD = $AB13451; // SIZE: 7
  MAIN_FIX_8  : DWORD = $9D2852D; // SIZE: 5
  MAIN_FIX_9  : DWORD = $AB1451F; // SIZE: 7
  MAIN_FIX_A  : DWORD = $AB146AB; // SIZE: 5
  MAIN_FIX_B  : DWORD = $9D296B7; // SIZE: 7
  MAIN_FIX_C  : DWORD = $9D29725; // SIZE: 5
  MAIN_FIX_D  : DWORD = $AB34C2C; // SIZE: 5
  MAIN_FIX_E  : DWORD = $AB34C86; // SIZE: 6
  MAIN_FIX_F  : DWORD = $AB34921; // SIZE: 5
  MAIN_FIX_10 : DWORD = $AB34986; // SIZE: 6
  MAIN_FIX_11 : DWORD = $AB34F6F; // SIZE: 5
  MAIN_FIX_12 : DWORD = $AB34FFF; // SIZE: 6
  MAIN_FIX_13 : DWORD = $AB5EDCB; // SIZE: 2
  MAIN_FIX_14 : DWORD = $AB5EDD5; // SIZE: 3
  MAIN_FIX_15 : DWORD = $AB5EFBE; // SIZE: 2
  MAIN_FIX_16 : DWORD = $AB5EFA5; // SIZE: 2
  MAIN_FIX_17 : DWORD = $AB5EB71; // SIZE: 5
  MAIN_FIX_18 : DWORD = $9D2CC89; // SIZE: 7
  MAIN_FIX_19 : DWORD = $AB1E51E; // SIZE: 6
  MAIN_FIX_1A : DWORD = $9D2FAC8; // SIZE: 7
  MAIN_FIX_1B : DWORD = $AB268C9; // SIZE: 5
  MAIN_FIX_1C : DWORD = $A589138; // SIZE: 2
  MAIN_FIX_1D : DWORD = $A58913A; // SIZE: 3
  MAIN_FIX_1E : DWORD = $AB49100; // SIZE: 2
  MAIN_FIX_1F : DWORD = $AB4911F; // SIZE: 2
  MAIN_FIX_20 : DWORD = $AB48CDD; // SIZE: 5
  MAIN_FIX_21 : DWORD = $AB311D6; // SIZE: 5
  MAIN_FIX_22 : DWORD = $AB31236; // SIZE: 6
  MAIN_FIX_23 : DWORD = $AB338E7; // SIZE: 5
  MAIN_FIX_24 : DWORD = $AB33952; // SIZE: 6
  MAIN_FIX_25 : DWORD = $9DF94F2; // SIZE: 2
  MAIN_FIX_26 : DWORD = $9DF94F4; // SIZE: 3
  MAIN_FIX_27 : DWORD = $AB33E3D; // SIZE: 2
  MAIN_FIX_28 : DWORD = $AB33E44; // SIZE: 2
  MAIN_FIX_29 : DWORD = $AB33B27; // SIZE: 5
  MAIN_FIX_2A : DWORD = $AB192EB; // SIZE: 7
  MAIN_FIX_2B : DWORD = $9D2A2FB; // SIZE: 5
  MAIN_FIX_2C : DWORD = $AB34AC1; // SIZE: 2
  MAIN_FIX_2D : DWORD = $9FB0D5A; // SIZE: 2
  MAIN_FIX_2E : DWORD = $AB34A08; // SIZE: 5
  MAIN_FIX_2F : DWORD = $AB313AB; // SIZE: 7
  MAIN_FIX_30 : DWORD = $A400419; // SIZE: 2
  MAIN_FIX_31 : DWORD = $AB36529; // SIZE: 3
  MAIN_FIX_32 : DWORD = $AB36693; // SIZE: 2
  MAIN_FIX_33 : DWORD = $AB362BD; // SIZE: 5
  MAIN_FIX_34 : DWORD = $9D83836; // SIZE: 5
  MAIN_FIX_35 : DWORD = $AB4B643; // SIZE: 2
  MAIN_FIX_36 : DWORD = $AB4B645; // SIZE: 3
  MAIN_FIX_37 : DWORD = $AB4B780; // SIZE: 2
  MAIN_FIX_38 : DWORD = $AB4B774; // SIZE: 2
  MAIN_FIX_39 : DWORD = $AB4B47C; // SIZE: 5
  MAIN_FIX_3A : DWORD = $AB23C88; // SIZE: 7
  MAIN_FIX_3B : DWORD = $AB23FCA; // SIZE: 6
  MAIN_FIX_3C : DWORD = $AB257F4; // SIZE: 7
  MAIN_FIX_3D : DWORD = $AB258F2; // SIZE: 5
  MAIN_FIX_3E : DWORD = $AB1FD55; // SIZE: 7
  MAIN_FIX_3F : DWORD = $9D2D797; // SIZE: 5
  MAIN_FIX_40 : DWORD = $9D2C1E5; // SIZE: 7
  MAIN_FIX_41 : DWORD = $AB1C95B; // SIZE: 6
  MAIN_FIX_42 : DWORD = $AB33E3D; // SIZE: 2
  MAIN_FIX_43 : DWORD = $AB33E44; // SIZE: 2
  MAIN_FIX_44 : DWORD = $AB34E12; // SIZE: 2

  INSANE_ERROR_1: DWORD = $09D2FB5D;
  INSANE_PATCH_1: array [0 .. 5] of Byte = ($EB, $62, $90, $90, $90, $90);
  INSANE_ERROR_2: DWORD = $09D2E622;
  INSANE_PATCH_2: array [0 .. 5] of Byte = ($E9, $F2, $3C, $DF, $00, $90);
  INSANE_ERROR_3: DWORD = $09D2F436;
  INSANE_PATCH_3: array [0 .. 5] of Byte = ($E9, $F2, $3C, $DF, $00, $90);
  INSANE_ERROR_4: DWORD = $09D2EDAC;
  INSANE_PATCH_4: array [0 .. 4] of Byte = ($E9, $A6, $51, $DF, $00);

  DISAPEAR_1: DWORD = $09C24E5D;
  DISAPEAR_2: DWORD = $09C24F4E; // $09C29970;
  DISAPEAR_3: DWORD = $09C25043; // $09C29A66;
  DISAPEAR_4: DWORD = $09C250F4; // $09C29B06;
  DISAPEAR_5: DWORD = $09C251A9; // $09C29BB8;
  DISAPEAR_6: DWORD = $09C25289; // $09C29C9A;
  DISAPEAR_7: DWORD = $09C2535B; // $09C29D71;
  DISAPEAR_8: DWORD = $09C25401; // $09C29E0F;
  DISAPEAR_9: DWORD = $09C2549C; // $09C29EB1;
  Str_9C24E5D : array [0 .. 0] of Byte = ($C3);

this solves for me 100% bugs, but som ppl have problems.. i think its OS related, but not shore!
 
Last edited:
Back
Top