Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- cd /d "%~dp0"
- (set winver=0) & (set current=0) & (set winload=0) & (set patched=0)
- bcdedit /enum >nul 2>&1
- if %errorlevel% neq 0 (echo -ERROR- Command BCDEDIT Missing!) & (goto end)
- ver | find "6.1." >nul 2>&1
- if %errorlevel% equ 0 (set winver=7) & (set kernel=ntkrnlpa.exe)
- ver | find "6.2." >nul 2>&1
- if %errorlevel% equ 0 (set winver=8) & (set kernel=ntoskrnl.exe)
- ver | find "6.3." >nul 2>&1
- if %errorlevel% equ 0 (set winver=8.1) & (set kernel=ntoskrnl.exe)
- ver | find "10.0." >nul 2>&1
- if %errorlevel% equ 0 (set winver=10) & (set kernel=ntoskrnl.exe)
- if %winver% equ 0 (echo -ERROR- Unknown Windows Version!) & (goto end)
- if not exist "%systemroot%\system32\%kernel%" (echo -ERROR- Cannot Find %kernel%!) & (goto end)
- FOR /F %%a in ('bcdedit /enum ^| find "{current}"') do set current=1
- if %current% equ 0 (echo -ERROR- Unknown Boot Config!) & (goto end)
- FOR /F %%a in ('bcdedit /enum {current} ^| find "%systemroot:~2%\system32\winload.exe"') do set winload=1
- FOR /F %%a in ('bcdedit /enum {current} ^| find "%systemroot:~2%\system32\winloadx.exe"') do set winload=1
- if %winload% equ 0 (echo *ERROR- Cannot Detect Loader!) & (goto end)
- echo ++ Executing Kernel Patch!
- Patchpae -type kernel -o "%systemroot%\system32\ntkrnlpx.exe" "%systemroot%\system32\%kernel%" >nul 2>&1
- if %errorlevel% neq 0 (echo -ERROR- Cannot Patch %kernel%!) & (goto end)
- echo ++ Executing Loader Patch!
- Patchpae -type loader -o "%systemroot%\system32\winloadx.exe" "%systemroot%\system32\winload.exe" >nul 2>&1
- if %errorlevel% neq 0 (echo -ERROR- Cannot Patch winload.exe!) & (goto end)
- FOR /F %%a in ('bcdedit /enum ^| find "ntkrnlpx.exe"') do set patched=1
- if %patched% equ 1 (goto finished)
- echo ++ Adding New Boot Entry!
- FOR /F "tokens=2 delims={}" %%g in ('bcdedit /copy {current} /d "Windows %winver% (PAE)"') do set newguid=%%g
- bcdedit /set {%newguid%} kernel "ntkrnlpx.exe" >nul 2>&1
- bcdedit /set {%newguid%} path "%systemroot:~2%\system32\winloadx.exe" >nul 2>&1
- bcdedit /set {%newguid%} nointegritychecks yes >nul 2>&1
- bcdedit /set {bootmgr} default {%newguid%} >nul 2>&1
- bcdedit /set {bootmgr} displaybootmenu yes >nul 2>&1
- bcdedit /set {bootmgr} timeout 3 >nul 2>&1
- :finished
- echo ++ Success, All Done!
- :end
- ping 127.0.0.1 -n 10 >nul 2>&1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement