Skip to content
MPGHThe Dark Arts
/
RegisterLog in
Forum
Community
What's NewLatest posts across the boardTrendingHottest threads right nowSubscribedThreads you follow
Discussion
GeneralIntroductionsEntertainmentDebate FortFlaming & Rage
Board
News & AnnouncementsMPGH TimesSuggestions & HelpGiveaways
More Sections
Art & Graphic DesignProgrammingHackingCryptocurrency
Hacks & Cheats
Games
ValorantCS2 / CS:GOCall of Duty / WarzoneFortniteApex LegendsEscape From Tarkov
+14 moreLeague of LegendsGTA VMinecraftRustROTMGBattlefieldTroveBattleOnCombat ArmsCrossFireBlackshotRuneScapeDayZDead by Daylight
Resources
Game Hacking TutorialsReverse EngineeringGeneral Game HackingAnti-CheatConsole Game Hacking
Tools
Game Hacking ToolsTrainers & CheatsHack/Release NewsNew
Submit a release →Share your cheat, tool, or config with the community.
AINEW
AI Tools
General & DiscussionPrompt EngineeringLLM JailbreaksHotAI Agents & AutomationLocal / Open Models
AI × Gaming
AI Aimbots & VisionML Anti-CheatGame Bots & Automation
Create
AI Coding / Vibe CodingAI Art & MediaAI Voice & TTS
The AI frontier →Where game hacking meets modern machine learning. Jump in.
Marketplace
Buy & Sell
SellingBuyingTradingUser Services
Trust & Safety
Middleman LoungeMarketplace TalkVouch Copy Profiles
Money
Cryptocurrency TalkCurrency ExchangeWork & Job Offers
Start selling →List accounts, services, and goods. Use the middleman to trade safe.
MPGH The Dark Arts

A community for offensive security research, reverse engineering, and AI.

Community

ForumMarketplaceSearch

Account

RegisterLog in

Legal

Privacy PolicyForum RulesHelp & FAQ
© 2026 MPGH · All rights reserved.Built by the community, for the community. For educational purposes onlyContent is shared for security research and education — we don't condone illegal use. You're responsible for complying with applicable laws. Use at your own risk.
Home › Forum › MultiPlayer Game Hacks & Cheats › CrossFire Hacks & Cheats › CrossFire Hack Coding / Programming / Source Code › Basic memoty edit DLL

Basic memoty edit DLL

Posts 1–8 of 8 · Page 1 of 1
lauwy
lauwy
Basic memoty edit DLL
Hello ppl,

Becouse there are no good tutorials how to make a memory edit code:

Load first the libs we need:

Code:
//#include "stdafx.h" //for a pre file in visual studio remove //
#include <windows.h> //THe lib that we need
make the dll main:

Code:
BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved ) {
    DisableThreadLibraryCalls(hDll);
    
	/*Succesfoll attach*/
    if ( dwReason == DLL_PROCESS_ATTACH ) {
        MessageBoxA(0,"Test injection","test", 0); //Shows a msg so I know that the DLL is injected
		CreateThread(0,0,(LPTHREAD_START_ROUTINE)loadddd,0,0,0);
    }

    return true;
}
Look at my other tuts how to make you own. I use loadddd to look if cshell is loaded. This one is called in the main of the DLL:

Code:
DWORD WINAPI loadddd(LPVOID) {
	while(GetModuleHandleA("CShell.dll") == NULL) { //Looks of CShell is loaded
		Sleep(150); //if It is not loaded sleep for 150 ms
	}

	Sleep(100); //let the proccesor wait for a sec, else if cshell is loaded you are doing changes in 0 ms... Maby it can be buggy

	CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)leukstedeel, NULL, NULL, NULL); //load the hack part
    return 0;
}
Make you hack part:

Code:
DWORD WINAPI leukstedeel(LPVOID) { //the hack thread

	//This will add a "switch" so I can test if the GetAsyncKeyState still works
	bool testswitch = false;

	//Cshell, we need it for mem edeting.. Becouse here are the addies located? I think?
	DWORD shell = (DWORD)GetModuleHandleA("CShell.dll"); //Cshell handel
	PDWORD rec = (PDWORD)(shell+0x000000); //addie to somting in cshell. Maby to a class :p
   
	//In a whil loop so we know that it will be runnig for ever. Or on a return false or break it will quite....
    while(true) {

		//Now we are going to enable and disable hacks
		if(GetAsyncKeyState(VK_NUMPAD0) &1) {
			testswitch = !testswitch;
		}

		//No reaload example
		if(testswitch) {
			//Do the memory edeting
		}

		Sleep(100);
    }
	return true;
}
Every thing is basic, i'm going to explane the hack part a littel bit more.

