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 


Ways to narrow down results of "what accesses this addr

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

Joined: 13 Aug 2018
Posts: 44

PostPosted: Mon Aug 13, 2018 12:21 pm    Post subject: Ways to narrow down results of "what accesses this addr Reply with quote

From my understanding, when searching for a pointer using the results of the "accesses this address" list, we can ignore any results that don't have anything between brackets [ ] as explained in the tutorial, but I was wondering when there's a long list of results that appear right when a change in the game is made/monitored...

1) Is it generally a good idea to start from the top or bottom of the list?

2) Is it generally a good idea to start with the ones with higher counts to the left of the entry, or the ones with 1 count?

3) Do the mov, movups, etc have any order or priority I should use for what to check first or any to ignore, etc?

For example if this list pops up right when the change happens that I'm looking for, which ones should I investigate first and why?

140436C94 - 55 - push rbp
14043715B - 5D - pop rbp
14145C460 - 40 53 - push rbx
14145C475 - 5B - pop rbx
14145C430 - 40 53 - push rbx
14145C44A - 5B - pop rbx
140437760 - 40 53 - push rbx
1404377AC - 5B - pop rbx
140D6BCC6 - 48 C7 40 04 FFFFFFFF - mov [rax+04],FFFFFFFF
14042A39E - 0F10 80 EC000000 - movups xmm0,[rax+000000EC]
140D6BD26 - 48 C7 40 04 FFFFFFFF - mov [rax+04],FFFFFFFF
14042A481 - 0F10 80 EC000000 - movups xmm0,[rax+000000EC]
14042CC6E - 48 89 6C 24 30 - mov [rsp+30],rbp
14042CCD8 - 48 8B 6C 24 30 - mov rbp,[rsp+30]
14042C670 - 48 89 5C 24 08 - mov [rsp+08],rbx
14042C6DE - 48 8B 5C 24 40 - mov rbx,[rsp+40]
140429A30 - 48 89 5C 24 08 - mov [rsp+08],rbx
140429AD8 - 48 8B 5C 24 30 - mov rbx,[rsp+30]
141445873 - 41 56 - push r14
14144597C - 41 5E - pop r14
1400E3574 - 48 89 5C 24 30 - mov [rsp+30],rbx
1400E3597 - 48 8B 5C 24 30 - mov rbx,[rsp+30]
7FFD94B076DF - 48 89 7C 24 30 - mov [rsp+30],rdi
7FFD94B07736 - 48 8B 7C 24 30 - mov rdi,[rsp+30]
14041BD90 - 44 89 70 FC - mov [rax-04],r14d
14041BE90 - 48 8B 84 D5 70050000 - mov rax,[rbp+rdx*8+00000570]
14041BEA0 - 48 89 8C D5 70050000 - mov [rbp+rdx*8+00000570],rcx
14041BE98 - 48 8B 8C D5 78050000 - mov rcx,[rbp+rdx*8+00000578]
14041BEA8 - 48 89 84 D5 78050000 - mov [rbp+rdx*8+00000578],rax
140DA74C9 - F3 0F7F 4A F0 - movdqu [rdx-10],xmm1
14042C357 - 8B 0B - mov ecx,[rbx]
1404347C4 - 48 89 B3 F0020000 - mov [rbx+000002F0],rsi
140434C96 - 48 8B 43 20 - mov rax,[rbx+20]

^The "count" number in front of each entry didn't copy, but several were a 1 while others were much higher in count number.
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4725

PostPosted: Mon Aug 13, 2018 2:41 pm    Post subject: Reply with quote

There's no absolute answer to any of those questions. The list will populate in the order of the first execution of those instructions as seen by CE. Do whatever you feel makes sense.

Goat Engine wrote:
we can ignore any results that don't have anything between brackets [ ]
That's stupid. Ignore that and learn what instructions do.

You should probably just use the pointer scanner instead. Finding a good pointer manually requires either a lot of skill or a lot of luck, and you're out of luck.

_________________
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
Dark Byte
Site Admin
Reputation: 471

Joined: 09 May 2003
Posts: 25859
Location: The netherlands

PostPosted: Mon Aug 13, 2018 2:46 pm    Post subject: Reply with quote

also, before searching for pointers you should make sure that the address is the correct one and not a temporary display value, else whatever you find will mostly be useless
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Goat Engine
Cheater
Reputation: 0

Joined: 13 Aug 2018
Posts: 44

PostPosted: Mon Aug 13, 2018 3:03 pm    Post subject: Reply with quote

ParkourPenguin wrote:
Goat Engine wrote:
we can ignore any results that don't have anything between brackets [ ]
That's stupid. Ignore that and learn what instructions do.


If what the tutorial advised is "stupid" as you say, I guess a LOT of people will be off to really bad starts around here. Can you supply a list of what other stupid things the tutorial teaches and has us run through? I wonder if there should be a tutorial of what to ignore in the tutorial then...
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4725

PostPosted: Mon Aug 13, 2018 4:14 pm    Post subject: Reply with quote

There is a reason why that advice is included. In many situations where this technique of finding a pointer works, you'll only need to look at instructions with square brackets. However, the tutorial never explains why this is the case (AFAIK; I haven't gone through it in a while). Novices reading that will think it's an absolute and just accept it as a fact that they don't understand.

I don't think this is necessarily bad, because the tutorial is not designed to teach in that great of detail. It's good at quickly teaching novices with little knowledge of computer science about easy situations. It only teaches people what to do- not how or why things work. If it taught everything, it would take hundreds of hours to complete and very few people would use it.

Saying that advice is stupid was uncalled for, but there are definitely exceptions to it.

I'd still recommend the pointer scanner since it's easy to use. If you want to track it down manually, learn about x86-64 architecture.

_________________
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
Goat Engine
Cheater
Reputation: 0

Joined: 13 Aug 2018
Posts: 44

PostPosted: Mon Aug 13, 2018 4:41 pm    Post subject: Reply with quote

Ah, I see what you mean and yes I did find myself wondering "why" and "when" for a few things the tutorial had me run through.

All in all I've had pretty good success using the manual method for everything I've tried to do except one final task which I opened another thread on earlier today, and from what others tell me who play the same game is an unusually difficult task considering how basic of a change it's intended to make in the game.

Also @Dark Byte - Yes I learned the hard way a while ago about identifying and avoiding looking too much into the display values. Happened again today when I thought I was on the right track to this last problem I've been trying to figure out for a while now. lol

Anyway I think I consider the original question of this thread to be solved, but if anyone wants to add any ideas/comments to my other thread, it would definitely be welcome. Thanks guys!
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 471

Joined: 09 May 2003
Posts: 25859
Location: The netherlands

PostPosted: Mon Aug 13, 2018 11:35 pm    Post subject: Reply with quote

when looking for pointers you can pretty much ignore instructions without brackets because those are either blockmove instructions where the origin and destination registers have been changed so not even a base or offset can be figured out from that (and it's usually an indication that the value you found is not the real value)

or worse, it's stack manipulation instructions like push. This means that the address is in the stack and at a height that it's affected by function calls. In that case most of the code you found will be unrelated to what you where looking for

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking 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