Skip to content
This repository was archived by the owner on Jun 27, 2025. It is now read-only.

A comprehensive list on how to unlock a bunch of unintended Windows upgrade paths, bypassing artificial blocks.

Notifications You must be signed in to change notification settings

heathercat123/cursedwindowsupgrades

Repository files navigation

Migrated

This repository has been migrated to Codeberg and as such will be archived on Github.

Cursed Windows Upgrades

A comprehensive list on how to unlock a bunch of unintended Windows upgrade paths, bypassing artificial blocks.
While those update paths do work, DO NOT USE THEM IF YOU HAVE IMPORTANT DATA ON YOUR MACHINE!
Also, note that if your hardware cannot run the Windows version you are upgrading to, IT WILL NOT WORK.

With that said, we can now begin:

Windows XP x64 to Windows Vista x64

Credits: Heathercat123

Requirements

Upgrade process

  1. Open Application Verifier 4.0 (x64)
  2. Click on File, then Add Application
  3. Navigate to the sources folder from your Windows Vista disc, click on setup.exe, then hit Open
  4. Uncheck Basics, expand Compatibility, then check HighVersionLie
  5. Right click HighVersionLie, then hit Properties
  6. Set Major version to 5, Minor version to 1, Build number to 2600 and Service pack major to 3
  7. Press OK, then press Save
  8. From the sources folder on your Windows Vista disc, open setup.exe
  9. On the Get important updates for installation page, hit Do not get the latest updates for installation
  10. On the product key page, hit Next, then No
  11. On the license terms page, check I accept the license terms, then hit Next
  12. You will now see the option to upgrade. Click it.
  13. If you see the Compatibility Report page, hit Next

Windows will now upgrade flawlessly!

Windows NT 3.51 to XP

Credits: Windows 386 on BetaArchive

Requirements

Upgrade process

  1. Extract your Windows XP ISO or copy its content to a folder if it's a disc
  2. Extract WINNT351toXP and copy its content to the root of the extracted Windows XP installer
  3. Open nLite
  4. Hit next on the Welcome to nLite! page
  5. On the Locating the Windows installation page, click on Browse and select the extracted Windows XP installer and then hit next
  6. On the Presets page, hit next
  7. On the Task Selection page, click on Bootable ISO, then click next
  8. On the Bootable ISO page, click on Make ISO
  9. When it's done, hit next
  10. Now, hit finish
  11. Insert the ISO into your Windows NT 3.51 virtual machine, or burn it to a CD then insert it if it's a physical machine
  12. In Windows NT 3.51, navigate to D:\i386\ and launch WINNT35.exe
  13. Finally, you can upgrade!

Everything should now just work.

Windows ME to 2000

Credits: Skye

Requirements

  • A Windows 2000 disc or ISO
  • A machine running Windows ME, virtual or not

Upgrade process

  1. Put the disc or ISO into your Windows ME machine

It's a common misconception to think that Windows ME cannot be upgraded to Windows 2000, probably due to the fact that ME released after Windows 2000. However, this is an official and intended upgrade path. It's the only one in this list.

Windows XP to Windows Server 2003

Credits: Pinky, Skye

Requirements

