Fixing main.exe (Ex700Plus) crashes

Page 1 of 2 12 LastLast
Results 1 to 25 of 30
  1. #1
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Fixing main.exe (Ex700Plus) crashes

    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 by mauka; 14-02-13 at 05:23 AM. Reason: Updated main.exe, added more fixes


  2. #2
    CAARL, THAT KILLS PEOPLE! SmallHabit is offline
    MemberRank
    Oct 2010 Join Date
    LatviaLocation
    231Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    //---- 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? :)

  3. #3
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Updated

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

    Code:
    http://www.mirrorupload.net/file/UNBPBTAR/UnpackedMain.exe
    Last edited by mauka; 02-02-13 at 10:03 PM.

  4. #4
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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 by mauka; 03-02-13 at 03:53 AM.

  5. #5
    Account Upgraded | Title Enabled! ggragonss is offline
    MemberRank
    Mar 2012 Join Date
    HongKongLocation
    380Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Thanks for your update. All you are good men.
    Attachment 122952
    Attachment 122953

  6. #6
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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 by mauka; 03-02-13 at 08:40 AM.

  7. #7
    CAARL, THAT KILLS PEOPLE! SmallHabit is offline
    MemberRank
    Oct 2010 Join Date
    LatviaLocation
    231Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Hey ^_^ I'm here... have test server to test this main ^_^

  8. #8
    Valued Member CaHeK is offline
    MemberRank
    Aug 2008 Join Date
    MoldovaLocation
    113Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Quote Originally Posted by mauka View Post
    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

  9. #9
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    I meant, need server where test main.exe as i dont have high level RF, SUM, DL, ELF on gmo :F

  10. #10
    Darkness Member Kiosani is offline
    MemberRank
    Oct 2007 Join Date
    ArgentinaLocation
    1,276Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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.. :(

  11. #11
    Account Upgraded | Title Enabled! ezramod is offline
    MemberRank
    Jun 2010 Join Date
    322Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    who can share a full client pack?

  12. #12
    Account Upgraded | Title Enabled! ggragonss is offline
    MemberRank
    Mar 2012 Join Date
    HongKongLocation
    380Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    download from webzen please

  13. #13
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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 by mauka; 05-02-13 at 07:14 AM.

  14. #14
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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

  15. #15
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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);

  16. #16
    C/C++,PHP,HTML,Java,ASM zasmqniq is offline
    MemberRank
    Jan 2009 Join Date
    BulgariaLocation
    435Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    nice mauka thanks you :)

  17. #17
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    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 by mauka; 14-02-13 at 12:47 PM. Reason: updated offsets!

  18. #18
    C/C++,PHP,HTML,Java,ASM zasmqniq is offline
    MemberRank
    Jan 2009 Join Date
    BulgariaLocation
    435Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    WoW Thanks you!!!!!

  19. #19
    Enthusiast mubest is offline
    MemberRank
    Oct 2007 Join Date
    31Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Ip = ?????????????
    Version = ???????????????
    Serial = ????????????????

  20. #20
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Quote Originally Posted by mubest View Post
    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 by mauka; 28-02-13 at 02:16 PM.

  21. #21
    Account Upgraded | Title Enabled! MAXDANGER is offline
    MemberRank
    Jun 2006 Join Date
    CACOAL RONDONIALocation
    331Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    I'm very happy, Seeing finally the forum
    coming back to the origins.

    Where was worked by the collectivity
    the community.

    In a project wherein everybody helped
    fix, test, and share:
    learning, files and so on.

    Creating an option for those
    they who need a stable, secure, and free version.

    because the real reason of one community exist
    is for collectivity sharing discoveries and growth
    all together.

    thank you
    guys

  22. #22
    NN - Nord & Noob mauka is offline
    MemberRank
    Jul 2004 Join Date
    1,735Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Since gmo moves to S8 and im the only one who where publishing fixes, this topic can be locked or deleted as i dont work on Ex700 anymore

  23. #23
    Enthusiast mumcc is offline
    MemberRank
    Nov 2012 Join Date
    Кишинёв,Location
    33Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    mauka you have server files ex700 plis post to forum

  24. #24
    Lage Company™ afonsolage is offline
    MemberRank
    Mar 2012 Join Date
    Fortaleza, BRALocation
    244Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    Quote Originally Posted by mumcc View Post
    mauka you have server files ex700 plis post to forum
    Oh god, why?

  25. #25
    ^_^ ashlay is offline
    MemberRank
    Jun 2010 Join Date
    BrazilLocation
    888Posts

    Re: Fixing main.exe (Ex700Plus) crashes

    delete
    Last edited by ashlay; 01-02-15 at 10:41 PM.



Page 1 of 2 12 LastLast

Advertisement