Code:
#include <windows.h>
#include <cstdlib>
#include <iostream>
using namespace std;
//global variables
int map;
HANDLE hProcess;
DWORD proc_id;
float x;
float y;
float z;
unsigned char ffc[4]={0x45, 0x1f, 0x41, 0x00};
//Function
void *memcpy_ex( void* pvAddress, void* pvBuffer, unsigned long stSize );
void setcolor(unsigned short color);
void *flagcapsher( float, float y , float z );
void hook();
unsigned long GetPointerx( );
unsigned long GetPointery( );
unsigned long GetPointerz( );
unsigned long fastf = 1120403456; // need numbers
int main(int argc, char *argv[])
{
hook();
setcolor (10);
printf("\n Extreme Flag Capsher by Boom \n");
printf("*********************************** \n");
printf("\nSelect a map:\n");
printf("1:Montana\n");
printf("2:Harbor Ida\n");
printf("3:Emblem\n");
printf("4:Havana\n");
printf("5:Ravello\n");
printf("6:Nerbil\n");
printf("7:Alberon\n");
printf("8:Zakhar\n");
printf("9:Cantumira\n");
printf("10:Harbor Elia\n");
printf("11:Rabello 2nd St.\n");
printf("12:Ohara\n");
printf("13:Engrene\n");
printf("14:Pargona\n");
printf("15:Pargona East\n");
printf("16:Conturas\n");
printf("\nMap:");
while(true)
{
cin>> map;
cin.ignore();
switch (map){
case 1:
x = 6692.007;
y = 6383.989;
z = 0;
flagcapsher( x, y , z );
break;
case 2:
//base 3
x = 3262.981;
y = 2307.622;
z = 301.6208;
flagcapsher( x, y , z );
//base 2
x = 3153.659;
y = 3254.677;
z = 12.41754;
flagcapsher( x, y , z );
break;
case 3:
//base 3
x = 7718.804;
y = 6212.968;
z = -711.7377;
flagcapsher( x, y , z );
//base 2
x = 6494.951;
y = 6156.242;
z = -704.3044;
flagcapsher( x, y , z );
//base 4
x = 5247.878;
y = 5810.087;;
z = -711.7647;
flagcapsher( x, y , z );
break;
case 4:
system("PAUSE");
break;
case 5:
//base 3
x = 2952.863;
y = 2659.444;
z = 80.55609;
flagcapsher( x, y , z );
//base 1
x = 4240.577;
y = 3965.465;
z = 121.2554;
flagcapsher( x, y , z );
break;
case 6:
system("PAUSE");
break;
case 7:
system("PAUSE");
break;
case 8:
system("PAUSE");
break;
case 9:
system("PAUSE");
break;
case 10:
system("PAUSE");
break;
case 11:
system("PAUSE");
break;
case 12:
//base 2
x = 8922.823;
y = 5967.322;
z = 343.7383;
flagcapsher( x, y , z );
//base 3
x = 5245.583;
y = 6342.332;
z = 227.4416;
flagcapsher( x, y , z );
//base 4
x = 9741.694;
y = 9909.838;
z = 720.696;
flagcapsher( x, y , z );
break;
case 13:
//base4
x = 8496.879;
y = 10118.87;
z = -944.6606;
flagcapsher( x, y ,z);
//base 5
x = 9326.361;
y = 7969.68;
z = -387.3379;
flagcapsher( x, y , z );
//base 3
x = 11329.56;
y = 10393.91;
z = -911.101;
flagcapsher( x, y , z );
//base 6
x = 10520.25;
y = 12481.19;
z = -965.0903;
flagcapsher( x, y , z );
//base 8
x = 10456.55;
y = 14363.23;
z = -423.9535;
flagcapsher( x, y , z );
//base 2
x = 12446.7;
y = 14840.81;
z = -951.5065;
flagcapsher( x, y , z );
//base 11
x = 15584.18;
y = 17599.24;
z = -343.5287;
flagcapsher( x, y , z );
//base 1
x = 16597.64;
y = 15727.64;
z = -944.6764;
flagcapsher( x, y , z );
//base 7
x = 15090.58;
y = 13260.52;
z = -960.6879;
flagcapsher( x, y , z );
//base 9
x = 14613.58;
y = 11283.75;
z = -441.9607;
flagcapsher( x, y , z );
break;
case 14:
//base 9
x= 20891.1;
y= 21362.05;
z= -67.88079;
flagcapsher( x, y , z );
//base 7
x= 25607.19;
y= 22337.3;
z= -85.7246;
flagcapsher( x, y , z );
//base 5
x= 30831.42;
y= 22423.53;
z= -173.9064;
flagcapsher( x, y , z );
//base 3
x= 26788.49;
y= 25924.57;
z= 742.7164;
flagcapsher( x, y , z );
//base 2
x= 24749.97;
y= 25305.65;
z= 743.2335;
flagcapsher( x, y , z );
//base 4
x= 25930.26;
y= 29043.96;
z= -93.5324;
flagcapsher( x, y , z );
//base 6
x= 30565.34;
y= 29779.44;
z= -39.42411;
flagcapsher( x, y , z );
//base 5
x= 20448.17;
y= 28568.81;
z= -168.2906;
break;
case 15:
system("PAUSE");
break;
case 16:
//base 4
x = 12532.14;
y = 21475.22;
z = 282.4926;
flagcapsher( x, y , z );
//base 2
x = 22058.14;
y = 17182.67;
z = -273.1387;
flagcapsher( x, y , z );
//base 8
x = 25455.44;
y = 15826.64;
z = 528.7164;
flagcapsher( x, y , z );
//base 3
x = 23341.64 ;
y = 24807.16;
z = -264.9794;
flagcapsher( x, y , z );
//base 5
x = 28163.35;
y = 26078.61;
z = -265.0934;
flagcapsher( x, y , z );
//base 7
x = 39077.27;
y = 27426.92 ;
z = 428.2683;
flagcapsher( x, y , z );
//base 9
x = 27727.84;
y = 34941.14;
z = 381.962;
flagcapsher( x, y , z );
//base 6
x = 29972.39;
y = 33729.59;
z = -257.3374;
flagcapsher( x, y , z );
break;
}
}
system("PAUSE");
}
void *memcpy_ex( void* pvAddress, void* pvBuffer, unsigned long stSize )
{
DWORD Dummy = 0;
if( WriteProcessMemory( hProcess, pvAddress, pvBuffer, stSize, &Dummy ) == TRUE )
{
return pvAddress;
}
return NULL;
}
void setcolor(unsigned short color) //The function that you'll use to
{ //set the colour
HANDLE hcon = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hcon,color);
}
void hook ()
{
int pcheck = 1;
while ( pcheck == 1 ){
HWND hWnd = FindWindow(0, "WarRock");
if(hWnd == NULL)
{
Sleep(50) ;
}
else
{
pcheck = 2;
GetWindowThreadProcessId(hWnd, &proc_id);
hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc_id);
cout<< "process hooked"<<endl;
cout<< "pid:"<<proc_id<<""<<endl;
}
}
}
void *flagcapsher( float x, float y , float z )
{
memcpy_ex( ( void* )( ( GetPointerz( ) ) + 0x180 ), &z, sizeof( float ) );
memcpy_ex( ( void* )( ( GetPointerx( ) ) + 0x17C ), &x, sizeof( float ) );
memcpy_ex( ( void* )( ( GetPointery( ) ) + 0x184 ), &y, sizeof( float ) );
Sleep(200);
int tf = 1;
while ( tf < 10 )
{
memcpy_ex( ( void* )0x0090dc4d, &ffc, sizeof( unsigned long ) );
Sleep(200);
tf++;
}
}
unsigned long GetPointerx( )
{
DWORD dummy, dwRead = 0;
if( ReadProcessMemory( hProcess, ( void* )0x00896E28, &dummy, sizeof( DWORD ), &dwRead ) == TRUE )
{
return dummy;
}
return 0;
}
unsigned long GetPointery( )
{
DWORD dummy, dwRead = 0;
if( ReadProcessMemory( hProcess, ( void* )0x00896E28, &dummy, sizeof( DWORD ), &dwRead ) == TRUE )
{
return dummy;
}
return 0;
}
unsigned long GetPointerz( )
{
DWORD dummy, dwRead = 0;
if( ReadProcessMemory( hProcess, ( void* )0x00896e28, &dummy, sizeof( DWORD ), &dwRead ) == TRUE )
{
return dummy;
}
return 0;
}