Upgrade process

  1. Open Registry Editor (regedit)
  2. Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents and set OOBETimer to FF FF FF FF FF FF FF FF FF FF FF FF
  3. Right click the WPAevents key and click on Permissions...
  4. Click on SYSTEM and check both boxes under Deny
  5. Now, press on Apply and Yes. You can now close the Registry Editor.
  6. Open a Command Prompt (cmd)
  7. Execute cd %windir%\system32\oobe and then msoobe /a
  8. If an Activate Windows window pops up which says that this copy of Windows must be activated, you are good to go! If it does not, then go back to step 1
  9. Now that you've confirmed that Windows is NOT activated, you can close the window
  10. Set the theme to Windows Classic to avoid graphical glitches
  11. Open TweakNT
  12. Check Convert to:, select Server, and then select the SKU of Windows Server which is on your CD or ISO
  13. Hit Apply, Yes and then Ok
  14. In case of a SYSTEM_LICENSE_VIOLATION BSOD, you must reinstall Windows
  15. Your bootscreen should now say Microsoft Windows Server Family, but this is still Windows XP under the hood
  16. Copy the contents of your Windows Server 2003 disc to a folder on your hard drive
  17. Navigate to that folder, go to i386 and then rename WINNT32.exe to whatever your heart desires, as long as the file extensions stays .exe
  18. Launch Application Verifier, click on File, then Add Application
  19. Find your renamed WINNT32.exe and press Open
  20. Uncheck Basics, expand Compatibility, then check HighVersionLie
  21. Right click HighVersionLie and hit Properties
  22. Set Major version to 5, Minor version to 2 and Build number to 3718
  23. Press OK, then Save
  24. Open your renamed WINNT32.exe
  25. You can now upgrade! Do it!
  26. If you get any driver errors during the upgrade, just hit No

Your server is now ready to serve! Or almost. But it's running Server 2003 and that's what matters.

Windows Server 2003 to Windows XP

Credits: Pinky

Requirements

Upgrade process

If you are on a Corporate/VL version:

  1. Open Registry Editor (regedit)
  2. Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents and set OOBETimer to FF FF FF FF FF FF FF FF FF FF FF FF
  3. Right click the WPAevents key and click on Permissions...
  4. Click on SYSTEM and check both boxes under Deny
  5. Now, press on Apply and Yes. You can now close the Registry Editor.
  6. Open a Command Prompt (cmd)
  7. Execute cd %windir%\system32\oobe and then msoobe /a
  8. If an Activate Windows window pops up which says that this copy of Windows must be activated, you are good to go! If it does not, then go back to step 1
  9. Now that you've confirmed that Windows is NOT activated, you can close the window

If you are on a Retail copy or you are finished with the steps above:

  1. Launch the XP Conversion Pack
  2. On the Welcome page, hit Next >
  3. On the Donation page, hit Next >
  4. On the Working mode optimization page, select Workstation, then hit Next >
  5. On the Windows Server 2003/Windows XP conversion page, check I want to apply Windows Server 2003/Windows XP conversion, then hit Next >
  6. On the Server security configuration page, hit Next >
  7. On the Features configuration page, hit Next >
  8. On the Hidden Services configuration page, hit Next >
  9. On the XP Missing Features configuration page, hit Next >
  10. On the Setting up tasks page, hit Next >
  11. On the The optimization is ready to start page, hit Optimize
  12. When it asks you to restart, hit Restart and wait for the timer to go to 0
  13. Once you log in, wait for the new timer to go to 0
  14. After that restart, copy the contents of your Windows XP disc to a folder on your hard drive
  15. Navigate to that folder, go to i386 and then rename WINNT32.exe to whatever your heart desires, as long as the file extensions stays .exe
  16. Launch Application Verifier, click on File, then Add Application
  17. Find your renamed WINNT32.exe and press Open
  18. Uncheck Basics, expand Compatibility, then check HighVersionLie
  19. Right click HighVersionLie and hit Properties
  20. Set Major version to 5, Minor version to 1 and Build number to 2526
  21. Press OK, then Save
  22. Open your renamed WINNT32.exe
  23. You can now upgrade! Just do it!
  24. On the Who will use this computer? page of the OOBE, hit Skip if you want to keep your account.
  25. If you hear an error sound during the welcome screeen, press CTRL, ALT and DELETE simultaneously and press OK on every error box you see

Get ready to experience a pretty broken install of Windows XP after this! An unexperience, actually.

Longhorn to Windows XP

Credits: Pinky, Skye

Requirements

Upgrade process

  1. Copy the contents of your Windows XP disc to a folder on your hard drive
  2. Navigate to that folder, go to i386 and then rename WINNT32.exe to whatever your heart desires, as long as the file extensions stays .exe
  3. Launch Application Verifier, click on File, then Add Application
  4. Find your renamed WINNT32.exe, then press Open
  5. Uncheck Basics, expand Compatibility and check HighVersionLie
  6. Right click HighVersionLie, then hit Properties
  7. Set Major version to 5, Minor version to 1 and Build number to 2526
  8. Press OK and Save
  9. Open your renamed WINNT32.exe
  10. On the Welcome to Windows setup page, hit Next >
  11. On the License Agreement page, check I accept this agreement, then hit Next >
  12. On the Get Updated Setup Files page, check No, then hit Next >
  13. When it's about to restart, you may see a dialog warning you what other users are still using your computer. Just click Yes
  14. After the second restart, you will see many copy errors. Hit Cancel, then hit Yes on each and every one of them
  15. After that, the OOBE may lack music, but it will still function as usual
  16. When you arrive at the desktop, right click on it, press Properties, then set the theme to whatever you want, but please avoid the broken Consumer theme!
  17. You can delete the File a Longhorn Bug icon if you want to

You are now ready to experience the best, experience Windows XP!

Windows XP to Windows 7

Credits: Skye
Notice: The current method of upgrading breaks networking and audio and doesn't automatically transfer your programs and data

Requirements

  • A Windows 7 disc or ISO
  • A Windows Vista disc or ISO
  • A machine running Windows XP

Upgrade process

  1. Create a folder on your hard disc, then create another folder in it called sources
  2. Navigate to the sources folder from your Windows 7 disc
  3. Copy install.wim and every install_Windows 7 [edition].cfg file to the sources folder which you created earlier
  4. Copy everything from your Windows Vista disc to your folder, except the sources subfolder
  5. Copy everything except install.wim and every install_Windows Vista [edition].cfg from your disc's sources folder to the one which you created earlier
  6. Run setup.exe from the root of your folder
  7. Hit Install now
  8. On the Get important updates for installation page, hit Do not get the latest updates for installation
  9. On the product key page, hit Next, then No
  10. If you are on Windows XP Professional, select Windows 7 ULTIMATE or Windows 7 PROFESSIONAL. If you are on Windows XP Starter Edition, select Windows 7 STARTER. Else, select Windows 7 HOMEBASIC or Windows 7 HOMEPREMIUM
  11. Check I have selected the version of Windows that I purchased and hit Next
  12. On the license terms page, check I accept the license terms, then hit Next
  13. You will now see the option to upgrade. Click it.
  14. If you see the Compatibility Report page, hit Next
  15. After the second restart, you will see Windows could not start the installation process.
  16. Press Shift and F10 simultaneously, type regedit, then press Enter
  17. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\setup
  18. Double click on CmdLine, set it to cmd.exe, then hit OK
  19. Double click on OOBEInProgress, set it to 0, then hit OK
  20. Double click on SetupPhase, set it to 0, then hit OK
  21. Double click on SetupType, set it to 0, then hit OK
  22. Double click on SystemSetupInProgress, set it to 0, then hit OK
  23. Double click on Upgrade, set it to 0, then hit OK
  24. Close Registry Editor
  25. In cmd, execute shutdown -r -t 0
  26. After you arrive at the desktop, you'll have to manually reinstall drivers
  27. Every file you had on Windows XP is located inside C:\$WINDOWS.~Q\DATA
  28. Moving every folder from C:\$WINDOWS.~Q\DATA to C:\ to bring your programs back

No OK button was harmed during the upgrade.

Windows Vista to Windows 8

Credits: Skye
Notice: The current method of upgrading doesn't automatically transfer your programs

Requirements

  • Application Verifier x86 or x64, depending on your Windows install's architecture
  • A Windows 8 disc or ISO. Windows 8.1 or above will not work.
  • A machine running Windows Vista

