Even though I'm still very new to a lot of the concepts used within these forums, I feel like in the last week I've learned a lot from you guys and I'm very thankful to everyone who's put forward information for the rest of us.
I know none of this will be useful to any of the people who have helped me the most, but hopefully the source code attached will help other newbies as much as it's helped me.
I've only this week started learning asm, but if any of the more experienced guys here could give me any links to study off of the top of their heads for more information on finding the memory addresses of procedures from the wow exe using ida or olly I would really appreciate it. I've read before that there is a function name to function address table somewhere because of the use of lua, but I've been unable to find it. (probably because of my inexperience with the decompilers)
Also while I'm whoring myself out for help, could anyone give me a simple yes/no to the necessity of emulating the tls of the primary thread in the injected thread to be able to use the object manager/etc?(I've only used out of process method for the bot so far) Thanks in advance!
--------------------------------------------------------------------------------------------
The files attached below are not even close to being my original work. the memory framework was taken from another user on this site, the injection project from another site, and the debug host a mix-mash of code I converted from delphi code I found on here along with other information gathered from these forums. I've only changed small parts of them in the effort of writing a bot, and hopefully the source code within will help others save some time.
The memory project is in running condition as of 3.0.3 and is just a simple bot that loops between attacking the nearest target and looting it. The injection project simply injects a dll into wow running process and allows you to run code from within its context. The debug host project is not in working order, but is very similar to the memory project and if you use the tls method source code within the memory project it should work just fine.
I've worked with all of these during the late hours in my spare time for the last week, but I work full time and am college student, so the code is very rough on the eyes. I've commented almost nothing and the code I've written even makes me cringe. Long story short, please be nice, I haven't cleaned up this code, and I'm usually very tired when writing it.
Edit: Please feel to ask questions about the code, I don't bite. Also, I didn't credit any names to the work I've used, so if you had a hand in any of the info within any of these projects, let me know and I will gladly let others know. If anyone can upload the source for wowx I would love you forever, I tried to register for game deception but the email they send was filtered out, and any new account I make is instantly banned(wtf)...
Memory Framework
DLL Injection
Debug Host