Click to See Complete Forum and Search --> : Trying to program an anti cheat dll and have some questions


SliderMan
March 25th, 2009, 01:25 AM
hello all.
i am trying to program a anti cheat dll for a game i am playing online with friends,
i thogut about making a crc function to check the memory of the game for changes
i know crc functions looks like:


DWORD CalculateCrc(LPBYTE lpData, SIZE_T dwSizeOfData)
{
int i;
DWORD dwCrc = 0;

for (i = 0; i < dwSizeOfData; i++)
{
dwCrc += *(lpData + i) * (0x3e & 0x83)
}
return dwCrc;
}


now my question is, how do i read the memory from the game, just call a loop to every memory adress on the function. or should i make a tmp file with the memory and load it to the crc function?

also how can i determine what dll`s are loaded into a process?
and how do i check if debug registeres where used since crc hash wont change for debug registers. (as much asi know)


thanks in advance.

EDIT: could someone please help me?
any tip/exemple would be highly aprociated.

thanks in advance.
-Moshe

nightpwn2
March 27th, 2009, 12:01 AM
Most likely the game you are talking about is "GunZ".

Check ReadProcessMemory and WriteProcessMemory, Hook those functions. you may also have to code a kernal-mode driver, but you should really look up hacking for that game first so you have a better understanding of how to do what exactly you want to do. I can't point you in the right direction alot but the kernal-mode driver checking ReadProcessMem && WriteProcessMem is the right direction.

SliderMan
March 27th, 2009, 01:53 AM
first of all thanks for the replay.
the game i am talking about is not gunz. i do play gunz sometimes tho =P
i dont know alot about drivers i dont wanna start messign with this and get heaps loads of bsods
i just want a simple crc function to check the mem , module list which i already know how to get ( i think ) .
and debug registeres which i have no idea how to get.

thanks in advance.

nightpwn2
March 28th, 2009, 12:45 AM
Mhm, BSoD's are part of a learning process ^.^, You won't get heaps of loads of BSoDs though,
this probably has what yo uare looking for, http://www.ntcore.com/Files/antimida_1.0.htm