Upgrade process

  1. Open Application Verifier. Make sure to use the x64 version if you are on an x64 Windows install!
  2. Click on File, press Add Application
  3. Navigate to the sources folder from your Windows 8 disc, click on installprep.exe, then hit Open
  4. Uncheck Basics, expand Compatibility and check HighVersionLie
  5. Right click HighVersionLie, then hit Properties
  6. Set Major version to 6, Minor version to 1, Build number to 7601, Service pack major to 1 and Service pack minor to 1
  7. Press OK and Save
  8. From the sources folder on your Windows 8 disc, open installprep.exe
  9. When the installer launches, select No, thanks on the Get important updates page
  10. On the Product key page, make sure you enter a Windows 8 Pro key if you are running Windows Vista Business, Enterprise, or Ultimate
  11. The rest of setup will go as usual
  12. In the OOBE, on the Sign in to your PC page, hit Skip

You've just upgraded from a hated Windows version to another hated Windows version!

Windows 7 to Windows 11

Credits: NTDev, Skye

Requirements

  • GImageX
  • A Windows 11 disc or ISO
  • A Windows 10 1507 or 1511 (RTM or November Update) x64 disc or ISO
  • A machine running Windows 7 x64

Upgrade process

  1. Create a folder on your hard disc, then create another folder in it called sources
  2. Copy the contents except the sources folder of your Windows 10 disc to this new folder
  3. Copy everything except install.wim from your disc's sources folder to to the one you created earlier
  4. From your Windows 11 disc, copy install.wim to your hard drive. Do not copy it to your sources folder!
  5. Create another folder on your hard drive in which the WIM will be extracted to later
  6. Open GImageX
  7. Go to the Info tab, click on Browse..., select your install.wim then click on Get Info. Note the number next to the SKU which you want to install.
  8. Go to the Mount tab
  9. Next to Mount Point, press Browse... then select your empty folder
  10. Next to Source click on Browse... and select your install.wim
  11. Set Image to the number you noted from the Info tab
  12. Check Read and Write, then hit Mount
  13. Go to your folder and navigate to Windows\servicing\Editions
  14. Open UpgradeMatrix.xml in Notepad
  15. Scroll to the SKU you want and paste these lines:
		<SourceEdition ID="HomeBasic" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="true" cleanInstall="true"/>
		<SourceEdition ID="HomeBasicN" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="false" cleanInstall="true"/>
		<SourceEdition ID="HomePremium" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="true" cleanInstall="true"/>
		<SourceEdition ID="HomePremiumN" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="false" cleanInstall="true"/>
		<SourceEdition ID="Professional" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="true" cleanInstall="true"/>
		<SourceEdition ID="ProfessionalN" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="false" cleanInstall="true"/>
		<SourceEdition ID="Starter" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="true" cleanInstall="true"/>
		<SourceEdition ID="StarterN" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="false" cleanInstall="true"/>
		<SourceEdition ID="Ultimate" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="true" cleanInstall="true"/>
		<SourceEdition ID="UltimateN" processorArchitecture="amd64" versionRange="win7" dataOnly="true" dataSetting="false" fullUpgrade="false" cleanInstall="true"/>
  1. Hit File, Save As...
  2. Navigate to somewhere else, press Text Documents (*.txt), change it to All Files, add .xml at the end of the file name and click Save
  3. Right click the original UpgradeMatrix.xml, click on Properties, Security, then Advanced
  4. Go to the Owner tab, hit Edit and Other users or groups...
  5. Type your username, then press OK
  6. Click OK on every dialog until you're back at the properties dialog
  7. Hit Edit
  8. Press Administrators, check Full control, then press OK and press OK again
  9. Replace UpdateMatrix.xml with your version by copying it to the Editions folder
  10. Go back to GImageX, click the item in the Unmount box, check Commit Changes, then hit Unmount
  11. Close GImageX and move your install.wim to the sources folder on your hard drive
  12. Launch SetupPrep.exe
  13. When the installer launches, select No, thanks on the Get important updates page
  14. The rest of setup will go as usual
  15. In the OOBE, you may want to disable Advertising ID

