From 7c9fb6114c0ef713775e646398b7c60d5f8e4e37 Mon Sep 17 00:00:00 2001 From: Stelio Kontos <37424493+StelioKontosXBL@users.noreply.github.com> Date: Wed, 21 Apr 2021 00:45:13 -0500 Subject: [PATCH] Add check to disable patching if Aurora/FSD update is detected --- AuroraCrashPatcher/Common.cpp | 2 +- AuroraCrashPatcher/Common.h | 7 +++++++ AuroraCrashPatcher/DllMain.cpp | 11 ++++++++--- Dist/AuroraCrashPatcher.xex | Bin 28672 -> 28672 bytes README.md | 4 ++-- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/AuroraCrashPatcher/Common.cpp b/AuroraCrashPatcher/Common.cpp index de40a30..9752786 100644 --- a/AuroraCrashPatcher/Common.cpp +++ b/AuroraCrashPatcher/Common.cpp @@ -62,4 +62,4 @@ void SelfDestruct(HANDLE hModule) { } } } -} \ No newline at end of file +} diff --git a/AuroraCrashPatcher/Common.h b/AuroraCrashPatcher/Common.h index 847255d..39dbd06 100644 --- a/AuroraCrashPatcher/Common.h +++ b/AuroraCrashPatcher/Common.h @@ -141,6 +141,13 @@ SK_INLINE DWORD ResolveFunction(PCHAR moduleName, DWORD ordinal) { return addr; } +SK_INLINE uint32_t ByteSwap(uint32_t value) { + return (value & 0x000000FF) << 0x18 + | (value & 0x0000FF00) << 0x08 + | (value & 0x00FF0000) >> 0x08 + | (value & 0xFF000000) >> 0x18; +} + BOOL MountSysDrives(); bool FileExists(LPCSTR lpFileName); void SelfDestruct(HANDLE hModule); diff --git a/AuroraCrashPatcher/DllMain.cpp b/AuroraCrashPatcher/DllMain.cpp index d0c4295..fdece33 100644 --- a/AuroraCrashPatcher/DllMain.cpp +++ b/AuroraCrashPatcher/DllMain.cpp @@ -11,6 +11,8 @@ * - Changed base address to avoid conflict with nomni. * - Replaced hook method to more accurately identify and intercept the * api calls causing the crash for everyone regardless of geographic locale. + * v0.3-beta: 04/21/2021 + * - Added check to disable patching if Aurora/FSD update is detected. */ #include "stdafx.h" @@ -32,14 +34,17 @@ DWORD WINAPI MainThread(LPVOID lpParameter) { auto Run = [] (uint32_t title) -> bool { static uint32_t last = 0; - if (!g_flag) { + if (g_flag < 2) { if (title != last) { if (title == 0xFFFE07D1 && ((uint32_t(*)(PVOID))0x800819D0)((PVOID)0x82000000)) { + g_flag = ByteSwap(*(uint32_t*)(0x82000008 + ByteSwap(*(uint32_t*)0x8200003C))) > 0x607F951E; DbgPrint("[sk] AuroraCrashPatcher by Stelio Kontos: %s. Control flag @ 0x%X" skNewLn, !g_flag ? "ENABLED" : "DISABLED", &g_flag); - DbgPrint("[sk] Flag options: default=0x0, unload=0x1, destroy=0xDEADC0DE" skNewLn); - origHook.SetupDetour(0x81741150, HookProc); + DbgPrint("[sk] Flag options: enable=0x0, disable=0x1, unload=0x2, destroy=0xDEADC0DE" skNewLn); + if (!g_flag) + origHook.SetupDetour(0x81741150, HookProc); } else if (last == 0xFFFE07D1) { origHook.TakeDownDetour(); + g_flag = 0; } last = title; } diff --git a/Dist/AuroraCrashPatcher.xex b/Dist/AuroraCrashPatcher.xex index 5ff3118471f5d956645bff4601443b887b2d777a..a8cb8c839647acb35e92e97651813dc66e29dd5d 100644 GIT binary patch literal 28672 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 diff --git a/README.md b/README.md index 71aba82..dc47654 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Quick and dirty patch to prevent fatal crashing when downloading title assets (boxart, etc) through FSD or Aurora. As of v0.2-beta, this patch should work for everyone, regardless of geographic location (both in and outside of the US). ## Install/Usage -- Download the latest compiled xex from the `Releases` page (direct download: https://github.com/StelioKontosXBL/AuroraCrashPatcher/releases/download/v0.2-beta/AuroraCrashPatcher.xex) +- Download the latest compiled xex from the `Releases` page (direct download: https://github.com/StelioKontosXBL/AuroraCrashPatcher/releases/download/v0.3-beta/AuroraCrashPatcher.xex) - Copy the xex to your RGH's Hdd, as you would any menu or plugin xex - Set as a plugin (either in your launch.ini, or in JRPC.ini if you use XDRPC) - Reboot, and you're done @@ -16,7 +16,7 @@ If you don't use Aurora/FSD, don't bother. If you do, download the compiled xex Ye, I know. Hacky af, but it works. It's a quick fix, nothing more, nothing less. Not to be used as a guide to best coding standards; threw it together in a couple hours, and hopefully the Aurora/FSD devs will be able to release an official patch soon, deprecating this. Use at your own risk. ## Note to Aurora/FSD devs -When an official patch is released, launch Aurora with this module loaded, and check DbgOut for the killswitch address in mem. Writing the value `0xDEADC0DE` at this address will unload and wipe this patch from the user's console. +When an official patch is released, launch Aurora with this module loaded, and check DbgOut for the killswitch address in mem. Writing the value `0xDEADC0DE` at this address will unload and wipe this patch from the user's console. As of v0.3-beta, AuroraCrashPatcher will automatically disable itself if an updated version of Aurora or FSD is detected, but removal of the plugin from the system requires the flag being set. ## Disclaimer Neither this repo, nor myself, are directly affiliated with Aurora or FSD, or their development teams.