Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 19:27

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



C++ Source Codes gesucht

Discussion on C++ Source Codes gesucht within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
Jacob_G's Avatar
 
elite*gold: 0
Join Date: Aug 2006
Posts: 515
Received Thanks: 95
C++ Source Codes gesucht

Hallo,
Ich suche verschiedene Source Codes für C++ am besten kompatibel mit VS C++ 9.0 Compiler. Arten der Source Codes sollten hacking und botting sein. Am besten sollten diese auch noch unterschiedliche Schwierigkeitsgrade haben. Wenn ihr nicht möchtet das euer Source Code öffentlich wird, schickt mir den Text per PM, ich werde euch versichern, dass ich ihn nicht weiter gebe!
Danke im Voraus .
Jacob_G is offline  
Old 02/11/2009, 20:54   #2




 
bloodx's Avatar
 
elite*gold: 55
Join Date: Mar 2006
Posts: 4,582
Received Thanks: 1,539
(C) BakaBug
PHP Code:
/*
KAL HACK 11 by BakaBug
-----------------------------------------
stricsamo you little wannabe !
First stealing my KalHack8 renaming it to KsBOT

And then telling everyone that you have written KalHack1-11
and wanna release it ? COM'ON RELEASE IT !!

Anyways guy's..

This hack would still work on INT-Server when
you know how to use it...
True is this is only a TEST-HACK
Used for checking how to the new hshild is ...

New Hshild is really better .. but arg it doesnothing ..

Anyways you can't call it a fully hack
The source were wirtten in 20min without any reason
for making it to a GOOD HACK / BOT

It include a little funny bot
(which is handled over a bad written packet handling)

BOT DO:
1. Walk form mob to mob
2. Kill it ..

Yeah not much + whats funny about it ?

The fun comes here:
No Players around: Move speed superman... toooooo fast XD
1 or more player : Normal move speed + walking on ground normal attack speed

Yeah nobody would see it as bot :X

I called it invisible bot ^^

Auto-pickup am not sure but i think it inclded a noobs-test pickup..

Anyways everything is worse written...

(c) BakaBug - Luca Béla Palkovics 31.Dez.2007 15:33
You can see this as a little present from me !
HAPPY NEW YEAR !!!

You can use the source where you want.. XD
But pls add my Name XD .. don't be a wannabe like "stric samo"


AH FOR THE NOOBS:
No this is not a full hack
No you can't copy past finish

FOR PROFIS:
SearchPattern does nothing else then serach for a ASM-Sequenze
My Detours working without problems

FOR SOMEONE WHO WANT TO MAKE IT BETTER:
DON'T USE THE SEND-DETOUR FOR GETTING WHATS SENT !!
AS YOU SEE IT'S REALLY HARD TO FILER OUT THE PACKET INFOS THIS WAY
IT'S BETTER YOU DO IT LIKE THE RECV-DETOUR
*/
#include <stdio.h>
#include "HackIt.h"
#include "Hook.h"
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <fcntl.h> /* for _O_TEXT and _O_BINARY */
#include <io.h>
#include <process.h>
// basic file operations
#include <iostream>
#include <fstream>
#include <math.h>

//connect to myself
char SendText[]="SEND TYPE: 0x%0.2x FORMAT: %s\n";
char RecvText[]="RECV TYPE: 0x%0.2x DATA : ";

DWORD MyRecvBack,MySendBack,MyHeightBack,MyTeleportBack;
DWORD GetUnitByName;

struct SPlayer
{
DWORD PID;
DWORD X;
DWORD Y;
DWORD Z;
BYTE Classe;
char name[255];
};
SPlayer Player[500]={0};

struct SItem
{
DWORD Item;
DWORD X;
DWORD Y;
DWORD Z;
};
SItem Item[500]={0};

struct SMob
{
DWORD MID;
DWORD X;
DWORD Y;
DWORD Z;
BYTE Classe;
DWORD HP;
};
SMob Mob[500]={0};

