Sign in to follow this  
ryan009ryan

DLL source code

Recommended Posts

Hi, I want to see source code storm.dll file from "war craft 3 Frozen Throne". But i have not respected storm.lib file. Can i see it source code ? Can i make respected LIB file ? Basically i want to track game data from game environment through this DLL file. I am looking how WAR CRAFT 3 maintain his database record for each player. Give me some technical stuffs regarding this DLL. Thanks

Share this post


Link to post
Share on other sites
In a word, No.

Since you don't have the development experience neccesary to see why you can't (and shouldn't ask to) do what you are asking, you should go learn some fundamentals of how C/C++ compilers work, particularly how linking and dlls work.

Specifically, a DLL is already compiled to an executable file, so unless you happen to work at blizzard, it will be impossible to accurately recover the original C/C++ source code for that library. Some developers do this intentionally as one of several anti-modding and anti-cheating mechanisms in the game. If you would like to *learn* how a game like Warcraft III may be created, may I suggest downloading and compiling the source code to GLest, which is a damn good open-source 3D fantasy RTS.

Share this post


Link to post
Share on other sites
Some things you can do with a DLL:

- See a list of all the publically exported functions (difficulty: easy)
- See all the string literals (difficulty: easy)
- Figure out the types of the exported functions by examining how they use the stack (difficulty: medium)
- Figure out what it does by examining the machine code (difficulty: hard)

If I was going to reverse engineer a DLL, the first thing I would do is load it in Python with ctypes, and just try calling each exported function with plausible arguments.

Share this post


Link to post
Share on other sites
ok.. I was also guessing same.

I have not source code of WC3 TFT. Can i track gaming data from game environment of WC3TFT like garena does. I want to know win/loss of player and their scores. That's why i guessed to go through storm.dll file. Plz never mind , this topic become out of his title. But this is my main concern. If u have any technical idea plz tell me.

Share this post


Link to post
Share on other sites
People have already reverse engineered header files for storm.dll - you can find them with Google.

However, it probably won't help with what you're doing. Storm.dll is the code for Blizzard's file archiver - you can use it to look through saved games archives or .mpq resource archives, but it doesn't contain functionality to look at a running game environment or functionality to query a battle.net account for player statistics.


Quote:
If I was going to reverse engineer a DLL, the first thing I would do is load it in Python with ctypes, and just try calling each exported function with plausible arguments.

storm.dll exports everything by ordinal, not name and contains code that corrupts the internal state if it's loaded using LoadLibrary.

Share this post


Link to post
Share on other sites
Hi --Nitage--

It seems u know more thing about this.
Can u say what i should see. I have given much time for this track. I am seeing when i returned from game environment only one file is being modified this is inside of "multilayer" folder and this has ".w3z" format. I can't see its data format. How will i see record of player? I need help.

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this