The Go back option in the settings does not work and your drivers don't transfer, but the rest works flawlessly

Windows 8 or 8.1 to Windows 11

Credits: Skye

Requirements

  • A Windows 11 disc or ISO
  • A Windows 10 1507 or 1511 (RTM or November Update) x64 disc or ISO
  • A machine running Windows 8/8.1 x64

Upgrade process

  1. Just upgrade as if you were going from 10 to 11
  2. In the OOBE, the privacy settings may be turned on. You can turn them off.

The Go back option in the settings does not work, your drivers don't transfer and the Windows 8 UWP apps may not work, but the rest works flawlessly

Windows 11 to Windows 10

Credits: LagLife

Requirements

  • IDA Free (not included in this repository due to it not being abandonware)
  • System Informer (not included in this repository due to not being abandonware)
  • A Windows 10 2004 or higher x64 disc or ISO
  • A machine running Windows 11

Upgrade/Downgrade process

  1. Create a folder on your hard drive, then copy everything from the Windows 10 disc to it
  2. Open IDA as an Administrator and, from your new folder, open sources\setupcompat.dll
  3. Allow IDA to search for symbols
  4. Hit ALT and T simultaneously and search for the function ConX::Setup::Common:CWindowsVersion::IsLaterThan, then select Find all occurances
  5. Click on the one with no Instruction, scroll all the way to the bottom and pick the label with mov eax, 1
  6. Click on Edit, Patch Program, then Change byte
  7. Change B8 01 to B8 00 and hit OK
  8. Save
  9. Go to Edit, Patch program and click Apply patches to input file..., then click OK
  10. Launch setup.exe from your folder you created earlier
  11. On the Get important updates page, select No, thanks
  12. Let it downgrade!
  13. After the first time setup, you will receive a black screen. Hit CTRL, ALT and DELETE simultaneously and select Task Manager
  14. Press ALT and TAB simultaneously, then individually hit ALT, O and A. You should now see the Task Manager
  15. Go to Details, find explorer.exe, press it and hit End task
  16. Go to File -> Run new task, type explorer.exe and press OK
  17. Navigate to C:\ProgramData\Microsoft\Windows
  18. Right click on AppxRepository, click on Properties, Security, then Advanced
  19. Next to Owner, hit Change, type your username, press OK, check Replace owner on subcontainers and objects and hit Ok
  20. Click on Advanced again, press Change permissions, Add, then Select a principal
  21. Type your username, then press OK
  22. Check Full control, press OK, press it again, and one last time
  23. Open System Informer
  24. In the Services tab, search for AppXSvc, right click on it, then hit Stop
  25. Search for StateRepository and stop it too
  26. Close System Informer
  27. Right click on the Start button and click on Windows Powershell (Admin)
  28. Execute these commands:
del "C:\ProgramData\Microsoft\Windows\AppRepository\StateRepository*"
add-appxpackage -register "C:\Windows\SystemApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Windows\ImmersiveControlPanel\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode

Running the last command thrice is necessary.

  1. Restart your computer
  2. If you see a black screen: end explorer.exe in Task Manager like we did earlier
  3. Right click the taskbar and open its settings, then find Turn system icons on or off.
  4. Turn Clock, Volume, Network, Action Center and Power if it's available
  5. If you are on 21H2 or previous, disable Windows Update

Enjoy your superior Windows version!

Windows 10 20H2+ to Windows 10 2004

Credits: LagLife
Note: The process to downgrade Windows 10 1909 to 1903 may be similar. However, it is untested.

Requirements

  • IDA Free (not included in this repository due to it not being abandonware)
  • A Windows 10 2004 disc or ISO
  • A machine running Windows 10 20H2 or higher