int playerx,mobsx,hp,mp;
int last_u=0;
DWORD temp={0};
DWORD lastweapon={0};
DWORD target;
DWORD botstate=0;
DWORD FightBack[500]={0};
DWORD start_x,start_y,lastmove;
DWORD attackcount=0;

void IntDEBUG()
{
int hCrtInhCrtOut;
FILE *conIn, *conOut;

AllocConsole();
hCrtIn _open_osfhandle ((intptr_tGetStdHandle(STD_INPUT_HANDLE), _O_TEXT);
hCrtOut _open_osfhandle ((intptr_tGetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
conIn _fdopenhCrtIn"r" );
conOut _fdopenhCrtOut"w" );
*
stdin = *conIn;
*
stdout = *conOut;
}

float Naked Something2(DWORD some,DWORD some2,...)
{
//jep
__asm
{
push ebp
mov ebp
esp
sub esp
40h
}
//SOMETHING yeahhh
__asm
{
jmp MyTeleportBack
}
}


DWORD Naked Something(DWORD some,DWORD some2,...)
{
_asm
{
push ebp
mov ebp
esp
push ecx
fild 
[ebp+0x08]
mov eax, [ebp+0x0C]
shl eax0Dh
mov 
[ebp-0x04], eax
fisub 
[ebp-0x04]
mov espebp
pop ebp
fstp 
[ebp-0x04]
mov eax,[ebp-0x04]
retn
}
}

DWORD Naked CalculateMapPart(DWORD someDWORD)
{
__asm
{
push ebp
mov ebp
esp
sub esp
1Ch
mov eax
,someDWORD //GET VARIBALE FROM STACK
cdq // -> EAX -> 64bit auf EDX:EAX
and edx1FFFh
add eax
edx
sar eax
0Dh //roate 13bit Oo (right)
//return
mov espebp
pop ebp
retn
}
}

float Naked MyHeightDetour(DWORD x,DWORD y,...)
{
__asm
{
push ebp
mov ebp
esp
sub esp
918h 
}
//show info
//printf("Height 0x%08x 0x%08x %f\n ",x,y);
__asm
{
jmp MyHeightBack //back to original
}
}

DWORD GetUnit(charname)
{
__asm jmp GetUnitByName;
}

int Naked MySendDetour(DWORD type,LPCSTR format,...)
{
__asm
{
push ebp
mov ebp
esp
sub esp
18h
}


//if (format[0] =='U')
//DO SOMETHING HEHE
/*
SEND TYPE: 0x2b FORMAT: Ubd
SEND TYPE: 0x10 FORMAT: Ubbd
*/

//printf(SendText,type,format);

if (type == 0x25)
{
printf("SEND TELPORT TO TOWN !!!\n");
botstate=0;
Sleep(1000);
}

va_list args;
va_start(argsformat); /* Initialize variable arguments. */

int i,s;
charsomething;
for (
i=0;i<strlen(format);i++)
{
switch (
format[i])
{
case 
'U'//??? 4bytes
temp=va_argargsDWORD);
last_u=temp;
break;
case 
'b'//BYTE
if ((i==1)&&((type==0x14)||(type==0x15)))
Player[0].X+=(signed char)va_argargsDWORD);
if ((
i==2)&&((type==0x14)||(type==0x15)))
Player[0].Y+=(signed char)va_argargsDWORD);
if ((
i==3)&&((type==0x14)||(type==0x15)))
Player[0].Z+=(signed char)va_argargsDWORD);
if (
type==0x0F)
{
temp=va_argargsDWORD);
}
if (
type==0x10)
{
temp=va_argargsDWORD);
}
if (
type==0x15)
{
// printf("Pickup %d\n",va_arg(args, DWORD));
}
break;
case 
'd'//DWORD
if (type==0x0F)
//printf(" %d: %d\n",i+1,va_arg( args, DWORD));
temp=va_argargsDWORD);
if ((
i==2)&&(type==0x0F))
{
printf("Attack [%08x]\n,",temp);
s=temp;
}
if ((
i==3)&&(type==0x0F))
{
//yeah the item id
lastweapon=temp;
//printf("%08x]\n",temp);
attackcount++;
if (
attackcount>=4)
{
if (
mp>50)
{
//send skill
MySendDetour(0x10,"Ubbd",last_u,3,1,s);
// MySendDetour(0x2b,"Ubd",last_u,3,s);
}
attackcount=0;
}
}
break;
case 
'w'//WORD
// printf(" %d: %d\n",i+1,(WORD)va_arg( args, DWORD));
temp=va_argargsDWORD);
break;
case 
's'//WORD
// printf(" %d: %s\n",i+1,va_arg( args, char*));
something=va_argargschar*);
if (
type==0x11)
{
printf("Chat: %s\n",something);
if (
strcmp("/bot 1\0",something) == 0)
{
botstate=1;//active
start_x=Player[0].X;
start_y=Player[0].Y;
printf("ACTIVE BOT !\n");
}
if (
strcmp("/bot 0\0",something) == 0)
{
botstate=0//deactive
printf("DEACTIVE BOT !\n");
}
if (
strcmp("/test\0",something) == 0)
{
botstate=0//deactive
printf("Height test: %d %d %f!\n",Something(Player[0].X,0x20),Something(Player[0].Y,0x20),MyHeightDetour(Something(Player[0].X,0x20),Something(Player[0].Y,0x20)));
Something2(Something(Player[0].X+100,0x20),Something(Player[0].Y+100,0x20));
printf("Get UnitByName: BakaBug %d",GetUnit("BakaBug"));
}
if (
strcmp("/attack_all\0",something) == 0)
{
printf("CHEAT ATTACK ALL\n");
//yeah test attack all in near..
int ii;
for (
ii=0;ii<800;ii++)
{
//check if x !=0
if (Mob[ii].!= 0)
{
printf("MOB [%08x]\r",Mob[ii].MID);
int xx;
for (
xx=0;xx<5;xx++)
{
//MySendDetour(0x0F,"Ubdd",last_u,1,Mob[ii].MID,0);
//MySendDetour(0x0F,"Ubdd",last_u,1,Mob[ii].MID,0);
//MySendDetour(0x0F,"Ubdd",last_u,1,Mob[ii].MID,0);
MySendDetour(0x15,"Ubbb",last_u,1,1,-30);
}
}
//walk squar
}
}
}
break;
}
}
va_end(args); /* Reset variable arguments. */
//jump to original..

__asm
{
jmp MySendBack;
}
// .recv 6b änderung des appender
}


void MyThread(voidstart_parameter)
{
//here is our thread
DWORD lastattack;
while(
true//endless loop
{
char mytext[255];

if (
playerx != 0)
{
sprintf(mytext,"KalHack11 - HP: %d - MP: %d X: %d Y: %d Z: %d - BotState: %d\0",hp,mp,Player[0].X,Player[0].Y,Player[0].Z,botstate);
SetConsoleTitleA(mytext);
if (
botstate == 1)
{
printf("Search MOB..\n");
//SEARCH NEARES MOB !
int nearest=65535000;
int id=-1;
int i;
for (
i=0;i<500;i++)
if (
Mob[i].!= 0)
{
//MOB HERE CALC NEAR !
int difx=start_x-Mob[i].X;
int dify=start_y-Mob[i].Y;
//
int range=difx*difx+dify*dify;
if (
nearest range)
{
id=i;
nearest range;
}
}
if (
id!=-1)
{
//MOB FOUND
target=id;
botstate=2//walk to it !
printf("Walk to MOB..\n");
}
}

if (
botstate == 2)
{
//WALK TO SELECTED MOB !!
int difx=Player[0].X-Mob[target].X;
int dify=Player[0].Y-Mob[target].Y;
float range=(difx*difx+dify*dify)*1.0;
if (
sqrt(range) < 50.0)
{
botstate=3//ATTACK IT !
printf("attack the MOB..\n");
lastattack=GetTickCount()-800;
}
else
{
//CALC MOVE !
signed char tempx=-(difx/sqrt(range))*30;
signed char tempy=-(dify/sqrt(range))*30;
int difz=Player[0].Z-MyHeightDetour(Something(Player[0].X+tempx,0x20),Something(Player[0].Y+tempy,0x20))*10;
signed char tempz=-difz*1;
if (-
difz>120.0)
tempz=120;
if (-
difz<-120.0)
tempz=-120;
if (
playerx 1)
{
if (
lastattack<GetTickCount()-200*3)
{
MySendDetour(0x15,"Ubbb",last_u,tempx,tempy,tempz) ;
lastattack=GetTickCount();
}
}
else
MySendDetour(0x15,"Ubbb",last_u,tempx,tempy,tempz) ; //NOBODY HERE SPEED UP MAN !
}
}
if (
botstate==3)
{
//attack mob !!
if (lastattack<GetTickCount()-600)
{
//ATTACK IT !
MySendDetour(0x0F,"Ubdd",last_u,1,Mob[target].MID,lastweapon);
lastattack=GetTickCount();
}
//yeah
if (lastmove<GetTickCount()-200)
{
int difx=Player[0].X-Mob[target].X;
int dify=Player[0].Y-Mob[target].Y;
//int difz=Player[0].Z-MyHeightDetour(Something(Player[0].X,0x20),Something(Player[0].Y,0x20))*10;
float range=(difx*difx+dify*dify)*1.0;
signed char tempx=-(difx/sqrt(range))*30;
signed char tempy=-(dify/sqrt(range))*30;
//roate vector
tempy = (cos(100*3.16)*(tempx*1.0) - sin(100*3.16)*(tempy*1.0))*1;
tempy = (cos(100*3.16)*(tempy*1.0) + sin(100*3.16)*(tempx*1.0))*1;

int difz=Player[0].Z-MyHeightDetour(Something(Player[0].X+tempx,0x20),Something(Player[0].Y+tempy,0x20))*10;
signed char tempz=-difz*1;
if (-
difz>120.0)
tempz=120;
if (-
difz<-120.0)
tempz=-120;
if (
hp 100)
{
if (
sqrt(range) < 50.0)
{
if (
playerx <= 1)
MySendDetour(0x15,"Ubbb",last_u,tempx,tempy,tempz) ;
}
}
else
if (
sqrt(range) < 150.0)
{
MySendDetour(0x15,"Ubbb",last_u,tempx,tempy,tempz) ;
MySendDetour(0x15,"Ubbb",last_u,tempx,tempy,tempz) ;
//THIS IS RUN AWAY !
}

lastmove=GetTickCount();
}
}
}
Sleep(10);
}
}

int WINAPI MyRecv(charpacket)
{
//printf(RecvText,packet[2]);

WORD size;
memcpy((void*)&size,(void*)((DWORD)packet),2);
//loop and schon packet
/*
{
int i;
for (i=0;i<=size;i++)
{
printf("%02x ",(BYTE)packet[i]);
}
printf("\n");
}
*/
//size=(WORD)(packet[0]); //hoffe das ist die richtige..
if (packet[2] == 0x3B)
{
//ITEM AWAY !
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
int i;
for (
i=0;i<=500;i++)
if (
Item[i].Item==id)
{
//ITEM FOUND !
//DELETE IT !
Item[i].X=0;
break;
}
}
if (
packet[2] == 0x36)
{
//ADD ITEM
DWORD id;
DWORD x;
DWORD y;
memcpy((void*)&id,(void*)((DWORD)packet+5),4);
memcpy((void*)&x,(void*)((DWORD)packet+5+4),4);
memcpy((void*)&y,(void*)((DWORD)packet+5+4+4),4);
printf("Item dropped [%08x] [%d , %d]\n",id,x,y);
//add item to list !
int i;
for (
i=0;i<=500;i++)
{
if (
Item[i].== 0)
{
//FREE ITEM SLOT FOUND !
Item[i].Item=id;
Item[i].X=x;
Item[i].Y=y;
//easy autopickup..
//SEND TYPE: 0x15 FORMAT: Ubbb byte byte byet Oo ? wtf ?
MySendDetour(0x20,"Uddd",last_u,id,x/32,y/32);
}
}
}
if (
packet[2] == 0x46)
{
printf("TELPORT TO TOWN !!!\n");
botstate=0;
Sleep(1000);
}
if (
packet[2] == 0x45)
{
int i;
//for (i=0;i<size;i++)
// printf("%0.2x",(BYTE)packet[i]);
//printf("\n");

char myword[1];
myword[0]=packet[5];
myword[1]=packet[4];
if (
packet[3] == 0x08)
{
//printf("MP changed [%d]\n",(WORD)(myword[0]));
memcpy((void*)&mp,(void*)((DWORD)packet+4),2);
printf("MP changed [%d]\n",mp);
}
if (
packet[3] == 0x07)
{
memcpy((void*)&hp,(void*)((DWORD)packet+4),2);
printf("HP changed [%d]\n",hp);
}
}
if (
packet[2] == 0x3E)
{
//someone attack someon
//or something attack something :P
DWORD attacker=0;
DWORD target=0;
WORD dmg;
WORD dmg2;
memcpy((void*)&attacker,(void*)((DWORD)packet+3+1) ,4);
memcpy((void*)&target,(void*)((DWORD)packet+3+1+4) ,4);
memcpy((void*)&dmg,(void*)((DWORD)packet+3+1+4+2), 2);
memcpy((void*)&dmg2,(void*)((DWORD)packet+3+1+4+22),2);
//if targe myslef => fight back => update hp
//add dmg to target / if mob
int i;
for (
i=0;i<500;i++)
{
if (
Mob[i].MID==target)
{
Mob[i].HP-=(dmg+dmg2);
break;
}
}
}
if (
packet[2] == 0x3d)
{
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
BYTE state;
memcpy((void*)&state,(void*)((DWORD)packet+3+4),1) ;
//if (state==0x08)
//{
//someone die !
int i;
for (
i=0;i<500;i++)
{
//check if x =0
if (Mob[i].MID == id)
{
if (
state==0x08)
{
if (
i==target)
MySendDetour(0x10,"Ubbd",last_u,1,1,Mob[i].MID);
}
else
mobsx-=1;

if (
target==i)
if (
botstate != 0)
{
//MySendDetour(0x1F,"Ub",last_u,1); //REST?
botstate=1//when bot active
}

Mob[i].X=0//mob not here anymore
break;
}
}
//}
}
if (
packet[2] == 0x38)
{
//mob dis
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
int i;
for (
i=0;i<500;i++)
{
//check if x =0
if (Mob[i].MID == id)
{
//printf("mob away");
Mob[i].X=0//mob not here anymore
mobsx-=1;
break;
}
}
}

if ((
packet[2] == 0x24) || (packet[2] == 0x25))
{
//mob move..
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
int i;
for (
i=0;i<500;i++)
{
//check if x =0
if (Mob[i].MID == id)
{
signed char x,y/*,z*/=0;
memcpy((void*)&(x),(void*)((DWORD)packet+3+4),1);
memcpy((void*)&(y),(void*)((DWORD)packet+3+4+1),1) ;
//memcpy((void*)&(z),(void*)((DWORD)packet+3+4+1+1), 1);
Mob[i].X+=x;
Mob[i].Y+=y;
//Player[i].Z+=z;
break;
}
}
}
if (
packet[2] == 0x33)
{
//mob apear

int i;
for (
i=0;i<500;i++)
{
//check if x =0
if (Mob[i].== 0)
{
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3+2),4);
Mob[i].MID=id;
memcpy((void*)&(Mob[i].Classe),(void*)((DWORD)packet+3),2);
memcpy((void*)&(Mob[i].X),(void*)((DWORD)packet+3+4+2),4);
memcpy((void*)&(Mob[i].Y),(void*)((DWORD)packet+3+4+2+4),4);
memcpy((void*)&(Mob[i].HP),(void*)((DWORD)packet+3+4+2+4+4+1+1),2);
//printf("Mob: %d X %d Y %d Z %d HP %d\n",Mob[i].Classe,Mob[i].X,Mob[i].Y,Mob[i].Z,Mob[i].HP);
mobsx+=1;
break;
}
}
}
if (
packet[2] == 0x37)
{
//disapear
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
int i;
for (
i=0;i<500;i++)
{
if (
Player[i].PID == id)
{
printf("Player disapear [PID: %08x Name: %s]\n",id,Player[i].name);
Player[i].X=0//deactive !
playerx-=1;
break;
}
}
}
if ((
packet[2] ==0x22) || (packet[2] == 0x23))
{
//player move.. jetzt noch net..
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
int i;
for (
i=0;i<500;i++)
{
//check if x =0
if (Player[i].PID == id)
{
//printf("Player move [PID: %08x Name: %s]\n",id,Player[i].name);
signed char x,y,z=0;
memcpy((void*)&(x),(void*)((DWORD)packet+3+4),1);
memcpy((void*)&(y),(void*)((DWORD)packet+3+4+1),1) ;
memcpy((void*)&(z),(void*)((DWORD)packet+3+4+1+1), 1);
Player[i].X+=x;
Player[i].Y+=y;
Player[i].Z+=z;
break;
}
}
}
if (
packet[2] == 0x32)
{
//player apear
DWORD id;
memcpy((void*)&id,(void*)((DWORD)packet+3),4);
char name[255]={0};
memcpy((void*)&name,(void*)((DWORD)packet+7),16);
printf("Player apear [PID: %08x Name: %s]\n",id,name);
//ADD PLAYER
int i;
for (
i=0;i<500;i++)
{
//check if x =0
if (Player[i].== 0)
{
memcpy((void*)&(Player[i].name),(void*)&name,16);
Player[i].PID=id;
int aftername;
aftername=strlen(Player[i].name);
//insert COORDINATES
memcpy((void*)&(Player[i].Classe),(void*)((DWORD)packet+7+aftername+1),1);
memcpy((void*)&(Player[i].X),(void*)((DWORD)packet+7+aftername+2),4);
memcpy((void*)&(Player[i].Y),(void*)((DWORD)packet+7+aftername+2+4),4);
memcpy((void*)&(Player[i].Z),(void*)((DWORD)packet+7+aftername+2+4+4),4);
//printf("C: %d X: %d Y:%d Z:%d\n",Player[i].Classe,Player[i].X,Player[i].Y,Player[i].Z);
playerx+=1;
break; 
//ender der schleife
}
}
}
return 
0;
}

