Hooking - suggested options besides EndScene? menu

Shout-Out

User Tag List

Page 2 of 3 FirstFirst 123 LastLast
Results 16 to 30 of 41
  1. #16
    flo8464's Avatar Active Member
    Reputation
    30
    Join Date
    Apr 2009
    Posts
    434
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Tanaris4 View Post
    You're hooking the dll? Not the detour to the external lib w/in wow?

    Interesting idea
    Thats what everyone would do?
    Especially because you can simply use GetModuleHandle() and GetProcAddress() to retrieve the address.
    Hey, it compiles! Ship it!

    Hooking - suggested options besides EndScene?
  2. #17
    BoogieManTM's Avatar Active Member
    Reputation
    52
    Join Date
    May 2008
    Posts
    193
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by flo8464 View Post
    Especially because you can simply use GetModuleHandle() and GetProcAddress() to retrieve the address.
    You can't 'simply' use windows api routines in Mac OSX

  3. #18
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hoping there is a similar function in the mach headers, I haven't looked into it @ all yet. But I imagine my inject app (obviously not created by me) will give me some good pointers.

    Then I'm going to work on understanding what warden is actually doing Or create a "monitor" of sorts
    https://tanaris4.com

  4. #19
    wraithZX's Avatar Active Member
    Reputation
    43
    Join Date
    May 2007
    Posts
    122
    Thanks G/R
    0/1
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    dlopen/dlsym/dlclose.

  5. #20
    Robske's Avatar Contributor
    Reputation
    305
    Join Date
    May 2007
    Posts
    1,062
    Thanks G/R
    3/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Search for functions that reference the string 'AreaTriggerCheck', one of those (0x005831B0 on the build 3.3.3 11723) is called several times per second, even when not ingame.

    Always call the original function or you'll find it very difficult to enter portals (hint)
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live." - Martin Golding
    "I cried a little earlier when I had to poop" - Sku

  6. #21
    eLaps's Avatar Active Member
    Reputation
    34
    Join Date
    Sep 2007
    Posts
    123
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Why wouldnt you use the LD_PRELOAD method?

  7. #22
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    LD_PRELOAD is used in injection yes? I can inject fine, I just struggled w/detouring the function (I can do it, just need to invest more time in it)
    https://tanaris4.com

  8. #23
    themind's Avatar Private
    Reputation
    1
    Join Date
    Mar 2010
    Posts
    5
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I've detoured glFinish and it worked, I think you should try it

  9. #24
    eLaps's Avatar Active Member
    Reputation
    34
    Join Date
    Sep 2007
    Posts
    123
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Here is an example with LD_PRELOAD:
    Code:
    #include <dlfcn.h>
    #include <GL/gl.h>
    #include "mystuff.h"
    
    void glClear(unsigned int _mask) {
        static void (*real_glClear)(unsigned int) = 0;
        if (!real_glClear)
            real_glClear = (void (*)(unsigned int))dlsym(RTLD_NEXT, "glClear");
        real_glClear(_mask);
    
        static Mystuff* p = 0;
        if (!p) p = new Mystuff;
        p->Execute();
    }
    and start wow with
    LD_PRELOAD=~/mylib.so wine ~/apps/wow/Wow.exe

  10. #25
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    WoW runs on OS X natively, so that doesn't apply? Maybe? Or I just change the command line?
    https://tanaris4.com

  11. #26
    eLaps's Avatar Active Member
    Reputation
    34
    Join Date
    Sep 2007
    Posts
    123
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I think it works, but can't be sure.
    Just try changing the cmd line

  12. #27
    barthen's Avatar Contributor Authenticator enabled
    Reputation
    94
    Join Date
    Apr 2007
    Posts
    112
    Thanks G/R
    4/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    DYLD_INSERT_LIBRARIES was the mac equivalent of LD_PRELOAD although I can't test it right now (I formatted my hackintosh ;-P)

  13. #28
    Tanaris4's Avatar Contributor Authenticator enabled
    Reputation
    148
    Join Date
    Oct 2008
    Posts
    646
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Something I just thought of while I was reversing an online poker app... Why do you even need to hook a DirectX or OpenGL function? Couldn't you just spawn your own thread w/in wow and have it run every 0.1 seconds to check to see if it should do anything? Is this dumb?
    https://tanaris4.com

  14. #29
    mnbvc's Avatar Banned
    Reputation
    120
    Join Date
    Jul 2009
    Posts
    273
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    for some stuff (for example running protected lua commands via dostring) you will have insufficient rights if you are calling it from your own thread

  15. #30
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thread safety.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

Page 2 of 3 FirstFirst 123 LastLast

Similar Threads

  1. [C# DLL] aHook, use ASM through EndScene hook
    By JuJuBoSc in forum WoW Memory Editing
    Replies: 81
    Last Post: 04-22-2024, 02:55 PM
  2. Custom rendering in endscene hook
    By ggg898 in forum WoW Memory Editing
    Replies: 3
    Last Post: 09-11-2009, 09:38 AM
  3. [Test Theory] EndScene hook without Native Code (Kinda)
    By Apoc in forum WoW Memory Editing
    Replies: 7
    Last Post: 09-04-2009, 12:46 PM
  4. EndScene Hook not changing anything
    By lanman92 in forum WoW Memory Editing
    Replies: 32
    Last Post: 06-01-2009, 11:46 PM
  5. How I hooked EndScene
    By Sillyboy72 in forum WoW Memory Editing
    Replies: 3
    Last Post: 01-21-2009, 04:40 AM
All times are GMT -5. The time now is 07:22 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