[ASM] Add a DLL to TRose

This forum is for main questions (format files, STB / STL and so on).

Moderators: osRose dev team, ospRose dev team, osiRose dev team, Moderators

Forum rules
Client Editing is a delicate subject. osRose and osiRose will not support or use any Client Editing tool or results as a standard. So you are free to experiment, test, and develop there on Client Editing, but at your own risk :)

[ASM] Add a DLL to TRose

Postby wolfwing on Wed Jun 01, 2011 7:08 pm

Since a few people want to add their own functions into TRose I decided to post a guide on "how to hook a DLL into TRose.exe".

Programs needed:
Rose Online (ofcourse :P)
Ollydbg (google it)
RuffProtect (just the DLL)
PE Explorer

So let's start off with opening TRose.exe by clicking File->Open.
Open.JPG

In the above picture you see @TRIGGER_SOFT@ _server 192.168.1.100 added in the "Arguments" bar.

If you run into a exception BEFORE Ollydbg entered the TRose module press Shift+F9.
exception.JPG


Now when we entered the TRose module we need to write some things down.
TRose_Entry.JPG

The underlined hex offset is the entryoint of program, write that down cause we are going to need it later.

Now scroll all the way down until we get to some free space (DB 00)
Just leave the same space between the other commands as shown in the picture,
right click and select Follow in Dump->Selection.
free_space.JPG


Now when you see the dump select around ten 00 boxes and press SPACE .
At the ASCII bar type RuffProtect.DLL (yes it is case sensitive) and press enter.
DLL_Name_Add.JPG


Now scroll down a bit a right click on DB 00 "Assemble" or press SPACE.
Then type in the bar push offset of your DLL, so in my case it will be "push 0062DCE8" if the checkbox fill with NOP's is checked uncheck it. And click Assemble, don't forget to write down the offset of your DLL.
Push.JPG


Now press CTRL+N to find names in module TROSE.
Scroll down and find "KERNEL32.LoadLibraryA" and (select it and) press enter.
The References tab will show up and you see DLL loading commands, just double click on and write down the hex command.
LoadLib.JPG


Continued in next post...
Last edited by wolfwing on Wed Jun 01, 2011 7:30 pm, edited 2 times in total.
wolfwing
Clown
Clown
 
Posts: 502
Joined: Tue Mar 03, 2009 9:50 am

Re: [ASM] Add a DLL to TRose

Postby wolfwing on Wed Jun 01, 2011 7:08 pm

Now press CTRL+G and put in the offset of your DLL and press enter.
Now right click Binary->Edit and type in FF 15
Re edit and complete the rest of the command.
LoadLib2.JPG


Now goto the nex DB 00 right click and click Assemble.
Type in the bar JMP OffSet of EntryPoint, in my case JMP 00502F88.
Last_Command.JPG


When we have done that you need to write down the offset of your PUSH command.
Then right click Copy->Select All.
Then right click Copy to Executable->Selection and a new window will pop up.
In the window that just popped up right click and select Save File and name it TRose2.exe and hit save.
Save_Trose2.JPG


Close Ollydbg and open PE Explorer and open TRose2.exe .
Now we see the adress of the program entry point underlined in the picture.
PE_Explorer1.JPG


Now change to entry point to the offset of your push command, press enter and hit yes at the warning pop up.
Hit save (CTRL+S) and close.
Backup your original TRose.exe to any folder (just don't put it in 3DDATA, you can put it in the chat folder) and rename TRose2.exe to TRose.exe .

And there you have it, you just hooked a DLL into TRose.exe .
wolfwing
Clown
Clown
 
Posts: 502
Joined: Tue Mar 03, 2009 9:50 am

Re: [ASM] Add a DLL to TRose

Postby lazypenguin on Thu Jun 02, 2011 7:44 pm

awesome! Thanks.
lazypenguin
Pomic
Pomic
 
Posts: 78
Joined: Mon Aug 10, 2009 6:51 am

Re: [ASM] Add a DLL to TRose

Postby larsgevers on Mon Jun 06, 2011 4:16 pm

This it gaves me:
Image
User avatar
larsgevers
Rackie
Rackie
 
Posts: 278
Joined: Fri Mar 20, 2009 2:10 pm

Re: [ASM] Add a DLL to TRose

Postby wolfwing on Thu Jun 09, 2011 6:18 am

That's pretty weird, wich client are you using?
Wich DLL did you try to inject?
Did you try to find ant typo's? Remember the name of the DLL is case sensitive.
wolfwing
Clown
Clown
 
Posts: 502
Joined: Tue Mar 03, 2009 9:50 am

Re: [ASM] Add a DLL to TRose

Postby Raven0123 on Tue Jun 28, 2011 2:51 am

wolfwing wrote:That's pretty weird, wich client are you using?
Wich DLL did you try to inject?
Did you try to find ant typo's? Remember the name of the DLL is case sensitive.


Its not weird when your trying to inject ruff protect into a evo client, when ruff protect is for an irose client.
User avatar
Raven0123
osiRose dev
osiRose dev
 
Posts: 379
Joined: Tue Sep 11, 2007 11:06 pm
Location: USA, NJ

Re: [ASM] Add a DLL to TRose

Postby deivares on Wed Apr 11, 2018 6:50 pm

I know this tutorial is quite old .. I did everything like the tutorial, but, whenever I try to open the game it says : "Client RoseOnline stopped working" .. I did everything with Ollydbg and the DLL appears in the TRose.exe opened with Hex Editor .. But the game is not working any longer .. Does anybody know this problem ?? :x :x :x
deivares
Smoulie
Smoulie
 
Posts: 45
Joined: Wed May 15, 2013 12:17 am

Re: [ASM] Add a DLL to TRose

Postby deivares on Wed Apr 11, 2018 8:02 pm

And on my case I'm trying to inject the BugGUARD.dll into TRose.exe :(
deivares
Smoulie
Smoulie
 
Posts: 45
Joined: Wed May 15, 2013 12:17 am

Re: [ASM] Add a DLL to TRose

Postby deivares on Sat Apr 28, 2018 9:56 pm

Is this forum abandoned ??
deivares
Smoulie
Smoulie
 
Posts: 45
Joined: Wed May 15, 2013 12:17 am

Re: [ASM] Add a DLL to TRose

Postby lazypenguin on Sat Apr 28, 2018 10:28 pm

No it's not but this is an old post on a difficult topic. You might have to figure things out on your own if nobody offers the solution for you.
lazypenguin
Pomic
Pomic
 
Posts: 78
Joined: Mon Aug 10, 2009 6:51 am

Next

Return to Client Editing Question Zone

Who is online

Users browsing this forum: No registered users and 5 guests