Code:
bool testswitch = false;
This is a bool that you can enable and disable with a short key, if the bool is true then do the hack.

Code:
	DWORD shell = (DWORD)GetModuleHandleA("CShell.dll"); //Cshell handel
	PDWORD rec = (PDWORD)(shell+0x000000); //addie to somting in cshell. Maby to a class :p
shell is a handel to cshell, and google PDWORD if you want to know what that is.

Code:
while(true) {
Just a loop

Code:
		if(GetAsyncKeyState(VK_NUMPAD0) &1) {
			testswitch = !testswitch;
		}
To enable and disable testswitch.

Code:
		if(testswitch) {
			//Do the memory edeting
		}
Look if the testswitch is true, then do the hack.

Code:
Sleep(100);
To spare the cpu, and if you did't do this you need to be very past to enable or disable a hack.

Full code

Code:
//#include "stdafx.h"
#include <windows.h> //THe lib that we need

DWORD WINAPI leukstedeel(LPVOID) { //the hack thread

	//This will add a "switch" so I can test if the GetAsyncKeyState still works
	bool testswitch = false;

	//Cshell, we need it for mem edeting.. Becouse here are the addies located? I think?
	DWORD shell = (DWORD)GetModuleHandleA("CShell.dll"); //Cshell handel
	PDWORD rec = (PDWORD)(shell+0x000000); //addie to somting in cshell. Maby to a class :p
   
	//In a whil loop so we know that it will be runnig for ever. Or on a return false or break it will quite....
    while(true) {

		//Now we are going to enable and disable hacks
		if(GetAsyncKeyState(VK_NUMPAD0) &1) {
			testswitch = !testswitch;
		}

		//No reaload example
		if(testswitch) {
			//Do the memory edeting
		}

		Sleep(100);
    }
	return true;
}

DWORD WINAPI loadddd(LPVOID) {
	while(GetModuleHandleA("CShell.dll") == NULL) { //Looks of CShell is loaded
		Sleep(150); //if It is not loaded sleep for 150 ms
	}

	Sleep(100); //let the proccesor wait for a sec, else if cshell is loaded you are doing changes in 0 ms... Maby it can be buggy

	CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)leukstedeel, NULL, NULL, NULL); //load the hack part
    return 0;
}

BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved ) {
    DisableThreadLibraryCalls(hDll);
    
	/*Succesfoll attach*/
    if ( dwReason == DLL_PROCESS_ATTACH ) {
        MessageBoxA(0,"Test injection","test", 0); //Shows a msg so I know that the DLL is injected
		CreateThread(0,0,(LPTHREAD_START_ROUTINE)loadddd,0,0,0);
    }

    return true;
}

What do you need more?

A anti memory edit bypass, so that you can use this. You can load crossfire in olly dbg if you rename the olly procces and use for exaple advancedolly.

Gl, I hope some one can help me with the bypass becouse I'm not very good in olly (a). I need to learn asm.

Edit:
Yes I made this...
#1 · edited 15y ago · 15y ago
Skulhead = hacked.
Skulhead = hacked.
Great work.
#2 · 15y ago
A$
A$IAN
Nice tutorial...
One information for you:
If you release source codes ALWAYS built or hide some codes, cuz this forum is full of leechers...
#3 · 15y ago
A$
A$IAN
Right..
You were the one who reported to z8games about the Boxes PTC
Anywaay the bool part is unnessacary.
Put it into a infinite loop:
FOr example:

for(;
{
if(GetAsynckeyState(VK_F9)&1)
{
/Memory hack
}

Then you wont need the bool part
#4 · 15y ago
tdct
tdct
I made a dll that can be used as an alternitive to cheat engine, I'll release the source when I finish up.
#5 · 15y ago
LY
Lyoto Machida
Quote Originally Posted by tdct View Post
I made a dll that can be used as an alternitive to cheat engine, I'll release the source when I finish up.
Dont, Keep it privated , or will get pATTCHED by leechers
#6 · 15y ago
tdct
tdct
Lolz, it will work until they make it impossible to get a value using *(DWORD*) which they will never do
#7 · 15y ago
lauwy
lauwy
Quote Originally Posted by xXAznrulzXx View Post
Right..
You were the one who reported to z8games about the Boxes PTC
Anywaay the bool part is unnessacary.
Put it into a infinite loop:
FOr example:

for(;
{
if(GetAsynckeyState(VK_F9)&1)
{
/Memory hack
}

Then you wont need the bool part
With my methode you can cheak the value, if the value is changed then set the memory addie again.

That way you can freeze it
#8 · 15y ago
Posts 1–8 of 8 · Page 1 of 1

Post a Reply

Tags for this Thread

None