You can get ghidra

Download the .zip, you do not need the source. At the time of writing this guide the latest version of ghidra is 11.3. I am not sure if too much will change with later versions but all screenshots will be using this version.
You will also need JDK 21+ x64 which you can download

The exact client I will be using you can download

I assume this will work for earlier versions of Eudemons but the address locations will not be the same as the ones in this guide. You should still be able to find them in concept by following this guide.
If you do not already have JDK 21+ installed you should do so now.
First start by running GhidraRun.bat in the Ghidra folder you extracted. You can close the ghidra help window and you show see a window that looks something like this:
You can change to a dark theme by selecting Edit>Theme>Switch
Next we will be creating a new project. Go to File>New Project or hit Ctrl+N.
Keep non-shared project selected and hit next. Select a directory and give the project a name.
Make sure to create a backup of soul.exe so that if you mess up you can revert back to the original.
Next go to File>Import File and select soul.exe from your mannequin client or just drag soul.exe into Ghidra.
Make sure the format is Portable Executable(PE) and hit OK and wait for it to import the exe.
When it is done you will see this window just hit OK.
Next double click on soul.exe or select it and click on the green dragon icon.
This will open the code browser in a new window. You should see something like this:
It will ask you to analyze soul.exe just hit yes. If it does not for some reason just close the code browser and reopen it.
On the analysis options window just click the analyze button.
Analysis takes quite a long time just wait until the bar in the bottom right is finished.
Once analysis is finished go to Search>For Scalars, click on Specific Scalar and type in 1024 and click on the Search button
You should see a window like this:
Under the location column find the address 00425eb2 and click it, it should be the first one. The code browser should take you here:
On the far right window you will notice this kind of looks like code, it is code that has been reassembled by Ghidra using the assembly instructions. You cannot directly modify the reassembled code but we can modify the instructions themself.
You will see two values here, 0x400 and 0x300. You will see these values quite a few times in this guide. That is because 0x400 is 1024 and 0x300 is 768 in hex.
Right click on 0x400 and select Patch Instruction and wait for the assembler to construct. When you get the assembler rating pop up just hit the ok button:
we can now modify any assembly instruction in the whole .exe
Change 0x400 to 0x780 and hit enter and do the same for 0x300 right below it and change that to 0x438, it should look like this:
0x780 is 1920 and 0x438 is 1080 in hex. What we have just done is modified the game window from 1024x768 to 1920x1080. If you do not want to do 1920x1080 resolution you can use this

Just type in your desired resolution numbers and replace accordingly. If you do want to do your own resolution, from now on all hex numbers we modify will need to be whatever you decided on instead of 0x780 and 0x438.
Next we need to force the game resolution to be 1920x1080 so in the scalar search find address 00633fab and click on it. There are several locations in this function that we need to change.
First change 00633fab and 00633fb7 to 0x780 and 0x438 like I have here:
then we will do the same for addresses 00634007 and 00634012
then the last two addresses we need to modify are 0063407f and 00634089
Now if we were to export the exe here it would be fullscreen but it would be very glitchy because we still need to modify the tile grid render distance
We need to do a new scalars search so got to Search>For Scalars and select Specifc Scalar and type in 800 and click search.
In the location column scroll down to address 008168ee and click it. You should see two sets of 0x320 and 0x258. We will modify 0x320 to 0x780 and 0x258 to 0x438.
Now we will export the exe. select File>Export Program. Set the Format to Original File and choose where you would like the exe to output
replace the exe in your client and you're done.
If you would like to modify crazy tao, follow this guide the same except look for these addresses and values:
Changes the actual window size to 1920x1080:
00419e98 change 0x400 to 0x780
00419e9f change 0x300 to 0x438
changes the game resolution to 1920x1080:
0058f2f8 0x400 to 0x780
0058f302 0x300 to 0x438
0058f36f 0x400 to 0x780
0058f379 0x300 to 0x438
modifies the tile grid size:
006e7e54 0x320 to 0x780
006e7e61 0x320 to 0x780
006e7e6b 0x258 to 0x438
006e7e80 0x258 to 0x438
I have attached zips with modified ui elements and ini files as well as the 1920x1080 exes for anyone who is too lazy to do this lol
I have a backup for all of the images and programs used and a txt version of the guide

I definitely am not a ui designer so my positioning could probably be better and I am sure I missed things but you can change them with /enablefocus and just edit the corresponding IDs in GUI.ini. /resetgui to update the new position without reloading the client and /disablefocus when you are done.
I believe the chatbox position is hardcoded and I don't have any immediate plans to fix it but if anyone would like to give it a try feel free. I have some reverse engineering related ebooks I could provide if anyone was interest.






