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 


Scan Memory
Goto page Previous  1, 2
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming
View previous topic :: View next topic  
Author Message
Dark Byte
Site Admin
Reputation: 475

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

PostPosted: Mon May 10, 2010 3:11 am    Post subject: Reply with quote

I think he means it scans for:
Code:

MOV EDI, EDI
PUSH EBP
MOV EBP, ESP
JMP xxxxxxxx

where xxxxxxxx is way out of range of the function itself

I'm not sure myself, but that's what I would scan for if I made a cheat protector

of course, you can easily rewrite this into something else and make it undetected
e.g:
Code:

mov [esp],ebp
mov ebp,esp
sub ebp,4
mov esp,ebp
jmp xxxxxxxx


and that's just one of infinite number of rewrites

_________________
Tools give you results. Knowledge gives you control.

Like my help? Join me on Patreon so i can keep helping


Last edited by Dark Byte on Mon May 10, 2010 7:19 am; edited 3 times in total
Back to top
View user's profile Send private message MSN Messenger
zile
Advanced Cheater
Reputation: 0

Joined: 11 Jul 2009
Posts: 75

PostPosted: Mon May 10, 2010 5:16 am    Post subject: Reply with quote

hope you dont mind me asking but, what function do u use to save the results found to a temporary file?
Back to top
View user's profile Send private message
Slugsnack
Grandmaster Cheater Supreme
Reputation: 71

Joined: 24 Jan 2007
Posts: 1857

PostPosted: Mon May 10, 2010 7:31 am    Post subject: Reply with quote

writefile ?
Back to top
View user's profile Send private message
iPromise
Grandmaster Cheater
Reputation: -1

Joined: 27 Jun 2009
Posts: 529
Location: Canada

PostPosted: Mon May 10, 2010 2:31 pm    Post subject: Reply with quote

fstream.h
Back to top
View user's profile Send private message MSN Messenger
AtheistCrusader
Grandmaster Cheater
Reputation: 6

Joined: 23 Sep 2006
Posts: 681

PostPosted: Mon May 10, 2010 2:38 pm    Post subject: Reply with quote

iPromise wrote:
fstream.h


He ain't using C faggot
Back to top
View user's profile Send private message
sponge
I'm a spammer
Reputation: 1

Joined: 07 Nov 2006
Posts: 6009

PostPosted: Mon May 10, 2010 6:26 pm    Post subject: Reply with quote

Slugsnack wrote:
i see. so it scans for the stack frame and if it detects it it closes the game. that's odd because a stack frame is used in probably 95% of functions
It's not odd at all. Unless a module is compiled with the /hotpatch option, most if not all function prologues will not have the typical hotpatching instruction mov edi, edi. That being said, script kiddies who commonly code these types of programs seem to think that the mov instruction actually holds importance in setting up the stack frame. It only makes sense to scan for this type of signature. If the memory found is not in a system module, it is safe to say (though not guaranteed and sloppy) that it is most likely a hacking procedure.
_________________
Back to top
View user's profile Send private message
Slugsnack
Grandmaster Cheater Supreme
Reputation: 71

Joined: 24 Jan 2007
Posts: 1857

PostPosted: Tue May 11, 2010 6:15 am    Post subject: Reply with quote

Unless that option is used by default then it appears to still be popping up. This is an injector I made and compiled with VC++ 2010.

Scanning only in the main executable's module itself, 8 matches for that byte sequence, none of which I had specified explicitly.

http://img504.imageshack.us/img504/9981/11863558.png

Removing the 8bff, ie. mov edi, edi, showed 23 results instead. Either way according to your theory, any 8 of these would trigger the anti-hack.

And how is the game to determine whether the module is a system module or some external module ? There are services which people use which inject a DLL into every single process. No doubt there would be something there to trigger the detection.

The /hotpatch means the compiler ensures that the first instruction of each function is two bytes but that is not to say when that option is not enabled, there are no functions with those 2 bytes already as their first instruction.
Back to top
View user's profile Send private message
zile
Advanced Cheater
Reputation: 0

Joined: 11 Jul 2009
Posts: 75

PostPosted: Sat May 15, 2010 5:47 am    Post subject: Reply with quote

Anyone mind giving me some hints on how to make progressbar? i made it's range to 0 - 100 and now im stuck

i tried putting the dialog's default to get value of a variable 'Progress' and change accordingly and then
Code:
Progress = (I-dwStart)/(dwEnd-dwStart) * 100;
at the scanner to get the % of scan but it doesnt work, it only gives 0 and 100, i tried changing it to float and theres another problem
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 programming All times are GMT - 6 Hours
Goto page Previous  1, 2
Page 2 of 2

 
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