aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDedicatedTest/dedicatedmaterialsystem.cpp
diff options
context:
space:
mode:
authorKittenPopo <Pokeberry123@gmail.com>2022-03-23 13:03:56 -0700
committerGitHub <noreply@github.com>2022-03-23 20:03:56 +0000
commitde7deafc7e6ba53deec8dd3c05d2ea5e7cf42264 (patch)
tree5bc5c82c9b720adbf02cdaeb505f46b48a02178f /NorthstarDedicatedTest/dedicatedmaterialsystem.cpp
parent5893c7700653e5f3d51c4f7eba7f6f25a2fe5be7 (diff)
downloadNorthstarLauncher-de7deafc7e6ba53deec8dd3c05d2ea5e7cf42264.tar.gz
NorthstarLauncher-de7deafc7e6ba53deec8dd3c05d2ea5e7cf42264.zip
Implement KittenPopo exploit fixes (and sanity changes) (#112)
* Added main exploit fixes * Fixed typo in sigscanning.cpp * Fully implemented * Added proper includes for new files * Update README.md * typo * spare me my sanity (fixed ridiculous code) * Added rest of KittenMemUtils * Rename KittenMemUtils * Removed all messy memory edits, implemented NSMem instead * Update NorthstarDedicatedTest.vcxproj * [1] Move everything from securitypatches to ExploitFixes * [2] Move everything from securitypatches to ExploitFixes * Fixed module offsets in stack trace * Fixed UTF8 Parsing (Multiplayer Crash) * Implemented UT8 fix * Update NorthstarDedicatedTest.vcxproj * Update hookutils.cpp * Small fixes * all my homies hate clang-format * Temporarily restore README.md
Diffstat (limited to 'NorthstarDedicatedTest/dedicatedmaterialsystem.cpp')
-rw-r--r--NorthstarDedicatedTest/dedicatedmaterialsystem.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/NorthstarDedicatedTest/dedicatedmaterialsystem.cpp b/NorthstarDedicatedTest/dedicatedmaterialsystem.cpp
index 00652698..8fa2b58d 100644
--- a/NorthstarDedicatedTest/dedicatedmaterialsystem.cpp
+++ b/NorthstarDedicatedTest/dedicatedmaterialsystem.cpp
@@ -4,6 +4,7 @@
#include "dedicatedmaterialsystem.h"
#include "hookutils.h"
#include "gameutils.h"
+#include "NSMem.h"
typedef HRESULT (*__stdcall D3D11CreateDeviceType)(
void* pAdapter, int DriverType, HMODULE Software, UINT Flags, int* pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, void** ppDevice,
@@ -59,14 +60,10 @@ void InitialiseDedicatedMaterialSystem(HMODULE baseAddress)
{
// CMaterialSystem::FindMaterial
- char* ptr = (char*)baseAddress + 0x5F0F1;
- TempReadWrite rw(ptr);
-
// make the game always use the error material
- *ptr = (char)0xE9;
- *(ptr + 1) = (char)0x34;
- *(ptr + 2) = (char)0x03;
- *(ptr + 3) = (char)0x00;
+ NSMem::BytePatch((uintptr_t)baseAddress + 0x5F0F1, {
+ 0xE9, 0x34, 0x03, 0x00
+ });
}
// previously had DisableDedicatedWindowCreation stuff here, removing for now since shit and unstable