x64 API Hooking - VC++ menu

User Tag List

Results 1 to 7 of 7
  1. #1
    Master674's Avatar Elite User
    Reputation
    487
    Join Date
    May 2008
    Posts
    578
    Thanks G/R
    2/23
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    x64 API Hooking - VC++

    Hey, just figured out that MS Detours 3.0 Express is shit... does not include x64 API Hooking and only works with x86 processors -.-
    (Used MS Detours 1.5 before to get it working with all windows processor types).

    Then i wanted to get MS Detours Professional... But WTF 10.000 USD?! OMFG

    Is there a good alternative to MS Detours Professional?
    Also why is inline asm disabled in x64 compilers?

    How would i write my asm code into it? Any good library around that bypasses this restriction?

    x64 API Hooking - VC++
  2. #2

  3. #3
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    The next release of HadesMem (check out the link SKU posted -- thanks SKU!) will include a detour component. It's available now under /branches/v1.0.0 if you don't wish to wait for v1.6.0 Final.

    I use BeaEngine to disassemble the target, and AsmJit to dynamically generate parts of the trampoline (where things like jump resolution etc are necessary). It's not 'complete' yet, but it should work better than most of the other free alternatives to Detours 3.0 (most don't do any instruction resolution at all, and some won't even do automatic trampoline generation).

  4. #4
    Master674's Avatar Elite User
    Reputation
    487
    Join Date
    May 2008
    Posts
    578
    Thanks G/R
    2/23
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Cypher View Post
    The next release of HadesMem (check out the link SKU posted -- thanks SKU!) will include a detour component. It's available now under /branches/v1.0.0 if you don't wish to wait for v1.6.0 Final.

    I use BeaEngine to disassemble the target, and AsmJit to dynamically generate parts of the trampoline (where things like jump resolution etc are necessary). It's not 'complete' yet, but it should work better than most of the other free alternatives to Detours 3.0 (most don't do any instruction resolution at all, and some won't even do automatic trampoline generation).
    Thanks for that! HadesMem looks really promising, I'll wait for the final version to come out.
    So I guess HadesMem's Detours will work like in MS Detours? I just need basic Detour Functions. Place / Remove.

  5. #5
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Master674 View Post
    Thanks for that! HadesMem looks really promising, I'll wait for the final version to come out.
    So I guess HadesMem's Detours will work like in MS Detours? I just need basic Detour Functions. Place / Remove.
    Some of the HadesMem APIs are kinda complicated, but that Patcher APIs in particular are pretty drop-dead simple.

    I'll make it a priority to get v1.6.0 out 'soon'.

  6. #6
    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)
    not to take away from your hooking library but let not the OP forget use of linking with .asm files under x64. Can generally get by just fine using those as opposed to inline and naked functions.

    I'm naked right now by the way.

  7. #7
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by everdox View Post
    not to take away from your hooking library but let not the OP forget use of linking with .asm files under x64. Can generally get by just fine using those as opposed to inline and naked functions.

    I'm naked right now by the way.
    It doesn't matter whether you use AsmJit (or whatever) or use an assembler and link in the object files manually, you still need a detour/hooking library to actually do the 'dirty work'.

Similar Threads

  1. x64 ws2_32.dll function hooks c++
    By BitHacker in forum Programming
    Replies: 0
    Last Post: 06-06-2012, 04:13 PM
  2. x64 Libraries used for hooking...???
    By BitHacker in forum Programming
    Replies: 0
    Last Post: 06-06-2012, 03:48 PM
  3. [Src/C#] BananaHook - Simple abstracted API hooking library
    By Bananenbrot in forum WoW Memory Editing
    Replies: 2
    Last Post: 02-18-2012, 02:08 PM
  4. BlackMagic & api hooking
    By roxaz911 in forum WoW Memory Editing
    Replies: 8
    Last Post: 06-04-2009, 09:10 AM
  5. View what API functions are hooked by Wow
    By barthen in forum WoW Memory Editing
    Replies: 8
    Last Post: 10-26-2008, 11:25 PM
All times are GMT -5. The time now is 02:04 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