Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Hex file of DLL and EXE

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Discussions
View previous topic :: View next topic  
Author Message
Zanko
Cheater
Reputation: 0

Joined: 28 May 2014
Posts: 40

PostPosted: Fri Jun 17, 2016 10:07 pm    Post subject: Hex file of DLL and EXE Reply with quote

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
View user's profile Send private message
mgostIH
Expert Cheater
Reputation: 3

Joined: 01 Jan 2016
Posts: 159

PostPosted: Sat Jun 18, 2016 4:10 am    Post subject: Re: Hex file of DLL and EXE Reply with quote

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.

_________________
Do you need to ask me something? Feel free to join my discord server at: https://discord.gg/At4VZXA or ask me something in my YouTube channel: https://www.youtube.com/c/mgostIH
Back to top
View user's profile Send private message
Zanko
Cheater
Reputation: 0

Joined: 28 May 2014
Posts: 40

PostPosted: Sat Jun 18, 2016 4:56 am    Post subject: Reply with quote

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
View user's profile Send private message
mgostIH
Expert Cheater
Reputation: 3

Joined: 01 Jan 2016
Posts: 159

PostPosted: Sat Jun 18, 2016 5:45 am    Post subject: Reply with quote

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.

_________________
Do you need to ask me something? Feel free to join my discord server at: https://discord.gg/At4VZXA or ask me something in my YouTube channel: https://www.youtube.com/c/mgostIH
Back to top
View user's profile Send private message
atom0s
Moderator
Reputation: 205

Joined: 25 Jan 2006
Posts: 8587
Location: 127.0.0.1

PostPosted: Sun Jun 19, 2016 1:26 pm    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
Zanko
Cheater
Reputation: 0

Joined: 28 May 2014
Posts: 40

PostPosted: Sun Jun 19, 2016 2:39 pm    Post subject: Reply with quote

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
View user's profile Send private message
atom0s
Moderator
Reputation: 205

Joined: 25 Jan 2006
Posts: 8587
Location: 127.0.0.1

PostPosted: Mon Jun 20, 2016 7:55 pm    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Discussions All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites