| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | @setlocal DisableDelayedExpansion | 
					
						
							|  |  |  | @echo off | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::============================================================================ | 
					
						
							|  |  |  | :: | 
					
						
							|  |  |  | ::   This script is a part of 'Microsoft Activation Scripts' (MAS) project. | 
					
						
							|  |  |  | :: | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | ::   Homepage: massgrave.dev | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | ::      Email: windowsaddict@protonmail.com | 
					
						
							|  |  |  | :: | 
					
						
							|  |  |  | ::============================================================================ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :: Re-launch the script with x64 process if it was initiated by x86 process on x64 bit Windows | 
					
						
							|  |  |  | :: or with ARM64 process if it was initiated by x86/ARM32 process on ARM64 Windows | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set "_cmdf=%~f0" | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | for %%# in (%*) do ( | 
					
						
							|  |  |  | if /i "%%#"=="r1" set r1=1 | 
					
						
							|  |  |  | if /i "%%#"=="r2" set r2=1 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if exist %SystemRoot%\Sysnative\cmd.exe if not defined r1 ( | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | setlocal EnableDelayedExpansion | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | start %SystemRoot%\Sysnative\cmd.exe /c ""!_cmdf!" %* r1" | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | exit /b | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :: Re-launch the script with ARM32 process if it was initiated by x64 process on ARM64 Windows | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if exist %SystemRoot%\SysArm32\cmd.exe if %PROCESSOR_ARCHITECTURE%==AMD64 if not defined r2 ( | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | setlocal EnableDelayedExpansion | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | start %SystemRoot%\SysArm32\cmd.exe /c ""!_cmdf!" %* r2" | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | exit /b | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::  Set Path variable, it helps if it is misconfigured in the system | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | set "PATH=%SystemRoot%\System32;%SystemRoot%\System32\wbem;%SystemRoot%\System32\WindowsPowerShell\v1.0\" | 
					
						
							|  |  |  | if exist "%SystemRoot%\Sysnative\reg.exe" ( | 
					
						
							|  |  |  | set "PATH=%SystemRoot%\Sysnative;%SystemRoot%\Sysnative\wbem;%SystemRoot%\Sysnative\WindowsPowerShell\v1.0\;%PATH%" | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::  Check LF line ending | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | pushd "%~dp0" | 
					
						
							|  |  |  | >nul findstr /rxc:".*" "%~nx0" | 
					
						
							|  |  |  | if not %errorlevel%==0 ( | 
					
						
							|  |  |  | echo: | 
					
						
							|  |  |  | echo Error: This is not a correct file. It has LF line ending issue. | 
					
						
							|  |  |  | echo: | 
					
						
							|  |  |  | echo Press any key to exit... | 
					
						
							|  |  |  | pause >nul | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | popd | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | color 07 | 
					
						
							|  |  |  | title Extract $OEM$ Folder | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set winbuild=1 | 
					
						
							|  |  |  | set "nul=>nul 2>&1" | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | set psc=powershell.exe | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | for /f "tokens=6 delims=[]. " %%G in ('ver') do set winbuild=%%G | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set _NCS=1 | 
					
						
							|  |  |  | if %winbuild% LSS 10586 set _NCS=0 | 
					
						
							|  |  |  | if %winbuild% GEQ 10586 reg query "HKCU\Console" /v ForceV2 2>nul | find /i "0x0" 1>nul && (set _NCS=0) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if %_NCS% EQU 1 ( | 
					
						
							|  |  |  | for /F %%a in ('echo prompt $E ^| cmd') do set "esc=%%a" | 
					
						
							|  |  |  | set     "Red="41;97m"" | 
					
						
							|  |  |  | set   "Green="42;97m"" | 
					
						
							|  |  |  | set "Magenta="45;97m"" | 
					
						
							|  |  |  | set  "_White="40;37m"" | 
					
						
							|  |  |  | set  "_Green="40;92m"" | 
					
						
							|  |  |  | set "_Yellow="40;93m"" | 
					
						
							|  |  |  | ) else ( | 
					
						
							|  |  |  | set     "Red="Red" "white"" | 
					
						
							|  |  |  | set   "Green="DarkGreen" "white"" | 
					
						
							|  |  |  | set "Magenta="Darkmagenta" "white"" | 
					
						
							|  |  |  | set  "_White="Black" "Gray"" | 
					
						
							|  |  |  | set  "_Green="Black" "Green"" | 
					
						
							|  |  |  | set "_Yellow="Black" "Yellow"" | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set "nceline=echo: &echo ==== ERROR ==== &echo:" | 
					
						
							|  |  |  | set "eline=echo: &call :ex_color %Red% "==== ERROR ====" &echo:" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if %winbuild% LSS 7600 ( | 
					
						
							|  |  |  | %nceline% | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | echo Unsupported OS version detected. | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | echo Project is supported only for Windows 7/8/8.1/10/11 and their Server equivalent. | 
					
						
							|  |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | for %%# in (powershell.exe) do @if "%%~$PATH:#"=="" ( | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | %nceline% | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | echo Unable to find powershell.exe in the system. | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::  Check desktop location | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set desktop= | 
					
						
							|  |  |  | for /f "skip=2 tokens=2*" %%a in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop') do call set "desktop=%%b" | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if not defined desktop for /f "delims=" %%a in ('%psc% "& {write-host $([Environment]::GetFolderPath('Desktop'))}"') do call set "desktop=%%a" | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | if not defined desktop ( | 
					
						
							|  |  |  | %eline% | 
					
						
							|  |  |  | echo Desktop location was not detected, aborting... | 
					
						
							|  |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::  Fix for the special characters limitation in path name | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set "_work=%~dp0" | 
					
						
							|  |  |  | if "%_work:~-1%"=="\" set "_work=%_work:~0,-1%" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set "_batf=%~f0" | 
					
						
							|  |  |  | set "_batp=%_batf:'=''%" | 
					
						
							|  |  |  | set "_pdesk=%desktop:'=''%" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set "_ttemp=%temp%" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set "_dir=%desktop%\$OEM$\$$\Setup\Scripts" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | setlocal EnableDelayedExpansion | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if not exist "!desktop!\" ( | 
					
						
							|  |  |  | %eline% | 
					
						
							|  |  |  | echo Desktop location was not detected, aborting... | 
					
						
							|  |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | echo "!_batf!" | find /i "!_ttemp!" 1>nul && ( | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if /i not "!_work!"=="!_ttemp!" ( | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | %eline% | 
					
						
							|  |  |  | echo Script is launched from the temp folder, | 
					
						
							|  |  |  | echo Most likely you are running the script directly from the archive file. | 
					
						
							|  |  |  | echo: | 
					
						
							|  |  |  | echo Extract the archive file and launch the script from the extracted folder. | 
					
						
							|  |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | ) | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | mode 66, 26 | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | if exist "!desktop!\$OEM$\" ( | 
					
						
							|  |  |  | echo _____________________________________________________ | 
					
						
							|  |  |  | %eline% | 
					
						
							|  |  |  | echo $OEM$ folder already exists on the Desktop. | 
					
						
							|  |  |  | echo _____________________________________________________ | 
					
						
							|  |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | set HWID_Activation.cmd=HWID-KMS38_Activation\HWID_Activation.cmd | 
					
						
							|  |  |  | set KMS38_Activation.cmd=HWID-KMS38_Activation\KMS38_Activation.cmd | 
					
						
							|  |  |  | set ClipUp.exe=HWID-KMS38_Activation\BIN\ClipUp.exe | 
					
						
							|  |  |  | set gatherosstate.exe=HWID-KMS38_Activation\BIN\gatherosstate.exe | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | set Activate.cmd=Online_KMS_Activation\Activate.cmd | 
					
						
							|  |  |  | set cleanosppx64.exe=Online_KMS_Activation\BIN\cleanosppx64.exe | 
					
						
							|  |  |  | set cleanosppx86.exe=Online_KMS_Activation\BIN\cleanosppx86.exe | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | pushd "!_work!" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set _nofile= | 
					
						
							|  |  |  | for %%# in ( | 
					
						
							|  |  |  | %HWID_Activation.cmd% | 
					
						
							|  |  |  | %KMS38_Activation.cmd% | 
					
						
							|  |  |  | %ClipUp.exe% | 
					
						
							|  |  |  | %gatherosstate.exe% | 
					
						
							|  |  |  | %Activate.cmd% | 
					
						
							|  |  |  | %cleanosppx64.exe% | 
					
						
							|  |  |  | %cleanosppx86.exe% | 
					
						
							|  |  |  | ) do ( | 
					
						
							|  |  |  | if not exist "%%#" set _nofile=1 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if defined _nofile ( | 
					
						
							|  |  |  | echo _____________________________________________________ | 
					
						
							|  |  |  | %eline% | 
					
						
							|  |  |  | echo Some files are missing in the 'Activators' folder. | 
					
						
							|  |  |  | echo _____________________________________________________ | 
					
						
							|  |  |  | goto done2 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :Menu | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | echo: | 
					
						
							|  |  |  | echo: | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | echo: | 
					
						
							|  |  |  | echo: | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | echo:               Extract $OEM$ folder on the desktop            | 
					
						
							|  |  |  | echo:     ________________________________________________________ | 
					
						
							|  |  |  | echo:                                                             | 
					
						
							|  |  |  | echo:        [1] HWID | 
					
						
							|  |  |  | echo:        [2] KMS38 | 
					
						
							|  |  |  | echo:        [3] Online KMS | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | echo:     | 
					
						
							|  |  |  | echo:        [4] HWID  ^(Windows^) ^+ Online KMS ^(Office^) | 
					
						
							|  |  |  | echo:        [5] KMS38 ^(Windows^) ^+ Online KMS ^(Office^) | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | echo: | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | echo:        [6] Exit                                             | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | echo:     ________________________________________________________ | 
					
						
							|  |  |  | echo:   | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | call :ex_color2 %_White% "      " %_Green% "Enter a menu option in the Keyboard [1,2,3,4,5,6]" | 
					
						
							|  |  |  | choice /C:123456 /N | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | set _erl=%errorlevel% | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if %_erl%==6 exit /b | 
					
						
							|  |  |  | if %_erl%==5 goto:kms38_kms | 
					
						
							|  |  |  | if %_erl%==4 goto:hwid_kms | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | if %_erl%==3 goto:kms | 
					
						
							|  |  |  | if %_erl%==2 goto:kms38 | 
					
						
							|  |  |  | if %_erl%==1 goto:hwid | 
					
						
							|  |  |  | goto :Menu | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :hwid | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | call :prep | 
					
						
							|  |  |  | call :hwidprep | 
					
						
							|  |  |  | call :pop_d | 
					
						
							|  |  |  | call :export hwid_setup | 
					
						
							|  |  |  | call :hwidprep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if defined _error goto errorfound | 
					
						
							|  |  |  | set "_oem=HWID" | 
					
						
							|  |  |  | goto done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :hwid_setup: | 
					
						
							|  |  |  | @echo off | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | fltmc >nul || exit /b | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | start /b /wait cmd /c "%~dp0HWID_Activation.cmd" /a | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cd \ | 
					
						
							|  |  |  | (goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0") | 
					
						
							|  |  |  | :hwid_setup: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms38 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | call :prep | 
					
						
							|  |  |  | call :kms38prep | 
					
						
							|  |  |  | call :pop_d | 
					
						
							|  |  |  | call :export kms38_setup | 
					
						
							|  |  |  | call :kms38prep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if defined _error goto errorfound | 
					
						
							|  |  |  | set "_oem=KMS38" | 
					
						
							|  |  |  | goto done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms38_setup: | 
					
						
							|  |  |  | @echo off | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | fltmc >nul || exit /b | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | start /b /wait cmd /c "%~dp0KMS38_Activation.cmd" /a | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cd \ | 
					
						
							|  |  |  | (goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0") | 
					
						
							|  |  |  | :kms38_setup: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | call :prep | 
					
						
							|  |  |  | call :kmsprep | 
					
						
							|  |  |  | call :pop_d | 
					
						
							|  |  |  | call :export kms_setup | 
					
						
							|  |  |  | call :kmsprep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if defined _kerror goto errorfound | 
					
						
							|  |  |  | set "_oem=Online KMS" | 
					
						
							|  |  |  | goto done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms_setup: | 
					
						
							|  |  |  | @echo off | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | fltmc >nul || exit /b | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | start /b /wait cmd /c "%~dp0Activate.cmd" /rat | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | start /b /wait cmd /c "%~dp0Activate.cmd" /wo | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cd \ | 
					
						
							|  |  |  | (goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0") | 
					
						
							|  |  |  | :kms_setup: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :hwid_kms | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | call :prep | 
					
						
							|  |  |  | call :hwidprep | 
					
						
							|  |  |  | call :kmsprep | 
					
						
							|  |  |  | call :pop_d | 
					
						
							|  |  |  | call :export hwid_kms_setup | 
					
						
							|  |  |  | call :hwidprep2 | 
					
						
							|  |  |  | call :kmsprep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if defined _error goto errorfound | 
					
						
							|  |  |  | if defined _kerror goto errorfound | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | set "_oem=HWID [Windows] + Online KMS [Office]" | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | goto done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :hwid_kms_setup: | 
					
						
							|  |  |  | @echo off | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | fltmc >nul || exit /b | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | start /b /wait cmd /c "%~dp0HWID_Activation.cmd" /a | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | start /b /wait cmd /c "%~dp0Activate.cmd" /rat | 
					
						
							|  |  |  | start /b /wait cmd /c "%~dp0Activate.cmd" /o | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | cd \ | 
					
						
							|  |  |  | (goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0") | 
					
						
							|  |  |  | :hwid_kms_setup: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms38_kms | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cls | 
					
						
							|  |  |  | call :prep | 
					
						
							|  |  |  | call :kms38prep | 
					
						
							|  |  |  | call :kmsprep | 
					
						
							|  |  |  | call :pop_d | 
					
						
							|  |  |  | call :export kms38_kms_setup | 
					
						
							|  |  |  | call :kms38prep2 | 
					
						
							|  |  |  | call :kmsprep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if defined _error goto errorfound | 
					
						
							|  |  |  | if defined _kerror goto errorfound | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | set "_oem=KMS38 [Windows] + Online KMS [Office]" | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | goto done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms38_kms_setup: | 
					
						
							|  |  |  | @echo off | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | fltmc >nul || exit /b | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | start /b /wait cmd /c "%~dp0KMS38_Activation.cmd" /a | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | start /b /wait cmd /c "%~dp0Activate.cmd" /rat | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | start /b /wait cmd /c "%~dp0Activate.cmd" /o | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cd \ | 
					
						
							|  |  |  | (goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0") | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | :kms38_kms_setup: | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :errorfound | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | %eline% | 
					
						
							|  |  |  | echo $OEM$ Folder was not created successfully... | 
					
						
							|  |  |  | goto :done2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo _______________________________________________________ | 
					
						
							|  |  |  | echo: | 
					
						
							|  |  |  | call :ex_color %Magenta% "%_oem%" | 
					
						
							|  |  |  | call :ex_color %Green% "$OEM$ folder is successfully created on the Desktop." | 
					
						
							|  |  |  | echo _______________________________________________________ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :done2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo: | 
					
						
							|  |  |  | call :ex_color %_Yellow% "Press any key to exit..." | 
					
						
							|  |  |  | pause >nul | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :prep | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | pushd "!desktop!" | 
					
						
							|  |  |  | md "!desktop!\$OEM$\$$\Setup\Scripts\BIN" | 
					
						
							|  |  |  | pushd "!_work!" | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :hwidprep | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | copy /y /b "%HWID_Activation.cmd%" "!_dir!\HWID_Activation.cmd" %nul% | 
					
						
							|  |  |  | copy /y /b "%gatherosstate.exe%" "!_dir!\BIN\gatherosstate.exe" %nul% | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms38prep | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | copy /y /b "%KMS38_Activation.cmd%" "!_dir!\KMS38_Activation.cmd" %nul% | 
					
						
							|  |  |  | copy /y /b "%ClipUp.exe%" "!_dir!\BIN\ClipUp.exe" %nul% | 
					
						
							|  |  |  | copy /y /b "%gatherosstate.exe%" "!_dir!\BIN\gatherosstate.exe" %nul% | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kmsprep | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | copy /y /b "%Activate.cmd%" "!_dir!\Activate.cmd" %nul% | 
					
						
							|  |  |  | copy /y /b "%cleanosppx64.exe%" "!_dir!\BIN\cleanosppx64.exe" %nul% | 
					
						
							|  |  |  | copy /y /b "%cleanosppx86.exe%" "!_dir!\BIN\cleanosppx86.exe" %nul% | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :hwidprep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set _error= | 
					
						
							|  |  |  | pushd "!_dir!\" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for %%# in ( | 
					
						
							|  |  |  | HWID_Activation.cmd | 
					
						
							|  |  |  | BIN\gatherosstate.exe | 
					
						
							|  |  |  | SetupComplete.cmd | 
					
						
							|  |  |  | ) do ( | 
					
						
							|  |  |  | if not exist "%%#" set _error=1 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kms38prep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set _error= | 
					
						
							|  |  |  | pushd "!_dir!\" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for %%# in ( | 
					
						
							|  |  |  | KMS38_Activation.cmd | 
					
						
							|  |  |  | BIN\ClipUp.exe | 
					
						
							|  |  |  | BIN\gatherosstate.exe | 
					
						
							|  |  |  | SetupComplete.cmd | 
					
						
							|  |  |  | ) do ( | 
					
						
							|  |  |  | if not exist "%%#" set _error=1 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :kmsprep2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set _kerror= | 
					
						
							|  |  |  | pushd "!_dir!\" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for %%# in ( | 
					
						
							|  |  |  | Activate.cmd | 
					
						
							|  |  |  | BIN\cleanosppx64.exe | 
					
						
							|  |  |  | BIN\cleanosppx86.exe | 
					
						
							|  |  |  | SetupComplete.cmd | 
					
						
							|  |  |  | ) do ( | 
					
						
							|  |  |  | if not exist "%%#" set _kerror=1 | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :pop_d | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | popd | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::  Extract the text from batch script without character and file encoding issue | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :export | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | %nul% %psc% "$f=[io.file]::ReadAllText('!_batp!') -split \":%~1\:.*`r`n\"; [io.file]::WriteAllText('!_pdesk!\$OEM$\$$\Setup\Scripts\SetupComplete.cmd',$f[1].Trim(),[System.Text.Encoding]::ASCII);" | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ::======================================================================================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :ex_color | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if %_NCS% EQU 1 ( | 
					
						
							|  |  |  | echo %esc%[%~1%~2%esc%[0m | 
					
						
							|  |  |  | ) else ( | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if not exist %psc% (echo %~3) else (%psc% write-host -back '%1' -fore '%2' '%3') | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | ) | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | :ex_color2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if %_NCS% EQU 1 ( | 
					
						
							|  |  |  | echo %esc%[%~1%~2%esc%[%~3%~4%esc%[0m | 
					
						
							|  |  |  | ) else ( | 
					
						
							| 
									
										
										
										
											2022-07-25 20:03:00 +02:00
										 |  |  | if not exist %psc% (echo %~3%~6) else (%psc% write-host -back '%1' -fore '%2' '%3' -NoNewline; write-host -back '%4' -fore '%5' '%6') | 
					
						
							| 
									
										
										
										
											2022-07-25 19:08:12 +02:00
										 |  |  | ) | 
					
						
							|  |  |  | exit /b | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-24 00:28:16 +01:00
										 |  |  | ::======================================================================================================================================== |