Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Rav3n

Pages: [1] 2 3 4 5 6
1
This is simple C++ code to make an application that can manipulate memory in any program / game, works with all versions of windows.

Simply copy and paste into a new C++ main.c file, build your Form and your good to go.


Code: [Select]
#include <windows.h>
#include <tlhelp32.h>
#include "resource.h"



#pragma comment(linker,"/FILEALIGN:512 /MERGE:.rdata=.text /MERGE:.data=.text /SECTION:.text,EWR /IGNORE:4078")
BOOL GameRunning;

/** Start of Declarations here **/
BOOL GetProcessList( );

// Below is the about text that is shown when "About" button is clicked

char *about   =
"C++ Memory Changer /n"
"Vietcong Hud on/off"
"Thanks to Medic and Subsky";
/////////////////////////////////////////////////////////////////////

char *gameWindow = "vietcong.exe"; // exe name here
DWORD pid; HWND hwndWindow; DWORD bytes; HANDLE hand = NULL;



HANDLE pFile; //Used for logging address to file (not implimented in this build)

//below you will list the BOOLs for function toggles
BOOL IsHack1On,FirstTime1;
BOOL dlgReadSuccess = FALSE;


///////////////////////////////////////////////////////
////Global Variables


Modapp on Code
BYTE Hud[1] = {0x92};
// add more below here


Modapp off Code
BYTE original_code[1] = {0x96};
// Dont forget to add the original code to turn it off

///////////////////////////////////////////////////////

/** End of Declarations here **/

void aboutButton(HWND hwnd)
{
MessageBox(hwnd,about,"About",MB_ICONINFORMATION);
}


void Initialize(HWND hwnd,WPARAM wParam, LPARAM lParam) {
GetProcessList();
if(GameRunning==TRUE)
{
         GetWindowThreadProcessId(hwndWindow, &pid);
hand = OpenProcess(PROCESS_ALL_ACCESS,0,pid);
SetTimer(hwnd, 1, 200, NULL); //Timer speed is 200ms, you can change it here
}
else
{ //Error message for when game not found in process list
MessageBox(NULL, "Vietcong not detected. Please run the game before running the trainer", "Error", MB_OK + MB_ICONWARNING);
}




FirstTime1=TRUE; //This is the true / false flag for "is this the first time the trainers read the game code

IsHack1On=FALSE;
if(GameRunning==TRUE)
{
         GetWindowThreadProcessId(hwndWindow, &pid);
hand = OpenProcess(PROCESS_ALL_ACCESS,0,pid);
SetTimer(hwnd, 1, 200, NULL); //Timer speed is 200ms, you can change it here
}
else
{ //Error message for when game not found in process list
MessageBox(NULL, "Vietcong not detected, please run the game before running the trainer", "Error", MB_OK + MB_ICONWARNING);
}
}

void HookExe() //This function ensures we are attatched to the game at all times
{

CloseHandle(hand);
    GetProcessList( );
    GetWindowThreadProcessId(hwndWindow, &pid);
hand = OpenProcess(PROCESS_ALL_ACCESS,0,pid);

}

/*----- Here comes the good stuff -----*/


void timerCall() //functions in here run according to timer above
{
//char name = (); //this is our buffer to catch the current value
//int bytes = 0; //used temporarily for Read/WriteProcessMemory functions
//int prevAccessProtection = 0; //used temporarily for VirtualProtectEx function
HookExe(); //Call to function above (game always attatched)


/////////////////////////////////////////////////////////////////////////
/////ReadProcMem arrays are used to read and store original code so we
/////toggle the code on and off


if(FirstTime1==TRUE) //checks to see if this is the first time its run, if it is continue
{

ReadProcessMemory(hand, (void*) 0xEB0F44 , &original_code, 1, &bytes); // reads the bytes at address 0xEB0F44 and stores them
    FirstTime1=FALSE;
}
// What we are doing here is reading 3 bytes of the games code for VC Hud and storing them in a variable called "original_code"
// The number in sqaure brackets is the number of bytes, this has to match the number after our variable
// "original_code" in the ReadProcessMemory line.

// You can add more addresses in, just be sure to have unique varible names and specify the right number of bytes.


///////////////////////////////////////////////////////////////////////////
/////Start Hotkey Functions Below

/* --Vietcong HUD on/off Example Function-- --------------------------------------- */



if(GetAsyncKeyState(VK_NUMPAD1)) // User Pressed the NumPad1 to switch on HUD
{
   
if(IsHack1On==FALSE) //if this modapp is not on do this........

WriteProcessMemory(hand, (void*)0xEB0F44, &Hud,1, &bytes);  //Change the memory to activate the Modapp


IsHack1On=TRUE; //Sets our "Is On" flag to "on"
}
else // .... do this
{

WriteProcessMemory(hand, (void*)0xEB0F44, &original_code,1, &bytes); // Write the original code into memory

IsHack1On=FALSE; //Sets our "Is On" flag to "off"
}




/// Copy and paste the above function and change the variables to add another modapp


}




