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!

How to edit Cabalmain.exe (Xor's, ech's, load staff, AH 4 slots, husky, breaklee)

Trying to be developer ^^
Loyal Member
Joined
Jul 21, 2010
Messages
1,072
Reaction score
360
Hello,
it's next of my short tutorial which showing how to edit basic things in Cabalmain.exe

What you will need to edit cabalmain.exe property?:
--- Ollydbg (i hope rz staff won't kill me for that ^^) best version.
--- 010 Sweetscape editor (or other hex editor but i recommend to use 010)

Some knowledge at begining

What is XOR Key?: It's a key which help to make our files safe agaist steal or edits.
Xor key is needed to unpack the .enc files.
XOR Key's address in Cabalmain 374:
Code:
004A82FA 83F0 57 XOR EAX,57 - 4th xor
004A830C 83F0 67 XOR EAX,67 - 3rd xor
004A831E 83F0 65 XOR EAX,65 - 2nd xor
004A832F 35 92000000 XOR EAX,92 - 1st xor

What is "load ech's" in cabalmain?: It's a amount of load visual files into our Cabalmain.
for ex. if u want load ech's 14 (man14.ech & woman14.ech) you need to change the load in cabalmain to "CMP EAX,0E"
Code:
005daf38 CMP EAX,0C - Load Man.echs (this load ech's. 12)
005db06a CMP EAX,0C  - load Woman.echs (this load ech's 12)
List of all possible loads in cabalmain:
Code:
CMP EAX,0A = 10
CMP EAX,0B = 11
CMP EAX,0C = 12
CMP EAX,0D = 13
CMP EAX,0E = 14
CMP EAX,0F = 15
CMP EAX,10 = 16

What is "load staff"?: It's an amount of load the wizard "staff" into Cabalmain - Not tested u do at ur own
Code:
008D4E81 => 1h_staff_%s.efx
008D4EF3 => 1h_staff_%s_15.efx

What is "Remove file check ENC"?: FIle check is related to xData if u dont know how to setup it and u have problem with start game cause appear error "File corrupted or missing" just remove it from cabalmain. Below u have address and what to do:
Code:
004A0C84 . 74 0D JE SHORT cabalmai.004A0C93 -------> Press space on it and write NOP and press enter
004A0C86 . 85C0 TEST EAX,EAX
004A0C88 . 74 09 JE SHORT cabalmai.004A0C93 -------> Press space on it and write NOP and press enter
Copyright PunkS7yle

What is "Auction 4 slot load"?: It's allow to add 4 sloted items into Auction House
Code:
006F83e8
jl 006F8358=> Press space and change the value to NOP and press enter

006F8890
jl 006F87FE=> Press space and change the value to NOP and press enter
Someone release it but i can't find the thread, i had it in notepad. If u read it PM ME so i can add copyrights.

What is husky?: "husky" is a startup command in Cabalmain, it allow to open the game and connect to server using language.enc. To avoid stealing ur work or smth u can change the husky command to other 5 character word.

What is breaklee?: as up its startup command in cabalmain, it allow to open the game and connect to server using internal.txt. Breaklee allow to use SPECIAL commands for all users. To avoid connecting with breaklee command better is remove it from cabalmain.

Ok enought knowledge, now let's start editing the Cabalmain, firstly we start with edit the "husky" command
Open Cabalmain.exe in 010 Sweetscape editor (Remember that cabalmain must be unpacked) now press ctrl+f and serach for word "husky" u should find just one result.
Now in ASCII (right side) edit the command by REPLACING EACH LETTER (DO NOT USE BACKSPACE).
You can use just 5 bytes for the new command, it can be everything.
Save & Exit - now u start ur game with new startup command.

Let's now REMOVE the "breaklee" startup command, as up open Cabalmain in 010 editor.
Press ctrl+f and serach for word "breaklee" u should find just one result.
Now in left window side (hex) REPLACE each bytes of the breaklee world with "00"
Before:

After:

Save & Exit - now the breaklee command is disabled.


Ok, let's now start with Ollydbg, open cabalmain using ollydbg (remember cabalmain must be in folder where u have placed cabal files) also remember to run ollydbg as Admin!.
If u have already loaded cabalmain in ollydbg now Press "Ctrl+G" and put address where u want to jump.
Let's change the xor keys so. Ctrl + G and put adress "004A832F" and press enter.

Here u have to edit 4 xor keys, just press on each xor SPACE and change the XOR EAX,85 to your new key, after change press enter and close the window, do the same with all other keys. When u change them all Right Click mouse somewhere -> Copy -> Select ALL
if u have selected everything now again Right Click -> Copy to executable -> Selection
New window appear, on this window Right Click -> Save File - now replace or save it with new name and done :) u have changed xor keys.
By this way u do every modyfications in Cabalmain.

If something is not clear just ask below :)
I hope it helps, have fun.
 
Newbie Spellweaver
Joined
May 26, 2015
Messages
85
Reaction score
4
Ok enought knowledge, now let's start editing the Cabalmain, firstly we start with edit the "husky" command
Open Cabalmain.exe in 010 Sweetscape editor (Remember that cabalmain must be unpacked) now press ctrl+f and serach for word "husky" u should find just one result.
Now in ASCII (right side) edit the command by REPLACING EACH LETTER (DO NOT USE BACKSPACE).
You can use just 5 bytes for the new command, it can be everything.
Save & Exit - now u start ur game with new startup command.
I can't find it :( should I run any templates? Thanks for this :)
 
Trying to be developer ^^
Loyal Member
Joined
Jul 21, 2010
Messages
1,072
Reaction score
360
@Windows8 i might u trying to edit it in evo client I'm right? I said it can be changed only on UNPACKED cabalmain. If u can't find these that mean they are changed. Then serach for "crowpar" it's near breaklee so u can find manualy the husky also.

Btw. Remember if u serach make sure u serach for string/text! Not for hex.
 
Newbie Spellweaver
Joined
May 26, 2015
Messages
85
Reaction score
4
@Windows8 i might u trying to edit it in evo client I'm right? I said it can be changed only on UNPACKED cabalmain. If u can't find these that mean they are changed. Then serach for "crowpar" it's near breaklee so u can find manualy the husky also.

Btw. Remember if u serach make sure u serach for string/text! Not for hex.
I'm using my client unpack main



Got it now thanks :D
 
Trying to be developer ^^
Loyal Member
Joined
Jul 21, 2010
Messages
1,072
Reaction score
360
great tutorial :) i like it..
but how about GM command in cabalmain?
like /_forcecalibur ?

Are u asking for change this command to other?
Well if yes then I have to say it's not needed, this command can be used just with character with GM nation. Anyway answering for your questions GM commands are not placed in cabalmain just in WorldSvr.elf in server side. Open this file in hex editor and I think u are able to change it because its there saved in ASCII but for what? ^^
If u asking if disable breaklee have smth to /_forcecalibur then answer is no.
 
Junior Spellweaver
Joined
Mar 2, 2008
Messages
170
Reaction score
17
i mean enabling command GM.. so that command not from cabalmain... ? so to fix command GM is from server side?
 
Initiate Mage
Joined
Nov 17, 2015
Messages
4
Reaction score
0
Help me after i edit the cabalmain these is happen
Dens666 - How to edit Cabalmain.exe (Xor's, ech's, load staff, AH 4 slots, husky, breaklee) - RaGEZONE Forums
 
Newbie Spellweaver
Joined
Jun 23, 2018
Messages
5
Reaction score
0
I tried to remove the ENC check files, everything failed, can you tell me how to do this in Cabal EU 1.0.0.1632
 
Initiate Mage
Joined
Apr 4, 2024
Messages
4
Reaction score
0
I'd like to personally thank you for this amazing writeup! This is literally the best tutorial I've seen on here!
 
Back
Top