From 3df31b052b317ee9b2bbe8850d95ac7b45d7caf9 Mon Sep 17 00:00:00 2001 From: xinb Date: Sun, 8 Sep 2024 19:37:42 +0000 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20get=5Facticated.cmd?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- get_acticated.cmd | 62 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 get_acticated.cmd diff --git a/get_acticated.cmd b/get_acticated.cmd new file mode 100644 index 0000000..531da9f --- /dev/null +++ b/get_acticated.cmd @@ -0,0 +1,62 @@ +# The following get.ps1 code is hosted on get.activated.win for massgrave.dev. For more info, please visit massgrave.dev. + +$ErrorActionPreference = "Stop" +# Enable TLSv1.2 for compatibility with older clients for current session +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 + +$DownloadURL1 = 'https://git.xb/xinb/Microsoft-Activation-Scripts/raw/commit/c75cd29b9fda945df18a72bccf17fab56868a261/MAS/All-In-One-Version-KL/MAS_AIO.cmd' +$DownloadURL2 = 'https://git.xinb.cc/xinb/Microsoft-Activation-Scripts/raw/commit/c75cd29b9fda945df18a72bccf17fab56868a261/MAS/All-In-One-Version-KL/MAS_AIO.cmd' +$DownloadURL3 = 'https://raw.githubusercontent.com/massgravel/Microsoft-Activation-Scripts/raw/commit/b1b5299c4725d97349b18b59061647198f7cc59b/MAS/All-In-One-Version-KL/MAS_AIO.cmd' + +$URLs = @($DownloadURL1, $DownloadURL2) +$ShuffledURLs = $URLs | Sort-Object { Get-Random } + +try { + $response = Invoke-WebRequest -Uri $ShuffledURLs[0] -UseBasicParsing +} +catch { + try { + $response = Invoke-WebRequest -Uri $ShuffledURLs[1] -UseBasicParsing + } + catch { + $response = Invoke-WebRequest -Uri $ShuffledURLs[2] -UseBasicParsing + } +} + +# Verify script integrity +$releaseHash = 'E84076DA0AF0DEE161FAFEBA9739362B9C422AC3456C6054045DA6519A669BC4' +$stream = New-Object IO.MemoryStream +$writer = New-Object IO.StreamWriter $stream +$writer.Write($response) +$writer.Flush() +$stream.Position = 0 +$hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($stream)) -replace '-' +if ($hash -ne $releaseHash) { + Write-Warning "Hash ($hash) mismatch, aborting!`nReport this issue at https://massgrave.dev/troubleshoot" + $response = $null + return +} + +# Check for AutoRun registry which may create issues with CMD +$paths = "HKCU:\SOFTWARE\Microsoft\Command Processor", "HKLM:\SOFTWARE\Microsoft\Command Processor" +foreach ($path in $paths) { + if (Get-ItemProperty -Path $path -Name "Autorun" -ErrorAction SilentlyContinue) { + Write-Warning "Autorun registry found, CMD may crash! `nManually copy-paste the below command to fix...`nRemove-ItemProperty -Path '$path' -Name 'Autorun'" + } +} + +$rand = [Guid]::NewGuid().Guid +$isAdmin = [bool]([Security.Principal.WindowsIdentity]::GetCurrent().Groups -match 'S-1-5-32-544') +$FilePath = if ($isAdmin) { "$env:SystemRoot\Temp\MAS_$rand.cmd" } else { "$env:TEMP\MAS_$rand.cmd" } + +$ScriptArgs = "$args " +$prefix = "@::: $rand `r`n" +$content = $prefix + $response +Set-Content -Path $FilePath -Value $content + +# Set ComSpec variable for current session in case its corrupt in the system +$env:ComSpec = "$env:SystemRoot\system32\cmd.exe" +Start-Process cmd.exe "/c """"$FilePath"" $ScriptArgs""" -Wait + +$FilePaths = @("$env:TEMP\MAS*.cmd", "$env:SystemRoot\Temp\MAS*.cmd") +foreach ($FilePath in $FilePaths) { Get-Item $FilePath | Remove-Item } \ No newline at end of file