@echo off
setlocal EnableDelayedExpansion
net session >nul 2>&1
if %errorlevel% equ 0 goto :RUN
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "Start-Process cmd -ArgumentList '/c \""%~f0\""' -Verb RunAs -Wait"
exit /b
:RUN
set "PS1=%TEMP%\sysuninstall_%RANDOM%.ps1"
if exist "%PS1%" del "%PS1%" >nul 2>&1
>> "%PS1%" echo Add-Type -AssemblyName System.Windows.Forms
>> "%PS1%" echo.
>> "%PS1%" echo $msgConfirm = [char]0x05D4 + [char]0x05D0 + [char]0x05DD + ' ' + [char]0x05D0 + [char]0x05EA + [char]0x05D4 + ' ' + [char]0x05D1 + [char]0x05D8 + [char]0x05D5 + [char]0x05D7 + ' ' + [char]0x05E9 + [char]0x05D1 + [char]0x05E8 + [char]0x05E6 + [char]0x05D5 + [char]0x05E0 + [char]0x05DA + ' ' + [char]0x05DC + [char]0x05D1 + [char]0x05D8 + [char]0x05DC + ' ' + [char]0x05D0 + [char]0x05EA + ' ' + [char]0x05DB + [char]0x05DC + ' ' + [char]0x05D4 + [char]0x05D7 + [char]0x05E1 + [char]0x05D9 + [char]0x05DE + [char]0x05D5 + [char]0x05EA + ' ' + [char]0x05D5 + [char]0x05DC + [char]0x05D4 + [char]0x05E4 + [char]0x05E1 + [char]0x05D9 + [char]0x05E7 + ' ' + [char]0x05D0 + [char]0x05EA + ' ' + [char]0x05D4 + [char]0x05DE + [char]0x05E2 + [char]0x05E8 + [char]0x05DB + [char]0x05EA + '?'
>> "%PS1%" echo $titleConfirm = [char]0x05D1 + [char]0x05D9 + [char]0x05D8 + [char]0x05D5 + [char]0x05DC + ' ' + [char]0x05DE + [char]0x05E2 + [char]0x05E8 + [char]0x05DB + [char]0x05EA + ' ' + [char]0x05E9 + [char]0x05DC + [char]0x05D9 + [char]0x05D8 + [char]0x05D4 + ' ' + [char]0x05DE + [char]0x05E8 + [char]0x05D7 + [char]0x05D5 + [char]0x05E7
>> "%PS1%" echo $r = [System.Windows.Forms.MessageBox]::Show($msgConfirm,$titleConfirm,'YesNo','Warning')
>> "%PS1%" echo if ($r -ne 'Yes') { exit 0 }
>> "%PS1%" echo.
>> "%PS1%" echo $taskName = 'MySystemManager'
>> "%PS1%" echo Stop-ScheduledTask -TaskName $taskName -ErrorAction SilentlyContinue
>> "%PS1%" echo Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue
>> "%PS1%" echo.
>> "%PS1%" echo Get-Process -Name powershell,powershell_ise -ErrorAction SilentlyContinue ^| ForEach-Object {
>> "%PS1%" echo     try {
>> "%PS1%" echo         $cmd = (Get-WmiObject Win32_Process -Filter "ProcessId=$($_.Id)" -ErrorAction SilentlyContinue).CommandLine
>> "%PS1%" echo         if ($cmd -like '*system_manager*') { Stop-Process -Id $_.Id -Force -ErrorAction SilentlyContinue }
>> "%PS1%" echo     } catch {}
>> "%PS1%" echo }
>> "%PS1%" echo.
>> "%PS1%" echo Remove-Item 'HKLM:\SOFTWARE\Policies\Google\Chrome\URLBlocklist' -Recurse -Force -ErrorAction SilentlyContinue
>> "%PS1%" echo Remove-Item 'HKLM:\SOFTWARE\Policies\Google\Chrome\URLAllowlist' -Recurse -Force -ErrorAction SilentlyContinue
>> "%PS1%" echo Remove-Item 'HKLM:\SOFTWARE\Policies\Microsoft\Edge\URLBlocklist' -Recurse -Force -ErrorAction SilentlyContinue
>> "%PS1%" echo Remove-Item 'HKLM:\SOFTWARE\Policies\Microsoft\Edge\URLAllowlist' -Recurse -Force -ErrorAction SilentlyContinue
>> "%PS1%" echo.
>> "%PS1%" echo Start-Process -FilePath 'gpupdate.exe' -ArgumentList '/force' -NoNewWindow -Wait -ErrorAction SilentlyContinue
>> "%PS1%" echo.
>> "%PS1%" echo $doneMsg = [char]0x05D4 + [char]0x05E1 + [char]0x05E8 + [char]0x05D4 + ' ' + [char]0x05D4 + [char]0x05D5 + [char]0x05E9 + [char]0x05DC + [char]0x05DE + [char]0x05D4 + ' ' + [char]0x05D1 + [char]0x05D4 + [char]0x05E6 + [char]0x05DC + [char]0x05D7 + [char]0x05D4 + '!' + [char]10 + [char]10 + [char]0x05D4 + [char]0x05DE + [char]0x05E9 + [char]0x05D9 + [char]0x05DE + [char]0x05D4 + ' ' + [char]0x05D4 + [char]0x05DE + [char]0x05EA + [char]0x05D5 + [char]0x05D6 + [char]0x05DE + [char]0x05E0 + [char]0x05EA + ' ' + [char]0x05D1 + [char]0x05D5 + [char]0x05D8 + [char]0x05DC + [char]0x05D4 + '.' + [char]10 + [char]0x05DB + [char]0x05DC + ' ' + [char]0x05D7 + [char]0x05E1 + [char]0x05D9 + [char]0x05DE + [char]0x05D5 + [char]0x05EA + ' ' + [char]0x05D4 + [char]0x05D0 + [char]0x05EA + [char]0x05E8 + [char]0x05D9 + [char]0x05DD + ' ' + [char]0x05D4 + [char]0x05D5 + [char]0x05E1 + [char]0x05E8 + [char]0x05D5 + '.' + [char]10 + [char]0x05D4 + [char]0x05DE + [char]0x05D7 + [char]0x05E9 + [char]0x05D1 + ' ' + [char]0x05D7 + [char]0x05D5 + [char]0x05E4 + [char]0x05E9 + [char]0x05D9 + ' ' + [char]0x05DC + [char]0x05D2 + [char]0x05DC + [char]0x05D9 + [char]0x05E9 + [char]0x05D4 + '.'
>> "%PS1%" echo [System.Windows.Forms.MessageBox]::Show($doneMsg,[char]0x05D4 + [char]0x05E1 + [char]0x05E8 + [char]0x05D4 + ' ' + [char]0x05D4 + [char]0x05D5 + [char]0x05E9 + [char]0x05DC + [char]0x05DE + [char]0x05D4,'OK','Information')
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "%PS1%"
del "%PS1%" >nul 2>&1
exit /b