Downgrade process

  1. Create a folder on your hard drive, then copy everything from the 2004 disc to it
  2. Open IDA as an Administrator and, from your new folder, open sources\setupcompat.dll
  3. Allow IDA to search for symbols
  4. Hit ALT and T simultaneously and search for the function ConX::Setup::Common:CWindowsVersion::IsLaterThan, then select Find all occurances
  5. Click on the one with no Instruction, scroll all the way to the bottom, and pick the label with mov eax, 1
  6. Click on Edit, Patch Program, then Change byte
  7. Change B8 01 to B8 00 and hit OK
  8. Save
  9. Go to Edit, Patch program and click Apply patches to input file..., then click OK
  10. Launch setup.exe from your folder you created earlier
  11. On the Get important updates page, select No, thanks
  12. Let it downgrade!
  13. After you've arrived at the desktop, disable Windows Update

The downgrade should now just work!

Windows 10 2004+ to Windows 10 1903 or 1909

Credits: LagLife
Notice: THIS WILL DELETE ALL OF YOUR UWP APPS

Requirements

  • IDA Free (not included in this repository due to it not being abandonware)
  • A program capable of extracting WIM files (not included in this repository either due to not being abandonware)
  • A Windows 10 1903 or 1909 disc/ISO
  • A machine running Windows 10 20H2 or higher

Downgrade process

  1. Create a folder on your hard drive, then copy everything from the 1903/1909 disc to it
  2. Open IDA as an Administrator and, from your new folder, open sources\setupcompat.dll
  3. Allow IDA to search for symbols
  4. Hit ALT and T simultaneously, search for the function ConX::Setup::Common:CWindowsVersion::IsLaterThan, then select Find all occurances
  5. Click on the one with no Instruction, scroll all the way to the bottom, and pick the label with mov eax, 1
  6. Click on Edit, Patch Program, then Change byte
  7. Change B8 01 to B8 00 and hit OK
  8. Save
  9. Go to Edit, Patch program and click Apply patches to input file..., then click OK
  10. Launch setup.exe from your folder you created earlier
  11. Wait until you get to the desktop
  12. Navigate to C:\ProgramData\Microsoft\Windows
  13. Right click on AppxRepository, click on Properties, Security, then Advanced
  14. Next to Owner, hit Change, type your username, press OK, check Replace owner on subcontainers and objects, and hit Ok
  15. Click on Advanced again, press Change permissions, Add, then Select a principal
  16. Type your username and press OK
  17. Check Full control, press OK, press it again, and one last time
  18. Open System Informer
  19. In the Services tab, search for AppXSvc, right click on it, then hit Stop
  20. Search for StateRepository and stop it too
  21. Close System Informer
  22. Right click on the Start button and click on Windows Powershell (Admin)
  23. Execute rd /s /q "C:\Program Files\WindowsApps". This will delete all of your UWP apps
  24. Launch a new File Explorer windows, navigate the sources folder in your Windows 10 1903/1909 disc and open install.esd in 7-Zip, then navigate to \1\Program Files
  25. Copy WindowsApps from 7-Zip to your desktop
  26. If you see a This destination has files with the same names box, click on Replace the files in the destination
  27. Move the folder to C:\Program Files
  28. Go back to Powershell and execute these commands:
del "C:\ProgramData\Microsoft\Windows\AppRepository\StateRepository*"
add-appxpackage -register "C:\Windows\SystemApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Windows\ImmersiveControlPanel\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode

Running the last command thrice is necessary.

  1. Restart your computer
  2. Disable Windows Update

Your Windows downgrade is now ready for use!

Windows 10 1903 or 1909 to Windows 10 1809

Credits: LagLife
Note: This may also work with Windows 10 2004+ as a base, including Windows 11. However, it is untested.
Notice: THIS WILL DELETE ALL OF YOUR UWP APPS

Requirements

  • IDA Free (not included in this repository due to it not being abandonware)
  • A program capable of extracting WIM files (not included in this repository either due to not being abandonware)
  • A Windows 10 1809 disc/ISO
  • A machine running Windows 10 1903 or 1909

Downgrade process

  1. Sign out of your Microsoft account if you are signed into any
  2. Create a folder on your hard drive, then copy everything from the 1809 or 1803 disc to it
  3. Open IDA as an Administrator and, from your new folder, open sources\setupcompat.dll
  4. Allow IDA to search for symbols
  5. Hit ALT and T simultaneously and search for the function ConX::Setup::Common:CWindowsVersion::IsLaterThan, then select Find all occurances
  6. Click on the one with no Instruction, scroll all the way to the bottom, and pick the label with mov eax, 1
  7. Click on Edit, Patch Program, then Change byte
  8. Change B8 01 to B8 00 and hit OK
  9. Save
  10. Go to Edit, Patch program, click Apply patches to input file... and click OK
  11. Disable your internet connection
  12. Launch setup.exe from your folder you created earlier
  13. Let it install until the first restart
  14. Boot into the Windows 10 installer from a disc or an USB key. If you were copying ISOs between machines before, you'll need to actually burn it to a DVD or flash it to a USB key to boot from it.
  15. When it loads, press Shift and F10 simultaneously, type regedit, then press Enter
  16. Click on HKEY_LOCAL_MACHINE, go to File -> Load Hive... and select C:\WINDOWS\System32\config\SAM
  17. When it asks for a key name, you can use whatever you want. I recommand using sam2
  18. Expand this new key and go to the SAM subkey inside of it
  19. Double click on C and replace the 09 at the beginning by 08
  20. Click on sam2, then go to File -> Unload hive...
  21. Close the Registry Editor
  22. In cmd, execute wpeutil reboot
  23. Wait until Windows gets to the desktop
  24. Navigate to C:\ProgramData\Microsoft\Windows
  25. Right click on AppxRepository, click on Properties, Security, then Advanced
  26. Next to Owner, hit Change, type your username, press OK, check Replace owner on subcontainers and objects and click Ok
  27. Click on Advanced again, press Change permissions, Add, then Select a principal
  28. Type your username, and press OK
  29. Check Full control, press OK, press it again, and one last time
  30. Open System Informer
  31. In the Services tab, search for AppXSvc, right click on it, then hit Stop
  32. Search for StateRepository and stop it too
  33. Close System Informer
  34. Right click on the Start button and click on Windows Powershell (Admin)
  35. Execute rd /s /q "C:\Program Files\WindowsApps". This will delete all of your UWP apps
  36. Launch a new File Explorer windows, navigate the sources folder in your Windows 10 1809 disc and open install.esd in 7-Zip, then navigate to \1\Program Files
  37. Copy WindowsApps from 7-Zip to your desktop
  38. If you see a This destination has files with the same names box, click on Replace the files in the destination
  39. Move the folder to C:\Program Files
  40. Go back to Powershell and execute these commands:
del "C:\ProgramData\Microsoft\Windows\AppRepository\StateRepository*"
rd /s /q "C:\ProgramData\Microsoft\Windows\AppRepository\Packages"
add-appxpackage -register "C:\Windows\SystemApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Windows\ImmersiveControlPanel\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode

If you get an error about ActivationStore.dat or ActivationStore.dat.LOG1, just ignore it. Running the last command thrice is necessary.

  1. Restart your computer
  2. Disable Windows Update
  3. If you see applications which have weird name in the Start menu or it doesn't work, right click them, go to More -> App settings, then hit Reset

Everything should work, except what requires a newer version of Windows 10, of course!

Windows 10 1809 to Windows 10 1803, 1709, 1703 or 1607

Credits: LagLife, Charles
Note: Only 1607 was tested, but 1703-1803 should be similar enough
Notice: THIS WILL DELETE ALL OF YOUR UWP APPS AND RESET YOUR LEGACY EDGE's USER DATA

