From 3d412a4b30a9f7c7f51ea6562e694315948bd3da Mon Sep 17 00:00:00 2001 From: boris Date: Wed, 28 Nov 2018 16:00:02 +1300 Subject: cleaned up in short, the cheat and loader are now separate solutions. unused stuff was moved into the legacy solution in case anyone wants to compile it or whatever. i can change this back if you want to. also, i configured the loader to compile in x64, and have separate build types for linux and win64 --- gmod/mem.hpp | 66 ------------------------------------------------------------ 1 file changed, 66 deletions(-) delete mode 100644 gmod/mem.hpp (limited to 'gmod/mem.hpp') diff --git a/gmod/mem.hpp b/gmod/mem.hpp deleted file mode 100644 index f5c8ec4..0000000 --- a/gmod/mem.hpp +++ /dev/null @@ -1,66 +0,0 @@ -#pragma once -#include -#include "util.hpp" - -#define get_baseptr( ) ( ( uintptr_t )( _AddressOfReturnAddress( ) ) - sizeof( uintptr_t ) ) - -class stack_t { - uintptr_t m_ptr; - -public: - __forceinline stack_t( ) : m_ptr( get_baseptr( ) ) { } - - __forceinline stack_t( uintptr_t ptr ) : m_ptr( ptr ) { } - - template < typename t = uintptr_t > - __forceinline t get( ) { - return ( t )m_ptr; - } - - template < typename t = uintptr_t > - __forceinline t return_address( ) { - return *( t* )( m_ptr + sizeof( void* ) ); - } - - template < typename t = uintptr_t > - __forceinline t address_of_return_address( ) { - return ( t )( m_ptr + sizeof( uintptr_t ) ); - } - - __forceinline stack_t& next( ) { - return *( stack_t* )( m_ptr ); - } - - template < typename t = uintptr_t > - __forceinline t local( size_t at ) { - return ( t )( m_ptr - at ); - } - - template < typename t = uintptr_t > - __forceinline t arg( size_t at ) { - return ( t )( m_ptr + at ); - } -}; - -namespace util { - template < typename t = uint8_t > - __forceinline t* memcpy( t* dst, t* src, size_t size = sizeof( t ) ) { - __movsb( - ( uint8_t* )dst, - ( uint8_t* )src, - size - ); - - return dst; - } - - __forceinline void* memset( uint8_t* dst, uint8_t val, size_t size ) { - __stosb( - dst, - val, - size - ); - - return dst; - } -} \ No newline at end of file -- cgit v1.2.3