Skip to content

Instantly share code, notes, and snippets.

@boutzamat
Created November 25, 2025 22:14
Show Gist options
  • Select an option

  • Save boutzamat/943dbd70667c0f1c09be40f39fb0c29c to your computer and use it in GitHub Desktop.

Select an option

Save boutzamat/943dbd70667c0f1c09be40f39fb0c29c to your computer and use it in GitHub Desktop.
Bypass latest Windows 11 OOBE
This guide explains two ways to run the bypass_oobe.bat script during the Windows 11 OOBE (Out-of-Box Experience) screen:
1. Using Explorer (easiest)
2. Using CMD (Shift+F10)
No PowerShell required.
What the script does:
• Bypasses the Windows 11 OOBE network requirement
• Creates a local administrator account
• Removes or disables defaultuser0
• Marks OOBE as fully completed
• Disables OOBE scheduled tasks
• Deletes OOBE executables so OOBE cannot return
• Reboots automatically when done
Requirements:
• A USB drive
• The file bypass_oobe.bat copied onto the USB drive
• A Windows 11 installation stuck at an OOBE screen
METHOD 1: Using Explorer (recommended)
1. Copy bypass_oobe.bat onto a USB drive.
2. Boot Windows until you reach the OOBE screen (for example: “Let’s connect you to a network”).
3. Press Shift + F10 to open Command Prompt.
4. In the CMD window, type: explorer
5. Explorer will open.
6. In the left sidebar, click “This PC”.
7. Open the USB drive.
8. Double-click bypass_oobe.bat.
9. The script will run and reboot the system automatically.
After the reboot, Windows will skip OOBE and log directly into the new local administrator user.
METHOD 2: Using CMD (no Explorer)
1. Copy bypass_oobe.bat onto a USB drive.
2. Boot Windows until the OOBE screen appears.
3. Press Shift + F10 to open Command Prompt.
4. Type: diskpart
5. Type: list volume
6. Identify your USB drive letter (for example D: or E:).
7. Type: exit
8. Switch to the USB drive, for example: D:
9. Type: dir to verify the file is present.
10. Run the script: bypass_oobe.bat
11. Allow the script to finish. The system will reboot automatically.
After reboot:
• OOBE will be disabled
• defaultuser0 will be removed or deactivated
• The system will boot into the created local admin account
• No Microsoft account or network is required
Notes:
• Do not close CMD or Explorer while the script is running.
• CMD during OOBE runs elevated, so no extra permissions are needed.
• The script works on Windows 11 ARM, x86, and x64 builds, including strict OOBE versions.
@echo off
echo =====================================================
echo WINDOWS 11 ARM OOBE NUKER - FUCK MICROSOFT EDITION
echo =====================================================
echo.
:: ------------ CONFIG ------------
set NEWUSER=LocalUser
set NEWPASS=FuckMicrosoft
:: --------------------------------
echo Creating local admin user "%NEWUSER%"...
net user %NEWUSER% %NEWPASS% /add
net localgroup administrators %NEWUSER% /add
echo User created.
echo.
:: --- Disable OOBE flags ---
echo Disabling OOBE registry flags...
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE /v SkipMachineOOBE /t REG_DWORD /d 1 /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE /v SkipUserOOBE /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\Setup /v OOBEInProgress /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v SetupPhase /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v SetupType /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v SystemSetupInProgress /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v CmdLine /t REG_SZ /d "" /f
echo OOBE flags disabled.
echo.
:: --- Disable auto login ---
echo Removing auto admin login settings...
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /f
echo Autologin disabled.
echo.
:: --- Force normal shell ---
echo Fixing Winlogon shell...
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Userinit /t REG_SZ /d "C:\Windows\System32\userinit.exe," /f
echo Shell fixed.
echo.
:: --- Disable setup tasks ---
echo Disabling setup tasks...
schtasks /Change /TN "\Microsoft\Windows\Setup\SetupCleanupTask" /Disable
schtasks /Change /TN "\Microsoft\Windows\OOBE\FirstLogonAnimation" /Disable
schtasks /Change /TN "\Microsoft\Windows\Setup\gwx" /Disable
schtasks /Change /TN "\Microsoft\Windows\OOBE\HardwareOOBE" /Disable
schtasks /Change /TN "\Microsoft\Windows\Setup\StateRepository-Setup" /Disable
schtasks /Change /TN "\Microsoft\Windows\Setup\SetupFinalize" /Disable
echo Tasks disabled.
echo.
:: --- Remove defaultuser0 if present ---
echo Removing defaultuser0 if it exists...
net user defaultuser0 /delete >nul 2>&1
echo defaultuser0 removed (or never existed).
echo.
:: --- Nuclear delete of OOBE executables ---
echo Nuking OOBE executables...
takeown /F C:\Windows\System32\oobe /R /D Y >nul
icacls C:\Windows\System32\oobe /grant administrators:F /T >nul
del C:\Windows\System32\oobe\*.exe /F /Q
del C:\Windows\System32\oobe\*.dll /F /Q
echo OOBE destroyed.
echo.
echo =====================================================
echo OOBE Finalized:
echo User: %NEWUSER%
echo Password: %NEWPASS%
echo System will reboot in 10 seconds
echo =====================================================
shutdown /r /f /t 10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment