[?] Retrieving Struct Pointer the fast way? menu

User Tag List

Results 1 to 4 of 4
  1. #1
    Zephir's Avatar Member
    Reputation
    8
    Join Date
    May 2007
    Posts
    44
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [?] Retrieving Struct Pointer the fast way?

    Hello,

    I watched many people retrieving all the pointers in no time by iterating through WoW Threads. This method seems to be around in this forum too.

    I code in AutoIt and it does not have even half of the methods that are used in C++ StructPointer Programms... is anyone so kind to explain to me what is exactly done so that I can work my way around using DllCalls() and what not

    Thank you in advance.

    [?] Retrieving Struct Pointer the fast way?
  2. #2
    Xarg0's Avatar Member
    Reputation
    61
    Join Date
    Jan 2008
    Posts
    389
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm not sure if everthing I'll explain is correct, since I didn't write any code to check if it's correct, but here is how you retrive the base pointer to the wowstruct with the tls method.
    At first you read the value from E5C284, this adress contains the number of the tls_slot that points to the struct as an unsigned integer.
    Now we need to obtain the tls index adress, at first you need an open threadhandle then you'll do a ntqueryinformationthread() to obtain the threadbasicinformation, the threadbasicinformation structure contains a pointer to the TEB, at the Offset 2c there is a pointer to the tls-index, you'll have to save the tls index Adress, next you obtain the pointer from the tls slot by reading it from the memory at [TLS_Index+TLS_slot*4] you have to multiply the tls_slot number with 4 because each tls_slot is 4bytes long, the next step is to add 0x8 to the Adress you obtained from the tls_slot, et voila you have the basepointer to the wowObject Linked list, you can now use all the known offsets to obtain data from wow, each Object in the Linked list holds a pointer to the next and the previous one, you can recognize the last object of the linked list since it's next objectptr will be 0x1C
    I hope I made no mistake in my explaination ^^
    mfg Xarg0

  3. #3
    Zephir's Avatar Member
    Reputation
    8
    Join Date
    May 2007
    Posts
    44
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    very nice. I get it.

    How do you get E5C284? Is this something rooted into the game core so it never changes? or will I have to hunt it down every patch?


    p.s.
    +Rep

  4. #4
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1356
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hunt it down every patch, but it's easy to find. Open up WoW with IDA and type in "TlsIndex" in the "Names" window. Double click the variable to follow it to its location, then copy the offset it's stored at. Takes a total of about 3 seconds.

    Check out this thread, it has the method in several languages, Delphi, C# and I think a half-done AutoIt one.

    WoW.DeV • View topic - Proof of concept code - WoW memory reading

Similar Threads

  1. Late 2014: What's the fasted way to level 85-90
    By 2xtwinker in forum World of Warcraft General
    Replies: 8
    Last Post: 10-05-2014, 08:53 PM
  2. IF gates the fast way
    By tuttti in forum World of Warcraft Exploration
    Replies: 8
    Last Post: 11-10-2008, 09:32 AM
  3. [Horde AV DB South Bunker the fast way]
    By Bobdebouwer in forum World of Warcraft Guides
    Replies: 5
    Last Post: 01-12-2008, 09:57 PM
  4. whats the best way to level a rogue FAST
    By wowguy07 in forum World of Warcraft General
    Replies: 19
    Last Post: 12-06-2007, 06:01 AM
  5. Take Halaa - The fast way
    By MuppetShow in forum World of Warcraft General
    Replies: 12
    Last Post: 11-09-2007, 06:45 PM
All times are GMT -5. The time now is 04:38 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search