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 


What does it mean when you see the filename in disassembler?

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
Bunny_Wabbit
Newbie cheater
Reputation: 0

Joined: 23 Sep 2017
Posts: 23
Location: United Kingdom

PostPosted: Fri Jul 26, 2019 9:21 pm    Post subject: What does it mean when you see the filename in disassembler? Reply with quote

Just finished watching another video by Stephen Chapman and I noticed in memory view there are were some instructions under the opcode column that had the name of the EXE followed by a + and then another address. I've seen that a few times. Others will be MOV instructions, or ADD, SUB, JMP, whatever, but then I see game.exe+1C0FFD10.

Edit: Hmm, I feel like his video 'Cheat Engine 6.4 Tutorial Part 10: Introduction to Multilevel Pointers!' is a bit too fast compared to his earlier ones. He introduces a bit too many processes in too little time without explaining much. Maybe I'll try watching it again. I mean, I get the concept of a multilevel pointer, like getting to the company CEO by going up the chain of command, but I don't know why he copies the register address AND the offset. Why not just add it up on a hex calculator and wipe the need to type in the offsets?
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4704

PostPosted: Fri Jul 26, 2019 10:35 pm    Post subject: Reply with quote

When you start a program on your computer, the operating system is responsible for setting everything up so that it can run. This involves giving it its own memory and loading the .exe file into that memory. When CE displays an address as "game.exe+XXXX", CE is saying that address is a part of the exe file that was loaded into memory. CE does this because the OS might load the exe at a different location in memory; however, values in the exe file (usually) don't change their location inside the exe file. This lets CE find that address again by simply figuring out where the exe file is loaded and adding an offset to that.

The ability to easily find these addresses even when the game is restarted makes them suitable as a base address for a pointer path.
DB put up a series of videos covering the CE tutorial that you may find useful (step 8 here; see step 6 for his brief intro to pointers). There is an overwhelming amount of information on pointers, so if you don't understand one person's explanation, there's a million more you can listen to.

Bunny_Wabbit wrote:
Why not just add it up on a hex calculator and wipe the need to type in the offsets?
If you think you can just add up the offsets without dereferencing pointers as you go along, you don't understand multilevel pointers at all. I haven't seen Stephen's video, but DB's video explains it.
_________________
I don't know where I'm going, but I'll figure it out when I get there.
Back to top
View user's profile Send private message
predprey
Master Cheater
Reputation: 24

Joined: 08 Oct 2015
Posts: 486

PostPosted: Fri Jul 26, 2019 10:50 pm    Post subject: Re: What does it mean when you see the filename in disassemb Reply with quote

Bunny_Wabbit wrote:
Hmm, I feel like his video 'Cheat Engine 6.4 Tutorial Part 10: Introduction to Multilevel Pointers!' is a bit too fast compared to his earlier ones. He introduces a bit too many processes in too little time without explaining much. Maybe I'll try watching it again. I mean, I get the concept of a multilevel pointer, like getting to the company CEO by going up the chain of command, but I don't know why he copies the register address AND the offset. Why not just add it up on a hex calculator and wipe the need to type in the offsets?


His video is fine, pointers is just confusing for many people starting out that’s all. He copies the register address and the offset because he needs both, if you notice its not just a simple addition of the first address and all the offsets to obtain the final address. Based on your analogy, its not a simple chain of command where you can easily skip right to meet the CEO if you know his address because his office changes daily (on program restarting) and you have to go through a series of receptionists (pointers) who will direct you to his office. The only receptionist whose location does not change is the one on the first floor (static memory address) so you have to always start from there when you want to find the CEO.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine 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