From 0ce2cbfbc0459435d3dfbee03c158708d976aa71 Mon Sep 17 00:00:00 2001 From: zeffy Date: Tue, 6 Jun 2017 15:21:10 -0700 Subject: [PATCH] 0.6.0.2 --- README.md | 18 ++--- install/install_wufuc.bat | 5 +- install/uninstall_wufuc.bat | 6 +- install/utility scripts/disable_wufuc.bat | 70 ++++++++++++++++++ install/utility scripts/enable_wufuc.bat | 51 +++++++++++++ .../repair_wuaueng.dll.bat | 3 +- install/wufuc64.dll | Bin 0 -> 149504 bytes wufuc/util.c | 24 +++--- wufuc/util.h | 12 +-- wufuc/version.rc | Bin 1832 -> 1832 bytes 10 files changed, 155 insertions(+), 34 deletions(-) create mode 100644 install/utility scripts/disable_wufuc.bat create mode 100644 install/utility scripts/enable_wufuc.bat rename install/{ => utility scripts}/repair_wuaueng.dll.bat (95%) create mode 100644 install/wufuc64.dll diff --git a/README.md b/README.md index 67e48e0..560e719 100644 --- a/README.md +++ b/README.md @@ -34,19 +34,17 @@ My patch takes advantage of this result caching behavior by setting the "hasn't - **No system files are modified!** - Heuristic-based patching, which means it will usually keep working even after updates. - C is best language. -- No external dependencies except for Microsoft Visual C++ 2017 Redistributable. +- No external dependencies. ### How to install/uninstall? Just download the [latest release](../../releases/latest), and extract the `wufuc` folder to a permanent location (like `C:\Program Files\wufuc`) and then run `install_wufuc.bat` as administrator. -To uninstall run `uninstall_wufuc.bat` as administrator. - -To temporarily disable the patch, just go to the Task Scheduler and disable the `wufuc.{72EEE38B-9997-42BD-85D3-2DD96DA17307}` task, then restart your computer. +To uninstall run `uninstall_wufuc.bat` as administrator. ### How do I remove your old patch and use this instead? -I've included a utility script called `repair_wuaueng.dll.bat` that will initiate an sfc scan and revert any changes made to `wuaueng.dll`. +I've included a utility script called `repair_wuaueng.dll.bat`. When you run it, it will initiate an `sfc` scan and revert any changes made to `wuaueng.dll`. ### How to see wufuc's debugging message output? @@ -54,9 +52,7 @@ You will need to download [DebugView](https://technet.microsoft.com/en-us/sysint The best way to get a log of the entire life-cycle of wufuc is to do the following: -1. Disable wufuc in Task Scheduler. -2. Restart your computer. -3. Start `Dbgview.exe` as administrator and check `Capture -> Capture Global Win32`. -4. Enable wufuc in Task Scheduler. -5. Run wufuc in Task Scheduler. -6. Output will be shown in DebugView. +1. Disable wufuc by running `disable_wufuc.bat` as administrator. +2. Start `Dbgview.exe` as administrator and check `Capture -> Capture Global Win32`. +3. Enable wufuc by running `enable_wufuc.bat` as administrator. +4. Output will be shown in DebugView. diff --git a/install/install_wufuc.bat b/install/install_wufuc.bat index f58dc4f..010a54e 100644 --- a/install/install_wufuc.bat +++ b/install/install_wufuc.bat @@ -1,5 +1,5 @@ @echo off -title wufuc installer - v0.6.0.1 +title wufuc installer :: Copyright (C) 2017 zeffy :: This program is free software: you can redistribute it and/or modify @@ -47,6 +47,9 @@ goto :unsupported_os set "WINDOWS_ARCHITECTURE=x64" set "wufuc_dll=%~dp0wufuc64.dll" +for /f "tokens=*" %%i in ('wmic /output:stdout datafile where "name='%wufuc_dll:\=\\%'" get Version /value ^| find "="') do set "%%i" +title wufuc installer - v%Version% + :check_ver wmic /output:stdout os get version | findstr "^6\.1\." >nul && ( set "WINDOWS_VER=6.1" diff --git a/install/uninstall_wufuc.bat b/install/uninstall_wufuc.bat index 119fd04..ca92e0c 100644 --- a/install/uninstall_wufuc.bat +++ b/install/uninstall_wufuc.bat @@ -1,5 +1,5 @@ @echo off -title wufuc uninstaller - v0.6.0.1 +title wufuc uninstaller :: Copyright (C) 2017 zeffy :: This program is free software: you can redistribute it and/or modify @@ -45,12 +45,14 @@ goto :die set "WINDOWS_ARCHITECTURE=x64" set "wufuc_dll=%~dp0wufuc64.dll" +for /f "tokens=*" %%i in ('wmic /output:stdout datafile where "name='%wufuc_dll:\=\\%'" get Version /value ^| find "="') do set "%%i" +title wufuc uninstaller - v%Version% + :confirmation set /p CONTINUE=Enter 'Y' if you want to uninstall wufuc: if /I not "%CONTINUE%"=="Y" goto :cancel echo. -:uninstall set "wufuc_task=wufuc.{72EEE38B-9997-42BD-85D3-2DD96DA17307}" rundll32 "%wufuc_dll%",Rundll32Unload schtasks /Delete /TN "%wufuc_task%" /F diff --git a/install/utility scripts/disable_wufuc.bat b/install/utility scripts/disable_wufuc.bat new file mode 100644 index 0000000..b668803 --- /dev/null +++ b/install/utility scripts/disable_wufuc.bat @@ -0,0 +1,70 @@ +@echo off +title wufuc utility - disable task +:: Copyright (C) 2017 zeffy + +:: This program is free software: you can redistribute it and/or modify +:: it under the terms of the GNU General Public License as published by +:: the Free Software Foundation, either version 3 of the License, or +:: (at your option) any later version. + +:: This program is distributed in the hope that it will be useful, +:: but WITHOUT ANY WARRANTY; without even the implied warranty of +:: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +:: GNU General Public License for more details. + +:: You should have received a copy of the GNU General Public License +:: along with this program. If not, see . + +echo Copyright ^(C^) 2017 zeffy +echo This program comes with ABSOLUTELY NO WARRANTY. +echo This is free software, and you are welcome to redistribute it +echo under certain conditions; see COPYING.txt for details. +echo. + +fltmc >nul 2>&1 || ( + echo This batch script requires administrator privileges. Right-click on + echo %~nx0 and select "Run as administrator". + goto :die +) + +if /I "%PROCESSOR_ARCHITECTURE%"=="AMD64" ( + goto :is_x64 +) else ( + if /I "%PROCESSOR_ARCHITEW6432%"=="AMD64" ( + goto :is_x64 + ) + if /I "%PROCESSOR_ARCHITECTURE%"=="x86" ( + set "WINDOWS_ARCHITECTURE=x86" + set "wufuc_dll=%~dp0wufuc32.dll" + goto :confirmation + ) +) +goto :die + +:is_x64 +set "WINDOWS_ARCHITECTURE=x64" +set "wufuc_dll=%~dp0..\wufuc64.dll" + +:confirmation +set /p CONTINUE=Enter 'Y' if you want to disable wufuc: +if /I not "%CONTINUE%"=="Y" goto :cancel +echo. + +set "wufuc_task=wufuc.{72EEE38B-9997-42BD-85D3-2DD96DA17307}" +rundll32 "%wufuc_dll%",Rundll32Unload +schtasks /Change /TN "%wufuc_task%" /DISABLE + +echo. +echo Disabled wufuc! The patch will remain active until you restart. + +:die +echo. +echo Press any key to exit... +pause >nul +exit + +:cancel +echo. +echo Canceled by user, press any key to exit... +pause >nul +exit diff --git a/install/utility scripts/enable_wufuc.bat b/install/utility scripts/enable_wufuc.bat new file mode 100644 index 0000000..8c682ba --- /dev/null +++ b/install/utility scripts/enable_wufuc.bat @@ -0,0 +1,51 @@ +@echo off +title wufuc utility - enable task +:: Copyright (C) 2017 zeffy + +:: This program is free software: you can redistribute it and/or modify +:: it under the terms of the GNU General Public License as published by +:: the Free Software Foundation, either version 3 of the License, or +:: (at your option) any later version. + +:: This program is distributed in the hope that it will be useful, +:: but WITHOUT ANY WARRANTY; without even the implied warranty of +:: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +:: GNU General Public License for more details. + +:: You should have received a copy of the GNU General Public License +:: along with this program. If not, see . + +echo Copyright ^(C^) 2017 zeffy +echo This program comes with ABSOLUTELY NO WARRANTY. +echo This is free software, and you are welcome to redistribute it +echo under certain conditions; see COPYING.txt for details. +echo. + +fltmc >nul 2>&1 || ( + echo This batch script requires administrator privileges. Right-click on + echo %~nx0 and select "Run as administrator". + goto :die +) + +set /p CONTINUE=Enter 'Y' if you want to enable wufuc: +if /I not "%CONTINUE%"=="Y" goto :cancel +echo. + +set "wufuc_task=wufuc.{72EEE38B-9997-42BD-85D3-2DD96DA17307}" +schtasks /Change /TN "%wufuc_task%" /ENABLE +schtasks /Run /TN "%wufuc_task%" + +echo. +echo Enabled and started wufuc! + +:die +echo. +echo Press any key to exit... +pause >nul +exit + +:cancel +echo. +echo Canceled by user, press any key to exit... +pause >nul +exit diff --git a/install/repair_wuaueng.dll.bat b/install/utility scripts/repair_wuaueng.dll.bat similarity index 95% rename from install/repair_wuaueng.dll.bat rename to install/utility scripts/repair_wuaueng.dll.bat index 4fc7525..b06eadd 100644 --- a/install/repair_wuaueng.dll.bat +++ b/install/utility scripts/repair_wuaueng.dll.bat @@ -1,5 +1,5 @@ @echo off -title install wufuc ^(repair wuaueng.dll^) - v0.6.0.1 +title wufuc utility - repair wuaueng.dll :: Copyright (C) 2017 zeffy :: This program is free software: you can redistribute it and/or modify @@ -27,7 +27,6 @@ fltmc >nul 2>&1 || ( goto :die ) -:confirmation echo You may want to use this script if you previously modified wuaueng.dll echo with "aio-wuaueng.dll-patch.bat" or by other means. echo. diff --git a/install/wufuc64.dll b/install/wufuc64.dll new file mode 100644 index 0000000000000000000000000000000000000000..470994550ffc65c9c2f410ea0ba4f4887b44bffa GIT binary patch literal 149504 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 WJmq3U88N16O{n01w*Rj*@V@}(&k|Jt literal 0 HcmV?d00001 diff --git a/wufuc/util.c b/wufuc/util.c index 1e17082..3f3a200 100644 --- a/wufuc/util.c +++ b/wufuc/util.c @@ -5,18 +5,6 @@ #include #include "util.h" -BOOL IsWindows7Or8Point1(void) { - return IsWindows7() || IsWindows8Point1(); -} - -BOOL IsWindows7(void) { - return IsWindows7OrGreater() && !IsWindows8OrGreater(); -} - -BOOL IsWindows8Point1(void) { - return IsWindows8Point1OrGreater() && !IsWindows10OrGreater(); -} - VOID DetourIAT(HMODULE hModule, LPSTR lpFuncName, LPVOID *lpOldAddress, LPVOID lpNewAddress) { LPVOID *lpAddress = FindIAT(hModule, lpFuncName); if (!lpAddress || *lpAddress == lpNewAddress) { @@ -145,6 +133,18 @@ VOID ResumeAndCloseThreads(HANDLE *lphThreads, SIZE_T cb) { _tdbgprintf(_T("Resumed threads.")); } +BOOL IsWindows7Or8Point1(void) { + return IsWindows7() || IsWindows8Point1(); +} + +BOOL IsWindows7(void) { + return IsWindows7OrGreater() && !IsWindows8OrGreater(); +} + +BOOL IsWindows8Point1(void) { + return IsWindows8Point1OrGreater() && !IsWindows10OrGreater(); +} + VOID _wdbgprintf(LPCWSTR format, ...) { WCHAR buffer[0x1000]; va_list argptr; diff --git a/wufuc/util.h b/wufuc/util.h index 28cf5f8..15cb760 100644 --- a/wufuc/util.h +++ b/wufuc/util.h @@ -3,12 +3,6 @@ EXTERN_C IMAGE_DOS_HEADER __ImageBase; #define HINST_THISCOMPONENT ((HINSTANCE)&__ImageBase) -BOOL IsWindows7Or8Point1(void); - -BOOL IsWindows7(void); - -BOOL IsWindows8Point1(void); - VOID DetourIAT(HMODULE hModule, LPSTR lpFuncName, LPVOID *lpOldAddress, LPVOID lpNewAddress); #define DETOUR_IAT(x, y) \ @@ -28,6 +22,12 @@ VOID SuspendProcessThreads(DWORD dwProcessId, DWORD dwThreadId, HANDLE *lphThrea VOID ResumeAndCloseThreads(HANDLE *lphThreads, SIZE_T dwSize); +BOOL IsWindows7Or8Point1(void); + +BOOL IsWindows7(void); + +BOOL IsWindows8Point1(void); + VOID _wdbgprintf(LPCWSTR format, ...); VOID _dbgprintf(LPCSTR format, ...); //#ifdef _DEBUG diff --git a/wufuc/version.rc b/wufuc/version.rc index 16de7ec2289aebe4b37b2817684e246740a5ced3..7166805c294d7fb0b3fe878a49a0fa7bf09daa67 100644 GIT binary patch delta 42 ucmZ3%w}NlNE=Hq?yA2tQHolE!W;B{SpG9|b8Ot$7FjIVT8k-Oh9|8bGISz6F delta 42 ucmZ3%w}NlNE=I$NyA2r)H@=N#W;C2UpG9|b8Ot$7FjIVT8k-Oh9|8bF(++L`