int Naked MyRecvDetour()
{
__asm
{
push edx
push ecx
push ebx
push eax

mov eax
, [ebp+0x08//my packet ehh ^^
push eax
call MyRecv

pop eax
pop ebx
pop ecx
pop edx

mov eax
, [ebp+0x08]
movzx ecx, [eax+2]
mov edx,MyRecvBack//0x00523272
jmp edx
}
}

DWORD SearchPattern(charpattern,DWORD start_offset)
{
//strtoul
if (start_offset==0)
start_offset=0x00401000;
DWORD offset=start_offset//in olly nachgucken
DWORD ende =0x0061A587//in olly nachgucken
DWORD start=offset//yep
DWORD backoffset;
DWORD size =strlen(pattern)-1;
DWORD foundoffset=0//0=not found !

char pEnd=pattern//next letter position
while(1)
{
char &myposition=*(char*)offset;
//überprüfen
if ((pEnd[1]!='x'))
{
char temp=(char)strtoul(pEnd, &pEnd0x10);
if (
temp==myposition)
{
if (
foundoffset==0)
{
foundoffset=offset;
}
}
else
{
//everything from beginning
pEnd=pattern;
if (
foundoffset != 0)
offset=foundoffset;
foundoffset=0;
}
}
else
{
//WILDCARE DON'T HANDLE
pEnd=&pEnd[2]; //2 weiter " x" <- yep
}
offset++; //immer 1 byte dazu
if (((DWORD)pEnd-(DWORD)pattern>=size)||(offset>=ende))
break; 
//ende der schleife
}

return 
foundoffset;
}

void PimpItNow()
{
//hack start
IntDEBUG();

char mytext[255]={0};
sprintf(mytext,"KalHack11");
SetConsoleTitleA(mytext);

printf("KalHack 11 - I am not dead yet ! - by BakaBug\n");
printf("----------------------------------------------------\n");
int offset;
printf("[%6d] Install Send-Detour \n",offset=SearchPattern("55 8B EC 83 EC 18 83 3D x x x x 00 74 07 33 C0 E9 x x x x 8A 45",0));
if (
offset != 0)
Intercept(INST_JMP,offset,(DWORD)MySendDetour,5);
MySendBack=offset+6;
printf("[%6d] Install Recv-Detour \n",offset=SearchPattern("8B 45 08 0F B6 48 02 89 8D x x FF FF 81 BD x x FF FF 81 00 00 00",0));
if (
offset != 0)
Intercept(INST_JMP,offset,(DWORD)MyRecvDetour,5);
MyRecvBack=offset+7;
printf("[%6d] Install GetHeight-Detour \n",offset=SearchPattern("55 8B EC 81 EC 94 00 00 00 D9 45 08 D8 35 x x x x D9 5D 08",0));
if (
offset != 0)
Intercept(INST_JMP,offset,(DWORD)MyHeightDetour,5) ;
MyHeightBack=offset+9;
printf("[%6d] Install Teleport-Detour\n",offset=SearchPattern("55 8B EC 83 EC 40 33 C0 83 3D x x x x x 0F 95 C0 85 C0",0));
if (
offset != 0)
Intercept(INST_JMP,offset,(DWORD)Something2,5);
MyTeleportBack=offset+6;
printf("[%6d] Install DEBUG-Message-Detour \n",offset=SearchPattern("55 8B EC 5D C3 CC CC CC CC CC CC CC CC CC CC CC 55 8B EC 83 EC 2C C7 45 D4 00 00 00 00 C7 45 DC 00 00 00 00 C7 45 D8 00 00 00 00 8B 45 08 33 D2 B9 00 01 00 00 F7 F1 89 55 D8 8B 55 D8",0));
if (
offset != 0)
Intercept(INST_JMP,offset,(DWORD)printf,6);
printf("Active DEBUG-Messages..\n");
int batches=0;
offset=0;
while (
1)
{
offset=SearchPattern("01 00 00 00 85 x 74 x EB x",offset);
if (
offset==0)
break;
batches++;
printf("Patched: %d [%d]\r",batches,offset);
Intercept(INST_NOP,offset+8,0,2);
}
GetUnitByName=SearchPattern("8B 11 89 55 EC 8B 45 EC 89 45 F8 EB 08",0);
printf("\n----------------------------------------------------\n");
_beginthread(MyThread,0,NULL);

PHP Code:
#include <math.h>
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <fcntl.h>
#include <io.h>
#include <process.h>
#include <windows.h>

#define ASM            void __declspec(naked)
#define    EXPORT        __declspec(dllexport) __cdecl
#define    THREAD        DWORD WINAPI
#define Naked __declspec( naked )
#define INST_NOP 0x90
#define INST_CALL 0xe8
#define INST_JMP 0xe9
#define INST_BYTE 0x00
#define SHORT_JZ 0x74

using namespace std;

LPVOID MemcpyEx(DWORD lpDestDWORD lpSourceint len)
{
    
DWORD oldSourceProt,oldDestProt=0;
     
VirtualProtect((LPVOID)lpSource,len,PAGE_EXECUTE_READWRITE,&oldSourceProt);
       
VirtualProtect((LPVOID)lpDest,len,PAGE_EXECUTE_READWRITE,&oldDestProt);
       
memcpy((void*)lpDest,(void*)lpSource,len);
      
VirtualProtect((LPVOID)lpDest,len,oldDestProt,&oldDestProt);
     
VirtualProtect((LPVOID)lpSource,len,oldSourceProt,&oldSourceProt);
    return (
LPVOID)lpDest;
};

DWORD Intercept(int instructionDWORD lpSourceDWORD lpDestint len)
{
    
//    if(!lpDest || !lpSource || len <= 4) //ich brauch auch 2bytes
//        return FALSE;                    //lpDest = neu_adresse for SHOT_JZ
    
DWORD realtarget;
    
LPBYTE buffer = new BYTE[len];
    
    
memset(buffer,0x90,len); //Fill out with nops

    
if (instruction != INST_NOP && len >= 5)
    {
    
buffer[(len-5)] = instruction//Set the start of the call @ the end
    //so we can return normally if the code is unpatched (unhook patches while patchfunction is running)
    
DWORD dwJMP = (DWORD)lpDest - (lpSource + (len-5));
    
memcpy(&realtarget,(void*)(lpSource+1),4);
    
realtarget realtarget+lpSource+5;
    
memcpy(buffer + (len-5),&dwJMP,4);
    }
    if (
instruction == SHORT_JZ)
    {
        
buffer[0]=instruction;
        
buffer[1]=(BYTE)lpDest;
    }
    if (
instruction == INST_BYTE)
    {
        
buffer[0]=(BYTE)lpDest;
    }
    
MemcpyEx(lpSource, (DWORDbufferlen);// Call to intercept
    
delete[] buffer;
    return 
realtarget;
}


BOOL WINAPI DllMain(HINSTANCE hInst,DWORD reason,LPVOID)
    {
    if (
reason == DLL_PROCESS_ATTACH)
        {
          
//DLL LOADING
        
}
    if (
reason == DLL_PROCESS_DETACH)
        {
         
//DLL UNLOADING
        
}

    return 
1;
    } 
bloodx is offline  
Thanks
1 User
Old 02/11/2009, 21:14   #3
 
Jacob_G's Avatar
 
elite*gold: 0
Join Date: Aug 2006
Posts: 515
Received Thanks: 95
Danke für den Code .
Jacob_G is offline  
Old 02/11/2009, 23:43   #4

 
Adroxxx's Avatar
 
elite*gold: 15
Join Date: Nov 2005
Posts: 13,021
Received Thanks: 5,324
Ich kann dir später mal 1-2 Sourcecodes von mir hochladen. Also direkt mit Projektdateien. Weil kb da rumzu c&p'n.
Adroxxx is offline  
Old 02/11/2009, 23:53   #5
 
Jacob_G's Avatar
 
elite*gold: 0
Join Date: Aug 2006
Posts: 515
Received Thanks: 95
Jop gerne
Edit: Muhhhhhhhhh Androxxxxxx ;(, du bist langsam T__T. Ach Scherz, mir ist einfach langweilig^^.
Jacob_G is offline  
Reply


Similar Threads Similar Threads
Source codes
05/09/2010 - WarRock - 5 Replies
man sieht ja oft hacks die fast identisch aus sehen wie blacklabel und ein nnn hack oder auch viele andere wie der mpgh hack von pixi und der gleiche auf türkisch sind die ganzen Source code eigentlich public oder wieso gibt es immer so viele hacks die indentisch sind? kann mir das mal jemand sagen bzw wenn die public sind mir sagen wo ich die her kriege?
GM CODES GESUCHT
11/29/2009 - Metin2 Private Server - 2 Replies
Hai ich suche alle GM codes die mit: /ski /setsk usw. anfangen bitte schreibt zurück =DD
Source Codes
03/25/2008 - General Gaming Discussion - 0 Replies
Hi wollte fragen ob wer nen Source Code von nem Aimbot bzw wallhack hat?
source codes?
09/09/2005 - World of Warcraft - 4 Replies
hi kann mir mal einer sagen wo ich entweder source codes von den hacks finde, würd mir das gerne mal ankucken um selber was machen zu können zur not würde auch ne seite mit allgemeinen tuts reichen.. was ich bis jetzt gefunden hab sind immer nur so redsälige seiten die was von objekten und shit erzählen und lauter so basiswissen irgendwie gibts scheinbar keine seiten für forgeschrittene also: hat jemand gute links ^^ ?? ich warte



All times are GMT +1. The time now is 19:29.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.