Jump to content
Welcome, Guest
Existing user? Sign In

Sign In



Sign Up
The MatriX
  • Welcome To Ghbsys
  • CS GO Streaming Version is released. Have fun streaming while cheating!
  • Have a Payment Issue? Send us a Support ticket.
  • Make a thread if you need support or join our discord for live support.
  • Have Suggestions? Make a thread and you'll earn Ghbsys Points for implemented suggestions.
  • Join our discord to stay well connected! Don't forget to integrate your discord to the site
  • Welcome to [GHB] - GAmEhAcKbAsTaRdS Forum

    Welcome to [GHB] - GAmEhAcKbAsTaRdS Forum, like most online communities you must register to view or post in our community, but don't worry this is a simple free process that requires minimal information for you to signup. Be apart of [GHB] - GAmEhAcKbAsTaRdS Forum by signing in or creating an account.
    • Start new topics and reply to others
    • Subscribe to topics and forums to get email updates
    • Get your own profile page and make new friends
    • Send personal messages to other members.

    Writeprocessmemory alternativeFunction For D3d Hook's


    NeoIII
     Share

    Recommended Posts

    void Write_D3Dmem( void* pxAddress, void* pxBuffer )
    {				   
    unsigned long Protection;		 
    VirtualProtect((void*)pxAddress, sizeof( pxBuffer ), PAGE_READWRITE, &Protection);
    memcpy((void*)pxAddress, (const void*)pxBuffer, sizeof( pxBuffer ));
    VirtualProtect((void*)pxAddress, sizeof( pxBuffer ), Protection, 0);
    }

     

    this is very usefull because you can write memory much faster then with writeprocessmemory....

    Link to comment
    Share on other sites

    • 1 month later...

    What about pointers? ASM?

    Link to comment
    Share on other sites

    • 1 month later...
    What about pointers? ASM?

    its the same.

     

    you can use it as (slightly modified) :

     

    void Write_D3Dmem( void* pxAddress, void* pxBuffer, int size )
    {				  
    unsigned long Protection;		
    VirtualProtect((void*)pxAddress, size, PAGE_READWRITE, &Protection);
    memcpy((void*)pxAddress, (const void*)pxBuffer, size);
    VirtualProtect((void*)pxAddress, size, Protection, 0);
    }
    
    unsigned long  adr=0x222222;
    float		  fval = 1.0;
    int			ival = 1;
    short		  sval = 1;
    BYTE		   bval = 1;
    BYTE		   snokick[] = { 0x90, 0x90, 0x90, 0x90, 0x90, 0x90 };
    
    Write_D3Dmem((void *)adr, (void *)&fval, 4);		 // float is 4 bytes
    Write_D3Dmem((void *)adr, (void *)&ival, 4);		 // integer is 4 bytes
    Write_D3Dmem((void *)adr, (void *)&sval, 2);		 // short is 2 bytes
    Write_D3Dmem((void *)adr, (void *)&bval, 1);		 // byte is a byte :)
    
    Write_D3Dmem((void *)adr, (void *)snokick, 6);	   // 6 bytes with asm code
    or 
    Write_D3Dmem((void *)adr, (void *)&snokick[0], 6);

     

    Hope this helps

    Link to comment
    Share on other sites

    • 2 months later...

    he means pointers like stamina hack ( warrock ) there is another way but i am not gonna give this public @ this time!

    Link to comment
    Share on other sites

    • 5 months later...

    ok i got this to work, esp an all works but bans by HS i dont care atm on that, how do i add simple hacks like no spread. recoil stamina an NFD the easy stuff

    Link to comment
    Share on other sites

    Its not a fully Source...

     

    Do something like this:

     

    void blub()

    {

    DWORD Player = *(DWORD*)/*Your PlayerPointer*/;

    if (Player !=0)

    {

    *(float*)(/*Your Addy + offset*/) = /*Your Value*/;

    }

    }

    Edited by afahrrad
    Link to comment
    Share on other sites

    • 1 month later...
    • 6 months later...

    VirtualProtect is a bit over kill for a 4 byte value isn't it?

    I would only use this if I was patching a string or maybe some asm for a detour.

    Link to comment
    Share on other sites

    • 1 month later...
    • 2 months later...
    • 2 months later...
    • 9 months later...
    • 1 year later...

    I aM using it like this

     

    void Write_D3Dmem( void* pxAddress, void* pxBuffer, int size )
    {                                 
           unsigned long Protection;               
           VirtualProtect((void*)pxAddress, size, PAGE_READWRITE, &Protection);
           memcpy((void*)pxAddress, (const void*)pxBuffer, size);
           VirtualProtect((void*)pxAddress, size, Protection, 0);
    }

     

    while (1) {
    
    	    if(CH_circle==1)
       {
    
           Write_D3Dmem((void *)ADR_CIRCLE,(void*)(PBYTE)"\x75\x55",2);
       }
       if(CH_circle==0)
       {
    
           Write_D3Dmem((void *)ADR_CIRCLE,(void*)(PBYTE)"\x74\x55",2);
       }
    
    	Sleep(50);
    	    }

     

    nothing happens doesnt write to ADR_CIRCLE ??

     

     

    EDIT : I have just see that when a cheat is active in default set to 1 , then this cheat works but the others with set on default to 0 they dont ??

     

    Have managed to work the menu now :) the last thing is what I chouldnt write is the pointers for example a pointer with 4 offsets or 1 .

     

    Like I have this is CE Pointer

     

    "Cryslg.exe"+001E3628 + Offset Hex 70 + Offset Hex 45

     

    its the same.

     

    you can use it as (slightly modified) :

     

    void Write_D3Dmem( void* pxAddress, void* pxBuffer, int size )
    {				  
    unsigned long Protection;		
    VirtualProtect((void*)pxAddress, size, PAGE_READWRITE, &Protection);
    memcpy((void*)pxAddress, (const void*)pxBuffer, size);
    VirtualProtect((void*)pxAddress, size, Protection, 0);
    }
    
    unsigned long  adr=0x222222;
    float		  fval = 1.0;
    int			ival = 1;
    short		  sval = 1;
    BYTE		   bval = 1;
    BYTE		   snokick[] = { 0x90, 0x90, 0x90, 0x90, 0x90, 0x90 };
    
    Write_D3Dmem((void *)adr, (void *)&fval, 4);		 // float is 4 bytes
    Write_D3Dmem((void *)adr, (void *)&ival, 4);		 // integer is 4 bytes
    Write_D3Dmem((void *)adr, (void *)&sval, 2);		 // short is 2 bytes
    Write_D3Dmem((void *)adr, (void *)&bval, 1);		 // byte is a byte 
    
    Write_D3Dmem((void *)adr, (void *)snokick, 6);	   // 6 bytes with asm code
    or 
    Write_D3Dmem((void *)adr, (void *)&snokick[0], 6);

     

    Hope this helps

     

     

    I dont get this all . I use like that :

    adrflash and ofsflash is defined.

     

    if(CH_flash==1)
       {
    
          Write_D3Dmem((void *)ADR_FLASH+OFS_FLASH,(void*)(PBYTE)"\x01\x00",2);
       }

     

    get this error

    error C2036: 'void *' : unknown size

    Edited by Devrim48
    Link to comment
    Share on other sites

    • 3 months later...

    Nice You Code

    Becouse I uSe For My Dll

     

    Fake Code

     

    void Write_D3Dmem( void* pxAddress, void* pxBuffer )
    {                                  
           ULONG d,ds;                
           VirtualProtect((void*)pxAddress, sizeof( pxBuffer ), PAGE_READWRITE, &d);
           memcpy((void*)pxAddress, (const void*)pxBuffer, sizeof( pxBuffer ));
           VirtualProtect((void*)pxAddress, sizeof( pxBuffer ), ds, 0);
    }

    Edited by GameAnonymuse
    Link to comment
    Share on other sites

    Guest
    This topic is now closed to further replies.
     Share

    • Recently Browsing   0 members

      • No registered users viewing this page.
    ×
    ×
    • Create New...