Thread: Base correct?

Results 1 to 5 of 5
  1. #1
    Majalski's Avatar
    Join Date
    Feb 2010
    Gender
    male
    Posts
    3
    Reputation
    10
    Thanks
    0

    Base correct?

    Hi

    can anyone tell me if this base is correct

    Code:
    #include "stdafx.h"
    #include <windows.h>
    
    #include <d3d8.h>
    #pragma comment(lib, "d3d8.lib")
    
    typedef HRESULT (WINAPI* CreateDevice_Prototype)        (LPDIRECT3D8, UINT, D3DDEVTYPE, HWND, DWORD, D3DPRESENT_PARAMETERS*, LPDIRECT3DDEVICE8*);
    typedef HRESULT (WINAPI* Reset_Prototype)               (LPDIRECT3DDEVICE8, D3DPRESENT_PARAMETERS*);
    typedef HRESULT (WINAPI* EndScene_Prototype)            (LPDIRECT3DDEVICE8);
    typedef HRESULT (WINAPI* DrawIndexedPrimitive_Prototype)(LPDIRECT3DDEVICE8, D3DPRIMITIVETYPE, UINT, UINT, UINT, UINT);
    
    CreateDevice_Prototype         CreateDevice_Pointer         = NULL;
    Reset_Prototype                Reset_Pointer                = NULL;
    EndScene_Prototype             EndScene_Pointer             = NULL;
    DrawIndexedPrimitive_Prototype DrawIndexedPrimitive_Pointer = NULL;
    
    HRESULT WINAPI Direct3DCreate8_VMTable    (VOID);
    HRESULT WINAPI CreateDevice_Detour        (LPDIRECT3D8, UINT, D3DDEVTYPE, HWND, DWORD, D3DPRESENT_PARAMETERS*, LPDIRECT3DDEVICE8*);
    HRESULT WINAPI Reset_Detour               (LPDIRECT3DDEVICE8, D3DPRESENT_PARAMETERS*);
    HRESULT WINAPI EndScene_Detour            (LPDIRECT3DDEVICE8);
    HRESULT WINAPI DrawIndexedPrimitive_Detour(LPDIRECT3DDEVICE8, D3DPRIMITIVETYPE, UINT, UINT, UINT, UINT);
    
    PDWORD Direct3D_VMTable = NULL; 
    bool wallhack;
    void CheckHotkey();
    
    BOOL WINAPI DllMain(HINSTANCE hinstModule, DWORD dwReason, LPVOID lpvReserved)
    {
      if(dwReason == DLL_PROCESS_ATTACH)
      {
        DisableThreadLibraryCalls(hinstModule);
    	CreateThread(0,0, (LPTHREAD_START_ROUTINE)CheckHotkey, NULL, NULL, NULL); 
    
        if(Direct3DCreate8_VMTable() == D3D_OK)
        return TRUE;
      }
    
      return FALSE;
    }
    
    HRESULT WINAPI Direct3DCreate8_VMTable(VOID)
    {
      LPDIRECT3D8 Direct3D_Object = Direct3DCreate8(D3D_SDK_VERSION);
    
      if(Direct3D_Object == NULL)
      return D3DERR_INVALIDCALL;
      
      Direct3D_VMTable = (PDWORD)*(PDWORD)Direct3D_Object;
      Direct3D_Object->Release();
    
      DWORD dwProtect;
    
      if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), PAGE_READWRITE, &dwProtect) != 0)
      {
        *(PDWORD)&CreateDevice_Pointer = Direct3D_VMTable[15];
        *(PDWORD)&Direct3D_VMTable[15] = (DWORD)CreateDevice_Detour;
    
        if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), dwProtect, &dwProtect) == 0)
        return D3DERR_INVALIDCALL;
      }
      else
      return D3DERR_INVALIDCALL;
    
      return D3D_OK;
    }
    
    HRESULT WINAPI CreateDevice_Detour(LPDIRECT3D8 Direct3D_Object, UINT Adapter, D3DDEVTYPE DeviceType, HWND FocusWindow, 
    					DWORD BehaviorFlags, D3DPRESENT_PARAMETERS* PresentationParameters, 
    					LPDIRECT3DDEVICE8* Returned_Device_Interface)
    {
      HRESULT Returned_Result = CreateDevice_Pointer(Direct3D_Object, Adapter, DeviceType, FocusWindow, BehaviorFlags, 
    	                                          PresentationParameters, Returned_Device_Interface);
    
      DWORD dwProtect;
    
      if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), PAGE_READWRITE, &dwProtect) != 0)
      {
        *(PDWORD)&Direct3D_VMTable[15] = *(PDWORD)&CreateDevice_Pointer;
        CreateDevice_Pointer           = NULL;
    
        if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), dwProtect, &dwProtect) == 0)
        return D3DERR_INVALIDCALL;
      }
      else
      return D3DERR_INVALIDCALL;
    
      if(Returned_Result == D3D_OK)
      {
        Direct3D_VMTable = (PDWORD)*(PDWORD)*Returned_Device_Interface;
    
        *(PDWORD)&Reset_Pointer                = (DWORD)Direct3D_VMTable[14];
        *(PDWORD)&EndScene_Pointer             = (DWORD)Direct3D_VMTable[35];
        *(PDWORD)&DrawIndexedPrimitive_Pointer = (DWORD)Direct3D_VMTable[71];
    
        *(PDWORD)&Direct3D_VMTable[14] = (DWORD)Reset_Detour;
        *(PDWORD)&Direct3D_VMTable[35] = (DWORD)EndScene_Detour;
        *(PDWORD)&Direct3D_VMTable[71] = (DWORD)DrawIndexedPrimitive_Detour;
      }
        
      return Returned_Result;
    }
    
    HRESULT WINAPI Reset_Detour(LPDIRECT3DDEVICE8 Device_Interface, D3DPRESENT_PARAMETERS* PresentationParameters)
    {
      return Reset_Pointer(Device_Interface, PresentationParameters);
    }
    
    HRESULT WINAPI EndScene_Detour(LPDIRECT3DDEVICE8 Device_Interface)
    {
      return EndScene_Pointer(Device_Interface);
    }
    
    HRESULT WINAPI DrawIndexedPrimitive_Detour(LPDIRECT3DDEVICE8 Device_Interface, D3DPRIMITIVETYPE Type, 
                                               UINT MinIndex, UINT NumVertices, UINT StartIndex, UINT PrimitiveCount)
    {
      LPDIRECT3DVERTEXBUFFER8 Stream_Data;
      UINT Stride = 0;
    
      if(Device_Interface->GetStreamSource(0, &Stream_Data, &Stride) == D3D_OK)
      Stream_Data->Release();

  2. #2
    /b/oss's Avatar
    Join Date
    Feb 2010
    Gender
    male
    Posts
    13,652
    Reputation
    795
    Thanks
    3,543

  3. #3
    CAFlames's Avatar
    Join Date
    Jan 2010
    Gender
    male
    Location
    Where ever my imagination takes me
    Posts
    3,014
    Reputation
    202
    Thanks
    2,934
    My Mood
    Twisted
    Way to post word for word same file as like 15 threads down...
    this is soooo detected

    Current Works:
    ---Horror Game






    Special thanks to drgnforce9 for my sig picture

    Quote Originally Posted by m_t_h View Post

    CAflames is one epic coder.

    Rep and thanks him.. or you're perma banned.

  4. #4
    /b/oss's Avatar
    Join Date
    Feb 2010
    Gender
    male
    Posts
    13,652
    Reputation
    795
    Thanks
    3,543
    btw how u doing with stuff, @CAFlames

  5. #5
    CAFlames's Avatar
    Join Date
    Jan 2010
    Gender
    male
    Location
    Where ever my imagination takes me
    Posts
    3,014
    Reputation
    202
    Thanks
    2,934
    My Mood
    Twisted
    Quote Originally Posted by m_t_h View Post
    btw how u doing with stuff, @CAFlames
    Right now im about to release awesome combat arms hacks.

    I thought of ways to detour and I may try over the weekend

    Current Works:
    ---Horror Game






    Special thanks to drgnforce9 for my sig picture

    Quote Originally Posted by m_t_h View Post

    CAflames is one epic coder.

    Rep and thanks him.. or you're perma banned.