Requirements

  • IDA Free (not included in this repository due to it not being abandonware)
  • A Windows 10 1607, 1703, 1709, 1803 disc/ISO. We'll call it the old Windows 10 disc
  • A machine running Windows 10 1809

Downgrade process

  1. If you had anything stored on OneDrive which you will want to access after the downgrade, download it as OneDrive will break
  2. Create a folder on your hard drive, then copy everything from the old Windows 10 disc to it
  3. Open IDA as an Administrator and, from your new folder, open sources\setupcompat.dll
  4. Allow IDA to search for symbols
  5. Hit ALT and T simultaneously and search for the function ConX::Setup::Common:CWindowsVersion::IsLaterThan, then select Find all occurances
  6. Click on the one with no Instruction, scroll to the box right above the bottom one and pick the label with mov eax, 1
  7. Click on Edit, Patch Program, then Change byte
  8. Change B8 01 to B8 00 and hit OK
  9. Go to Edit, Patch program, click Apply patches to input file... and OK
  10. Disable your internet connection
  11. Launch setup.exe from your folder you created earlier
  12. Let it install
  13. When you arrive at the desktop, you may see a few errors. Just disregard those.
  14. Open a Registry Editor (regedit)
  15. Navigate to HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion and delete as much as you can inside of the Notifications and PushNotifications subkeys
  16. Open System Informer
  17. In the Services tab, search for AppXSvc, right click on it, then hit Stop
  18. Search for StateRepository and stop it too
  19. Close System Informer
  20. Right click on the Start button and click on Command Prompt (Admin)
  21. Execute rd /s /q "C:\Program Files\WindowsApps". This will delete all of your UWP apps
  22. Launch a new File Explorer windows, navigate the sources folder in your old Windows 10 disc and open install.esd in 7-Zip, then navigate to \1\Program Files
  23. Copy WindowsApps from 7-Zip to your desktop
  24. If you see a This destination has files with the same names box, click on Replace the files in the destination
  25. Move the folder to C:\Program Files
  26. Click on the address bar and type %localappdata%\Packages and delete the folder whose name starts with Microsoft.MicrosoftEdge
  27. Navigate to C:\Program Files\WindowsPowershell\Modules\PSReadLine and delete the 2.0.0 subfolder
  28. Go back to the Command Prompt and execute powershell
  29. Now that you are in Powershell, execute these commands:
del "C:\ProgramData\Microsoft\Windows\AppRepository\StateRepository*"
add-appxpackage -register "C:\Windows\SystemApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Windows\ImmersiveControlPanel\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode
add-appxpackage -register "C:\Program Files\WindowsApps\*\AppxManifest.xml" -disabledevelopmentmode

Running the last command thrice is necessary.

  1. Restart Windows
  2. You may get a Recovery BSOD
  3. Boot into the Windows installer from a DVD/USB
  4. Press SHIFT and F10 simultaneously
  5. Execute regedit
  6. Click on HKEY_LOCAL_MACHINE, go to File -> Load Hive... and select C:\WINDOWS\System32\config\SYSTEM
  7. When it asks for a key name, you can use whatever you want. I recommand using sys
  8. Expand this new key and go into \ControlSet001\Services inside of it
  9. Delete these keys: WdBoot, WdFilter and WdNisDrv
  10. Click on sys, then go to File -> Unload hive...
  11. Close the Registry Editor
  12. In cmd, execute wpeutil reboot
  13. Wait until Windows gets to the desktop
  14. If you want to stop getting errors whenever you get to the desktop, you may disable OneDrive in the Task Manager's Startup tab

Your Windows 10 install should be good to go!

About

A comprehensive list on how to unlock a bunch of unintended Windows upgrade paths, bypassing artificial blocks.

Resources

Stars

Watchers

Forks