Simple Hotkeys

Posts 1–3 of 3 · Page 1 of 1
Simple Hotkeys
Copy and paste, and run Ctrl + f7 hehehe Adrress Updated

Code:
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <stdio.h>
#include <d3d9.h>
#include <d3dx9.h>

#pragma comment(lib, "d3d9.lib")
#pragma comment(lib, "d3dx9.lib")


#define ADR_engine 0x485F90
#define InGame 0x377C8474 
#define NoRecoil 0x37397BBC 
#define name1 0x372ED5ED 
#define name2 0x372ED56A

INT visual, recoil;
INT visualx;

typedef HRESULT ( WINAPI* oPresent ) ( LPDIRECT3DDEVICE9 pDevice, CONST RECT *pSourceRect, CONST RECT *pDestRect, HWND hDestWindowOverride, CONST RGNDATA *pDirtyRegion);
oPresent pPresent;

void Memoria( void* pvAddress, void* pvBuffer, size_t len )
{
    if( *(BYTE*)pvAddress == *(BYTE*)pvBuffer )
        return;

    memcpy( ( void* )pvAddress, ( void* )pvBuffer, len );
}

void CreateDev(DWORD * dwVTable){
LPDIRECT3D9 pD3d9 = NULL;
LPDIRECT3DDEVICE9 pD3DDevice = NULL;
pD3d9 = Direct3DCreate9(D3D_SDK_VERSION);
if(pD3d9 == NULL){
return;
}
D3DPRESENT_PARAMETERS pPresentParms;
ZeroMemory(&pPresentParms,sizeof(pPresentParms));
pPresentParms.Windowed = TRUE;
pPresentParms.BackBufferFormat = D3DFMT_UNKNOWN;
pPresentParms.SwapEffect = D3DSWAPEFFECT_DISCARD;
if(FAILED(pD3d9->CreateDevice(D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL,GetDesktopWindow(),D3DCREATE_SOFTWARE_VERTEXPROCESSING,&pPresentParms,&pD3DDevice))){
return;
}
DWORD * dwTable = ( DWORD* )pD3DDevice;
dwTable = ( DWORD* ) dwTable[0];
dwVTable[0] = dwTable[16];
dwVTable[1] = dwTable[17];
dwVTable[2] = dwTable[82];
}

void CPush(const char* cmd)
{
    _asm
    {
        PUSH cmd
        MOV EAX, ADR_engine
        CALL EAX
        ADD ESP, 0x4
    }
}
void main() 
{
    if(GetAsyncKeyState(VK_NUMPAD1)&1) visual = !visual;
    
    if(visual && !visualx){
    CPush("ShowFps 1");
    CPush("SkelModelStencil 1");
    CPush("FogEnable 0");
    visualx = 1;
    } else if(!visual && visualx){
    CPush("ShowFps 0");
    CPush("SkelModelStencil 0");
    CPush("FogEnable 1");
    visualx = 0;
    }

    if(GetAsyncKeyState(VK_NUMPAD2)&1) recoil= !recoil;

    if((*(BYTE *)InGame== 1) && recoil){
        memcpy((VOID *)NoRecoil, (VOID *)(PBYTE)"\x90\x90\x90\x90", 4);
        memcpy((VOID *)name1, (VOID *)(PBYTE)"\x90\x90", 2);
        memcpy((VOID *)name2, (VOID *)(PBYTE)"\x90\x90", 2);
    } else {
        memcpy((VOID *)NoRecoil, (VOID *)(PBYTE)"\xD9\x44\x24\x14", 4);
        memcpy((VOID *)name1, (VOID *)(PBYTE)"\x75\x05", 2);
        memcpy((VOID *)name2, (VOID *)(PBYTE)"\x75\x05", 2);
    }
}

HRESULT WINAPI Present(LPDIRECT3DDEVICE9 pDevice, CONST RECT *pSourceRect, 
                           CONST RECT *pDestRect, HWND hDestWindowOverride, CONST RGNDATA *pDirtyRegion)
{
    _asm pushad;
    main();
    _asm popad;
    return pPresent(pDevice, pSourceRect, pDestRect, hDestWindowOverride, pDirtyRegion);
}

void *DetourCreate( BYTE *src, const BYTE *dst )
{
    int len = 5;

    BYTE *jmp = (BYTE*)malloc( len+5 );
    DWORD dwBack;
    VirtualProtect( src, len, PAGE_EXECUTE_READWRITE, &dwBack );
    memcpy( jmp, src, len );    
    jmp += len;
    jmp[0] = 0xE9;
    *(DWORD*)( jmp+1 ) = (DWORD)( src+len - jmp ) - 5;
    src[0] = 0xE9;
    *(DWORD*)( src+1 ) = (DWORD)( dst - src ) - 5;
    VirtualProtect( src, len, dwBack, &dwBack );

    return( jmp-len );
}

DWORD WINAPI Aguardar(LPVOID lpArgs){
DWORD dwD3D9 = NULL;
while(!dwD3D9){
Sleep(20);
dwD3D9 = (DWORD)GetModuleHandleA("d3d9.dll");
}
DWORD dwVTable[3] = {0};
CreateDev( dwVTable );
pPresent = ( oPresent )DetourCreate(( PBYTE ) dwVTable[1], ( PBYTE ) &Present);
return FALSE;
}

BOOL APIENTRY DllMain( HMODULE hModule, DWORD dwReason, LPVOID lpReserved ){
if ( dwReason == DLL_PROCESS_ATTACH ){
        MessageBox(0, "c0dpeHotkeys", "CAEU HotKeys !", MB_OK);
CreateThread( NULL, NULL, &Aguardar, NULL, NULL, NULL );
}
return TRUE;
}
Works for me
it sed that a file missing (d3dx9.h)
and im new in this
where do i paste it ????
Posts 1–3 of 3 · Page 1 of 1
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Need help?