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 


How did this instruction access the address?

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

Joined: 19 May 2014
Posts: 74

PostPosted: Mon May 02, 2016 4:05 pm    Post subject: How did this instruction access the address? Reply with quote

Greetings

I know address is accessed by [eax]. But how did this one get accessed? o.O



Neither rcx nor r8 is in brackets, meaning only registers are accessed, no? Not a memory address?
On the right I, just in case, tried "Find out what addresses this instruction accesses" and, no surprise, the list is empty. And the instruction is definitely in work plenty - game slowed down heavily after attaching the debugger.

How did CE detect it in such...one way way?

Best Regards
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4719

PostPosted: Mon May 02, 2016 4:19 pm    Post subject: Reply with quote

It's the repe movsb instruction under that. I'm not sure why CE is detecting the previous instruction accessing it; that might be a bug.

Look at this reference for more information.

_________________
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
Noobrzor
Advanced Cheater
Reputation: 0

Joined: 19 May 2014
Posts: 74

PostPosted: Mon May 02, 2016 4:30 pm    Post subject: Reply with quote

Well, 'Find out what addresses this instruction accesses; on repe movsb created even a bigger lag than previous, and still no addresses shown in debugger.

How so?
Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Mon May 02, 2016 4:56 pm    Post subject: Reply with quote

You can also try a different debugger and breakpoint method.
Back to top
View user's profile Send private message
Noobrzor
Advanced Cheater
Reputation: 0

Joined: 19 May 2014
Posts: 74

PostPosted: Tue May 03, 2016 6:42 am    Post subject: Reply with quote

Well, I tried to use a Windows debugger (previously I was using VEH) but...
using Windows debugger in the moment when the above noted instruction gets evoked the game crashes.
So there goes that.
Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Tue May 03, 2016 7:11 am    Post subject: Reply with quote

I don't know if you removed items from your original post, but just guessing...

Some addresses are only accessed during certain times, such as during startup, when the target loads everything. An area of code may get executed constantly, causing your target to lag when you attach CE, but that doesn't necessarily mean that the address that you're targeting is being accessed during that time.

If you want to find a way to access the address via the target's own code, you can try hooking an instruction that is directly accessing one of the other values/offsets in the same data structure as the targeted address.
Back to top
View user's profile Send private message
Noobrzor
Advanced Cheater
Reputation: 0

Joined: 19 May 2014
Posts: 74

PostPosted: Tue May 03, 2016 10:26 am    Post subject: Reply with quote

++METHOS wrote:
I don't know if you removed items from your original post, but just guessing...

Some addresses are only accessed during certain times, such as during startup, when the target loads everything. An area of code may get executed constantly, causing your target to lag when you attach CE, but that doesn't necessarily mean that the address that you're targeting is being accessed during that time.

If you want to find a way to access the address via the target's own code, you can try hooking an instruction that is directly accessing one of the other values/offsets in the same data structure as the targeted address.


Yes, I am aware of that. When I attach the veh debugger two instructions show up and are typical accesses, executed many times in the span of seconds. Then I do X, which makes the repe movsb show up. When I do the thing with windows debugger it crashes at the point when I do X.

I need to find the stack of this code that is being accessed in order to make it conditionally nop'ed. As in it's executed many times, but sometimes I want it to be noped.
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 152

Joined: 06 Jul 2014
Posts: 4719

PostPosted: Tue May 03, 2016 10:48 am    Post subject: Reply with quote

Quote:
...the stack of this code that is being accessed...

This makes no sense. Do you mean you want to find out what addresses that repe movsb instruction accesses? If so, you'll have to do that yourself since you stated CE is bugging out a bit.
Set a breakpoint before the repe movsb, look at what the esi/edi registers will be to find out what addresses are being read from / written to, and look at what ecx will be to see how many addresses it's doing this for. Use Lua if you want to automate the process.

If you want that repe movsb instruction to not write to your address, you can't replace that instruction with NOPs without affecting other stuff too.
The easiest way I can think of would be to copy the value of that address before it executes and restore it after. You may need a reference to your address (i.e. a pointer or a registered symbol) if it starts at different addresses but still encompasses the address you're concerned with.

_________________
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
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Tue May 03, 2016 12:17 pm    Post subject: Reply with quote

Noobrzor wrote:
Yes, I am aware of that. When I attach the veh debugger two instructions show up and are typical accesses, executed many times in the span of seconds. Then I do X, which makes the repe movsb show up. When I do the thing with windows debugger it crashes at the point when I do X.
-In that case, your posts up to this point have been a bit misleading, including your topic title. Please try to be more specific with your posts so that the people that are trying to help you do not waste their time posting irrelevant replies.

Noobrzor wrote:
I need to find the stack of this code that is being accessed in order to make it conditionally nop'ed. As in it's executed many times, but sometimes I want it to be noped.
-You need to set up conditional jumps inside of your script so that unwanted addresses are filtered out and only your targeted address(es) are nop'ed. You can do that by following the advice outlined in your previous thread.
Back to top
View user's profile Send private message
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