Tutorial Assault Cube Map Hack

Hexui Undetected CSGO Cheats Sinkicheat PUBG Cheat

Rake

Cesspool Admin
Administrator
Jan 21, 2014
12,164
78,998
2,399


Externally:
C++:
WriteProcessMemory(hProcHandle, (LPVOID)(0x00409fb3), "\x39\xC0\x90\x90\x90\x90", 6, NULL);
Internal:
C++:
DWORD old_protect;
VirtualProtect((void*)0x00409fb3, 6, PAGE_EXECUTE_READWRITE, &old_protect);
memcpy((void*)0x00409fb3, (PBYTE)("\x39\xC0\x90\x90\x90\x90"), 6);
VirtualProtect((void*)0x00409fb3, 6, old_protect, &old_protect);
Before:


This is a loop that iterates through all players and checks if they should be displayed on the local player's radar

mov eax,[edi+0000032C]:
EDI = local player address, 0x32c = offset to local player team #
Move player team # into eax

cmp [esi+0000032C],eax:
esi = other player address, 0x32C = offset to player team#
Compare them

jne 0040A103:
This jumps past the DrawPlayerOnRadar Function if not equal

After:


I changed the CMP to compare EAX to EAX which returns equal. the JNE jumps over the draw function if not equal. But I changed the CMP to equal so, it does not jump over the draw function so all players get drawn to the radar!
 
Last edited:

Rake

Cesspool Admin
Administrator
Jan 21, 2014
12,164
78,998
2,399
Updated:



2 Different features, 2 different settings.

Each time you press F5 it cycles through these modes:

1)Display all players on radar and on the map.
2)Display only enemies on radar and on map
3)Display only team mates (normal)

I've changed the code a bit. To display all players, I'm nopping the JNE so the draw function doesn't get jumped. Or to display enemies only I change the JNE to JE.

C++:
int iMapHack = 0;

if (GetAsyncKeyState(VK_F5))
{
    Hack.KeyPressTimer = clock();
    DWORD old_protect;

    switch (iMapHack)
    {
    case 0:

        //map show enemies
        VirtualProtect((void*)0x04096A2, 1, PAGE_EXECUTE_READWRITE, &old_protect);
        memcpy((void*)0x04096A2, (PBYTE)("\x84"), 1);
        VirtualProtect((void*)0x04096A2, 1, old_protect, &old_protect);

        //radar show enemies
        VirtualProtect((void*)0x0409FB4, 1, PAGE_EXECUTE_READWRITE, &old_protect);
        memcpy((void*)0x0409FB4, (PBYTE)("\x84"), 1);
        VirtualProtect((void*)0x0409FB4, 1, old_protect, &old_protect);

        menu.updateMenu(menu.sMapHack, "Enemies");
        iMapHack++;
        break;
    case 1:

        //map show ALL
        VirtualProtect((void*)0x04096A1, 6, PAGE_EXECUTE_READWRITE, &old_protect);
        memcpy((void*)0x04096A1, (PBYTE)("\x90\x90\x90\x90\x90\x90"), 6);
        VirtualProtect((void*)0x04096A1, 6, old_protect, &old_protect);

        //radar show ALL
        VirtualProtect((void*)0x0409FB3, 6, PAGE_EXECUTE_READWRITE, &old_protect);
        memcpy((void*)0x0409FB3, (PBYTE)("\x90\x90\x90\x90\x90\x90"), 6);
        VirtualProtect((void*)0x0409FB3, 6, old_protect, &old_protect);

        menu.updateMenu(menu.sMapHack, "All");
        iMapHack++;
        break;
    case 2:

        //restore original values:
        //map restore
        VirtualProtect((void*)0x04096A1, 6, PAGE_EXECUTE_READWRITE, &old_protect);
        memcpy((void*)0x04096A1, (PBYTE)("\x0f\x85\x53\x01\x00\x00"), 6);
        VirtualProtect((void*)0x04096A1, 6, old_protect, &old_protect);

        //radar restore
        VirtualProtect((void*)0x0409FB3, 6, PAGE_EXECUTE_READWRITE, &old_protect);
        memcpy((void*)0x0409FB3, (PBYTE)("\x0f\x85\x4a\x01\x00\x00"), 6);
        VirtualProtect((void*)0x0409FB3, 6, old_protect, &old_protect);

        menu.updateMenu(menu.sMapHack, "OFF");
        iMapHack = 0;
        break;
    }

}
 
Last edited:

Obsidian

Newbie
Full Member
Jul 6, 2013
24
413
1
Whoa, this is amazing. o_O I wanna implement this into future practice hacks. :3
 

mPulse

Coder
Full Member
Nobleman
Jun 19, 2013
106
733
0
Thank you alot,Im gonna use that and try make this one bit of more advanced :p
 

Rake

Cesspool Admin
Administrator
Jan 21, 2014
12,164
78,998
2,399
Thank you alot,Im gonna use that and try make this one bit of more advanced :p
Sorry bro I have to call you out on this one, how in God's name are you going to make this more advanced?
 

Solaire

Respected Hacker
Dank Tier VIP
Dec 15, 2013
1,051
16,353
62
Sorry bro I have to call you out on this one, how in God's name are you going to make this more advanced?
More classes and pointer arithmetic! Write it all in ASM! Write it all in using only opcodes!

For extreme advanced, write it all in binary!
 

Rake

Cesspool Admin
Administrator
Jan 21, 2014
12,164
78,998
2,399
An empty class with one member function lol, #krampus :)
 

Liduen

Hacker
Dank Tier VIP
May 19, 2013
702
8,478
33
How did you find this memory region?
Did you just set a breakpoint on the beginning of the player struct and looked where it got accessed? AnomanderRake
 

Rake

Cesspool Admin
Administrator
Jan 21, 2014
12,164
78,998
2,399
I knew the game only draws teammates on the radar/map so I did in cheat engine "what accesses this address" on my teamnumber address then I loaded some of the results into IDA. I saw some openGL functions which made sense, and I really figured it out when I saw it checking the GameType to see if it was deathmatch or team game. Then it does this loop through the player array and draws them if they are on your team.
 

Solaire

Respected Hacker
Dank Tier VIP
Dec 15, 2013
1,051
16,353
62
I knew the game only draws teammates on the radar/map so I did in cheat engine "what accesses this address" on my teamnumber address then I loaded some of the results into IDA. I saw some openGL functions which made sense, and I really figured it out when I saw it checking the GameType to see if it was deathmatch or team game. Then it does this loop through the player array and draws them if they are on your team.
Next challenge:
Create a radar (Internal or external) using OpenGL. Rip the code out of the radar drawing funct if you need to for the radar math :p
 
Attention! Before you post:

Read the How to Ask Questions Guide
99% of questions are answered in the Beginner's Guide, do it before asking a question.

No Hack Requests. Post in the correct section.  Search the forum first. Read the rules.

How to make a good post:

  • Fill out the form correctly
  • Tell us the game name & coding language
  • Post everything we need to know to help you
  • Ask specific questions, be descriptive
  • Post errors, line numbers & screenshots
  • Post code snippets using code tags
  • If it's a large project, zip it up and attach it

If you do not comply, your post may be deleted.  We want to help, please make a good post and we will do our best to help you.

Community Mods