//The function above will toggle between hack on and hack off status. For a list of virtual keys please visit:
// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/WindowsUserInterface/UserInput/VirtualKeyCodes.asp
     
/* --Example Function --END------------------------------------ */



/** End **/
}

// YOU DONT NEED TO EDIT BELOW THIS LINE

BOOL GetProcessList( )
{
  HANDLE hProcessSnap;
  HANDLE hProcess;
  PROCESSENTRY32 pe32;
  DWORD dwPriorityClass;
  int PidTest;
  GameRunning=FALSE;
 
 
  // Take a snapshot of all processes in the system.
  hProcessSnap = CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, 0 );
  if( hProcessSnap == INVALID_HANDLE_VALUE ) return( FALSE );
 

  // Set the size of the structure before using it.
  pe32.dwSize = sizeof( PROCESSENTRY32 );

  // Retrieve information about the first process,
  // and exit if unsuccessful
  if( !Process32First( hProcessSnap, &pe32 ) )
  {
    CloseHandle( hProcessSnap );     // Must clean up the snapshot object!
    return( FALSE );
  }

  // Now walk the snapshot of processes, and
  // display information about each process in turn
 
  do
  {
    // Retrieve the priority class.
    dwPriorityClass = 0;
    hProcess = OpenProcess( PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID );
    if( hProcess != NULL )
    {
      dwPriorityClass = GetPriorityClass( hProcess );
      if( !dwPriorityClass )
       
      CloseHandle( hProcess );
    }

    PidTest=strcmp(gameWindow, pe32.szExeFile);
if(PidTest==0){ pid=pe32.th32ProcessID; GameRunning=TRUE;}

  } while( Process32Next( hProcessSnap, &pe32 ) );

  // Don't forget to clean up the snapshot object!
  CloseHandle( hProcessSnap );
  return( TRUE );
}

BOOL CALLBACK DialogProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{

    switch (message)
{
case WM_INITDIALOG:
Initialize(hwnd,wParam,lParam);
return TRUE;

case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDC_ABOUT:
aboutButton(hwnd);
return TRUE;

case IDC_EXIT:
EndDialog (hwnd, 0);
return TRUE;
}
return TRUE;

case WM_DESTROY:
CloseHandle(pFile);
PostQuitMessage(0);
return TRUE;

case WM_CLOSE:
PostQuitMessage(0);
return TRUE;
case WM_TIMER:
timerCall();
return TRUE;
    }
    return FALSE;
}


 
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{


DialogBox(hInstance,MAKEINTRESOURCE(IDD_MAINDLG), NULL,DialogProc);
return 0;
}


Enjoy  :icon_thumbsup

2
Random Insanity Board / MrMedics Land Rover
« on: October 15, 2009, 10:17:00 pm »
Ok, so im on my way home from work when suddenly this Land rover pulls out in front of me, i think ah fuck but then........

I see the number plate ....


(i know the pic is shit but you try and take a photo of a car doing 70+ with a 3megapixel camera phone while dodging headshots)


OMG its Medic!

I dropped back about 10 car lengths...

3
Random Insanity Board / FREE HACKS!!
« on: July 07, 2009, 01:57:05 am »
 :icon_magician






Yeah right, just want to see how many people actually click this.

4
Random Insanity Board / The Real Obama
« on: April 28, 2009, 10:55:04 pm »


Dark Secret....




5
General Modding & Programming / Other Games / GTA4 Single Player Hack
« on: December 31, 2008, 05:42:43 pm »
Ive been trying to hack GTA4 but it crashes in odd places.

I have however got the address for health and im sure someone here could make a nice trainer for it

If your interested PM me.

6
Vietcong 1 & 2 / Vietcong Multihack 1.6 (Simple)
« on: October 27, 2008, 03:07:20 am »
Vietcong Multihack 1.6 (Simple)



