- Joined
- Dec 14, 2019
- Messages
- 30
- Reaction score
- 375
This is a clean v374 CabalMain.exe and a C source code for gamehook.dll which applies all kinds of patches to the game. Functionally, this is almost the same client as in X-Pasa 6.7.2 release, just cleaner.
It should be an easier starting point for those who want to modify the client.
All of those custom patches have a comment describing what they do and they can be easily modified or commented-out.
CabalMain.exe is functionally the same as in "CabalMain sem xtrap ep13" from vodikatm. It has the default XOR/Magic Key/husky/breaklee.
A few changes were made to minimize AV detections on virustotal (this is some technical gibberish, beware):
Also modified a few singular bytes to have English as the default language. Otherwise, the client doesn't have any custom patches or rewritten functions. The more handmade modifications I make, the more the AVs complain, so all modifications go to the DLL where AVs don't complain at all.
gamehook.dll currently does the following:
All of those patches are in main.c. Most of them were taken from various exe/dll files flying around Ragezone. As for exes I essentially diff-ed a lot of them, checked the modified addresses, looked up Ragezone, otherwise tried to figure out by myself. A ton of these modifications were first posted here by vodikatm .
There's also a few I couldn't look up nor figure out - you will see a few comments in main.c starting with `??`. As for DLLs - I looked into various 8xk.dll, bike.dll, d3dx9_44.dll, etc and extracted the relevant modifications.
It should be an easier starting point for those who want to modify the client.
All of those custom patches have a comment describing what they do and they can be easily modified or commented-out.
CabalMain.exe is functionally the same as in "CabalMain sem xtrap ep13" from vodikatm. It has the default XOR/Magic Key/husky/breaklee.
A few changes were made to minimize AV detections on virustotal (this is some technical gibberish, beware):
- removed that extra .newimp section with custom DLL dependencies. The exe here uses the original DLL dependency list. The only custom DLL is gamehook.dll and there is no space for more - if you ever need to hook additional DLLs (uh please don't), just make gamehook.dll depend on them.
- removed .edata section for exported symbols - that had no reason to exist and also triggered one AV
- moved .rsrc section to the end of file - this is how most exes are made, and it also makes a few AVs happy
- replaced a lot of unused data in the exe with zeroes - there was a lot of completely unused but questionable strings from X-Trap, some XML error reporting, some URLs to cabal websites, even twitter URLs were removed - this made at least a couple of important AVs happy with the exe
- removed "requireAdministrator". The exe should now run as regular user, no more Windows dialogue when double-clicking it
- removed .edata section for exported symbols - that had no reason to exist and also triggered one AV
- moved .rsrc section to the end of file - this is how most exes are made, and it also makes a few AVs happy
- replaced a lot of unused data in the exe with zeroes - there was a lot of completely unused but questionable strings from X-Trap, some XML error reporting, some URLs to cabal websites, even twitter URLs were removed - this made at least a couple of important AVs happy with the exe
- removed "requireAdministrator". The exe should now run as regular user, no more Windows dialogue when double-clicking it
Also modified a few singular bytes to have English as the default language. Otherwise, the client doesn't have any custom patches or rewritten functions. The more handmade modifications I make, the more the AVs complain, so all modifications go to the DLL where AVs don't complain at all.
gamehook.dll currently does the following:
Code:
- adds room for more bikes
- enables +20 upgrade
- adds room for more costumes
- loads more woman/man.ech
- enables minimap for any new maps
- removes some "file is corrupt" unnecessary data checks
- increases max zoom-out
- enables costumes in TG
- enables more slots for essence/blended runes
- fixes building TG towers at lvl 191+
- enables custom event/boss msgs
- modifies the xors (currently to 92, 3b, 18, 2f)
- modifies the game language (currently set to just English)
- ^ lifts the single language restriction
- disables "select channel" button in TG
- shows mob HP in the top bar
- enables auto BM2 retarget
- changes the title of the game window
- makes the "husky" parameter added by default - start the game by just double clicking the exe
- allows running multiple clients at once
- contains a couple of crash fixes
All of those patches are in main.c. Most of them were taken from various exe/dll files flying around Ragezone. As for exes I essentially diff-ed a lot of them, checked the modified addresses, looked up Ragezone, otherwise tried to figure out by myself. A ton of these modifications were first posted here by vodikatm .
There's also a few I couldn't look up nor figure out - you will see a few comments in main.c starting with `??`. As for DLLs - I looked into various 8xk.dll, bike.dll, d3dx9_44.dll, etc and extracted the relevant modifications.
Attachments
Last edited by a moderator:

