Results 1 to 5 of 5

Thread: memory locations

  1. #1
    Registered User
    Join Date
    Jan 2004
    Posts
    4

    memory locations

    I'm trying to find some memory locations for Shadowbane. I realize this isn't the SB forum but that forum doesn't get much action, and I think this more about the process than the actual game.

    So I have found the range of memory where the data I want is located but it seems to be inconsistent and non-static within that range. I've been told my next step is to determine whether the data is stored as a linked list or an array.

    I'm somewhat new to this and am not sure how to go about determining this. Any help would be appreciated.

    Thanks.

    If you want to reply to the original thread it is listed below.

    http://seq.sourceforge.net/forums/sh...?threadid=4551

  2. #2
    Registered User MQSEQ2's Avatar
    Join Date
    Oct 2003
    Posts
    910
    I don't think you will get specific SB help from here since this is for EQ.

    You will need to start and restart SB several time to see if the data you are looking at changes memory locations (also start other programs like MS Word and Excel during one of the SB runs, this should use memory that wasn't used in the previous test). If the memory locations move then you are dealing with Dynamic Memory vs Static Memory. Once you determine it's Dynamic (if it is) then you will need to start looking for the begining of the Data Structure you are dealing with and once you have that location you can do a search for the address, but remember you need to reverse the address for example the address of the beging location is 006BD5FA you would search for FAD56B00. You reverse the location because that's the way it's stored in memory FILO (First In Last Out).

    It is very hard to reverse engineer stuff with out any actual documentation of the structures you are looking for but it can be done if you spend the time. The key is to look for patterns in the memory then write everything down so you can trace your steps.

    Good Luck

  3. #3
    Registered User
    Join Date
    Jan 2004
    Posts
    4
    Thanks for the reply.

    I actually did these things last night before I read your post. The memory is dynamic and I actually discovered by accident that the address is reversed, I was wondering why that was happening. Thanks for the explanation.

    I'm still confused how I can programatically find the data I want when the memory is dynamic? Last night when I was testing this, it was changing all the time.

    Thanks.

  4. #4
    Registered User MQSEQ2's Avatar
    Join Date
    Oct 2003
    Posts
    910
    Read: http://seq.sourceforge.net/forums/sh...&threadid=4480

    You need to locate the first item in the structure then get the Address and find the Calling Address which is static then you always go to that Static Address to get the Dynamic Address.

  5. #5
    Registered User
    Join Date
    Jan 2004
    Posts
    4
    This is very helpful. It was the missing piece I needed to get started.

    Thank you very much.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

You may post new threads
You may post replies
You may post attachments
You may edit your posts
HTML code is Off
vB code is On
Smilies are On
[IMG] code is On