View previous topic :: View next topic |
Author |
Message |
Zanko Cheater
Reputation: 0
Joined: 28 May 2014 Posts: 40
|
Posted: Fri Jun 17, 2016 10:07 pm Post subject: Hex file of DLL and EXE |
|
|
When I attached cheat engine to game process, I am able to browse memory region. The hex dump provided by cheat engine allows me to intepret some game data (Mostly text string). The text string is not in ascii so I have to copy the hex dump over and do some reprocessing.
My question is whether this hex dump is readily avaialbe in EXE or DLL file on my computer? Or these hex dump is generated when the game is running?
If a character in the game say "Hello, I am very powerful", Can I somehow retrieve this name from EXE or DLL?
Please provide me with some insight! Thank you
|
|
Back to top |
|
 |
mgostIH Expert Cheater
Reputation: 3
Joined: 01 Jan 2016 Posts: 159
|
Posted: Sat Jun 18, 2016 4:10 am Post subject: Re: Hex file of DLL and EXE |
|
|
zanko2610 wrote: | When I attached cheat engine to game process, I am able to browse memory region. The hex dump provided by cheat engine allows me to intepret some game data (Mostly text string). The text string is not in ascii so I have to copy the hex dump over and do some reprocessing.
My question is whether this hex dump is readily avaialbe in EXE or DLL file on my computer? Or these hex dump is generated when the game is running?
If a character in the game say "Hello, I am very powerful", Can I somehow retrieve this name from EXE or DLL?
Please provide me with some insight! Thank you |
It really depends on the game, but usually, if the string data is located in a static region of memory, you can find it in the ROM copy of the .exe or .dll.
_________________
|
|
Back to top |
|
 |
Zanko Cheater
Reputation: 0
Joined: 28 May 2014 Posts: 40
|
Posted: Sat Jun 18, 2016 4:56 am Post subject: |
|
|
Hi the game is final fantasy X remaster on Steam. Currently I am copying from memory region. Not sure if this is dynamic or static. If it is static, I ahve no idea where the resoure is stored.
Ultimately, I just want to link weapon ID to its name. Surely the game has to link it somehow. I have the ID but can't find the pointer to string table...
And there are about 500 dll files >.<
|
|
Back to top |
|
 |
mgostIH Expert Cheater
Reputation: 3
Joined: 01 Jan 2016 Posts: 159
|
Posted: Sat Jun 18, 2016 5:45 am Post subject: |
|
|
zanko2610 wrote: | Hi the game is final fantasy X remaster on Steam. Currently I am copying from memory region. Not sure if this is dynamic or static. If it is static, I ahve no idea where the resoure is stored.
Ultimately, I just want to link weapon ID to its name. Surely the game has to link it somehow. I have the ID but can't find the pointer to string table...
And there are about 500 dll files >.< |
Have you looked around the ID in the memory region? Maybe you can find the address of the object name always lying around that region of memory.
To check for this, try getting the right address for the string you are searching and the address of the ID of that item. Compare the addresses, they should be pretty close in memory, if the game has this kind of memory structures.
_________________
|
|
Back to top |
|
 |
atom0s Moderator
Reputation: 205
Joined: 25 Jan 2006 Posts: 8587 Location: 127.0.0.1
|
Posted: Sun Jun 19, 2016 1:26 pm Post subject: |
|
|
Final Fantasy normally has text like dialog from characters stored in a data file external from the game exe. Square Enix is known for encoding their files as well so you wont find the text easily without decoding the data files etc.
_________________
- Retired. |
|
Back to top |
|
 |
Zanko Cheater
Reputation: 0
Joined: 28 May 2014 Posts: 40
|
Posted: Sun Jun 19, 2016 2:39 pm Post subject: |
|
|
Hello, I figured out the decoding. That is how I pulled alot of text from memory region in the first place. So let's say its in an external file. I there a way to obtain a static address offset that point to the string during run time? All I have now is skill bit flag that is 12 byte array. With bit 0 = certain skill etc.
The byte array is in a 94 byte character strucutre. Around that region there is no offset >.< I searced for the string and attached "what access this address" But I didnt get far : (
|
|
Back to top |
|
 |
atom0s Moderator
Reputation: 205
Joined: 25 Jan 2006 Posts: 8587 Location: 127.0.0.1
|
Posted: Mon Jun 20, 2016 7:55 pm Post subject: |
|
|
zanko2610 wrote: | Hello, I figured out the decoding. That is how I pulled alot of text from memory region in the first place. So let's say its in an external file. I there a way to obtain a static address offset that point to the string during run time? All I have now is skill bit flag that is 12 byte array. With bit 0 = certain skill etc.
The byte array is in a 94 byte character strucutre. Around that region there is no offset >.< I searced for the string and attached "what access this address" But I didnt get far : ( |
If the file is being loaded at runtime it's probably not going to have a static location. It'll probably be loaded dynamically into random memory and referenced as needed. Your best bet is to set a breakpoint on the string and have it be used in-game to find what is accessing it and attempt to build a pointer from that.
Otherwise, decode the file on disc, edit it, and reencode it as a file mod instead of trying to edit it in memory.
_________________
- Retired. |
|
Back to top |
|
 |
|