http://tkc-community.net/forum/index.php?action=downloads;sa=view;down=79

Features:

Hud On/Off
See through Walls
See through map
No Gun Lift
Enemy Weapons
No Fall Damage
Unlimited Jumping

All my own work.

7
Vietcong 1 & 2 / Vietcong 1.6 Multihack (simple) APPROVED AND UPLOADED
« on: October 18, 2008, 07:50:56 pm »
Found this while hunting through some drives .


Features:

Hud On/Off
See through Walls
See through map
No Gun Lift
Enemy Weapons
No Fall Damage
Unlimited Jumping

All my own work.
Removed some of the extra features for security purposes.

Download:
http://tkc-community.net/forum/index.php?action=downloads;sa=view;down=79

8
Vietcong 1 & 2 / Is this why Cpt.Hankey needs hacks?
« on: September 28, 2008, 01:12:47 pm »


LMFAO!

9
Off Topic / FFOW cracked servers?
« on: May 25, 2008, 11:05:13 pm »
Anyone know how to join a cracked server on Frontlines Fuel of War?

Thanks

10
General Modding & Programming / Other Games / C++ Trainer Template
« on: April 23, 2008, 01:04:12 am »
This Template is Easy to use, requires no brain power and makes nice trainers
It can be updated as you progress in C++

Courtesy of MPC

Open with VS2003 or Open and convert with newer Vs's

Any questions regarding the template and usage POST HERE

11
Vietcong 1 & 2 / [RELEASE]Vietcong 1.01 Hack Pack
« on: April 22, 2008, 10:08:02 pm »
Ive decided to release 3 Hacks

CTF ATG Weapon Trainer
Variable Superjump
No Fall Damage

See README for more details

Enjoy

12
Vietcong 1 & 2 / Vietcong 1.01
« on: April 21, 2008, 01:55:23 am »
If anyone wants to start making hacks i recommend  Vietcong 1.01

Its very easy to find address's/values

No Anti Cheat to worry about etc

A good start for any beginner in Game Hacking.....

13
Vietcong 1 & 2 / Ammo in 1.6 HRADBA server
« on: April 18, 2008, 02:28:41 am »
I found something in VC1.6 for ammo

instead of having 7 mags i had 126 bullets showing (total)

Im sure its possible to add ammo to your gun using this method(if its counting ammo)

The reload boxes in the server are a good place to start
Its one of those NOOBY searches lol

But there are some very interesting points in code to look at
I wont give examples right now ill see if you come up with anything

Trying to look at different angles on old hacks as my imagination isnt the greatest LMAO (Jack Daniels is my best mate)

Anyway VC is DEAD as far as i can see so anyone wanting to have a bit of fun check it out

14
Vietcong 1 & 2 / Name Changer
« on: April 18, 2008, 12:55:34 am »
I made a namechanger cos im lazy

Its not ingame its just so you dont have to out to the main menu

Nothing Special

thought id let you know LOL  :icon_teehee

15
Vietcong 1 & 2 / Something to work on
« on: April 14, 2008, 09:19:16 pm »
NO KICK..
I know a few people have been succesful in this and MRM has given me a few methods
I did have it working at one stage but i played with so many address's i cant remember it(plus the game ended up crashing)
I also managed to send my ID as 1 which means its definitely possible to change your ID

Those that know how to make invisible will have noticed that when this hack is applied before entering a server you get
"class limit reached" when trying to select a class.

Those who have looked deeper will also notice your ID is not sent to the server..

I have found the address that passes my ID to the server but when i try and change it i either crash the game or get stuck with class limit reached.

I have no idea how to FORCE a class and a long and extensive search for the class address turned out nothing.

If anyone thinks they can help with this PM me on the forum.

A method
Open 2 Vietcongs (click on the EXE twice really fast if you dont have the hacked version)
Attach Cheat engine or T search or whatever you use to one of the process's (this will be your client)
Create a server with your other VC process and then connect to it using your client.

get your ID number and do a straight 4 byte search for it
exit the server
rejoin
do a search for the new ID  value
you should now have it
find what access's that address
you will notice that the ID is passed to ECX and if you follow the code its passed there a bit further up
change the ECX to your new ID value in HEX
Example : mov [addresshere],00000107   <<   107 is hex for 263 (when you create a server you are issued an ID of 263 might be useful)

If you can then force a class after this you "should" enter the server but you'll probably be invisible.
But unkickable lol


Pages: [1] 2 3 4 5 6