Wow Stopped working issues menu

Shout-Out

User Tag List

Results 1 to 8 of 8
  1. #1
    demonguy's Avatar Member
    Reputation
    2
    Join Date
    Feb 2012
    Posts
    111
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Wow Stopped working issues

    Recently i wrote a couple of hooking functions...But Wow always stopped working frequently, about 1 or 2 times during the whole Dragon Soul encounter...Since it's not an error so i don't know what to do, but i finally find the function which cause this problem...so i need some help, what's wrong with this function ??

    Code:
    __declspec(naked) unsigned int __cdecl CHack::Lua::AddSpellVisualKitEffectHook ()
    {
    	__asm
    	{
    		pushad  //esp will decrease by 32
    	}
    
    	//unsigned int unKnownVisualKitID = 0;
    	unsigned int srcPointer;
    	int **SpellId;
    	int *SpellVisualId;
    
    	__asm
    	{
    		mov ebp,esp
    		sub esp,60  //make enough memory for local varibles
    		mov esi,[ebp + 32 + 4]
    		mov SpellId,esi
    		mov srcPointer,ecx
    
    	}
    	if (!IsBadReadPtr((void *)srcPointer,4) && !IsBadReadPtr(SpellId, 4) && !IsBadReadPtr(*SpellId, 4)  && !IsBadReadPtr(*(SpellId + 1), 4))
    	{
    		char srcGUID[19];
    
    		SpellVisualId = *(SpellId + 1);
    
    		WowObject Obj = WowObject(srcPointer);
    
    		sprintf_s(srcGUID,"%#018llX",Obj.guid);
    		srcGUID[1] == 88 ? srcGUID[1] = 120:0 ;
    
    
    		reinterpret_cast<void (__cdecl*)(lua_State *L, char *s)>(CHack::WoWBase + l_pushstring)(*CHack::Lua::L,"SPELL_VISUALKIT_APPLIED");
    		reinterpret_cast<void (__cdecl*)(lua_State *L, char *s)>(CHack::WoWBase + l_pushstring)(*CHack::Lua::L,srcGUID);
    		reinterpret_cast<void (__cdecl*)(lua_State * a1,  double a2)>(CHack::WoWBase + l_pushnumber)(*CHack::Lua::L, **SpellId);
    		reinterpret_cast<void (__cdecl*)(lua_State * a1,  double a2)>(CHack::WoWBase + l_pushnumber)(*CHack::Lua::L, *SpellVisualId);
    		reinterpret_cast<int (__cdecl*)(int EventsID, lua_State *L, int NuArg)>(CHack::WoWBase + FrameScript_SignalEvent2)(480, *CHack::Lua::L, 4);
    
    	}
    
    	static unsigned int Address = WoWBase + AddEffectRelate  + 0x9;
    
    	__asm
    	{
    		mov esp,ebp
    		popad
    		push ebp
    		mov ebp, esp
    		sub esp, 0FCh
    		jmp Address
    	}
    
    
    
    }
    i hooked the SpellVisualKit related function by this , and once a spellvisualkit is applied to a object, it will raise a lua Event to tell me ....it works well most of time....but why would this cause Wow stopped working?

    Wow Stopped working issues
  2. #2
    jjaa's Avatar Contributor
    Reputation
    245
    Join Date
    Dec 2006
    Posts
    562
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Stop mixing C/C++ and Assembly, its evil!

  3. #3
    demonguy's Avatar Member
    Reputation
    2
    Join Date
    Feb 2012
    Posts
    111
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    but i've used this for a long time.....about half year ago....And my problem is recently, i don't think it's related to Asm in C++

  4. #4
    sitnspinlock's Avatar Elite User CoreCoins Purchaser
    Reputation
    398
    Join Date
    Sep 2010
    Posts
    439
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    i know this one!!!

    it's the part where you attach a debuggah!!

  5. #5
    demonguy's Avatar Member
    Reputation
    2
    Join Date
    Feb 2012
    Posts
    111
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    some one says i don't pop value after calling FrameScript_SignalEvent2 . i should call settop to pop values from stack... Is that true, and is it the cause of my problem?

  6. #6
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Look at how the game itself calls it. (hint: it calls settop after)

  7. #7
    demonguy's Avatar Member
    Reputation
    2
    Join Date
    Feb 2012
    Posts
    111
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by _Mike View Post
    Look at how the game itself calls it. (hint: it calls settop after)
    Yes, i noticed it .... i will check and test it later.....

  8. #8
    dehe's Avatar Member
    Reputation
    1
    Join Date
    Mar 2012
    Posts
    17
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    try hooking only one time and using the hook all over your project.

Similar Threads

  1. [Core] Wow world.exe suddenly stops working
    By BanzBoyz77 in forum WoW EMU Questions & Requests
    Replies: 5
    Last Post: 12-10-2010, 09:43 PM
  2. MyWarcraftStudio Stops working
    By astralis in forum WoW ME Questions and Requests
    Replies: 0
    Last Post: 01-05-2008, 11:24 PM
  3. [Mac OSX] Free Virtual Desktop Tool (Hide WoW at work, school, prison, etc)
    By lag in forum World of Warcraft Bots and Programs
    Replies: 4
    Last Post: 10-26-2007, 07:20 PM
  4. Replies: 1
    Last Post: 10-23-2007, 11:08 AM
  5. What wow addons work best for you? I recommend...
    By marick626 in forum WoW UI, Macros and Talent Specs
    Replies: 5
    Last Post: 07-09-2007, 09:19 PM
All times are GMT -5. The time now is 07:50 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search