:: Get ToolCD Type
set PType=OLD
Find /i "GPT" C:\Windows\AsToolCDVer.txt
if %errorlevel%==0 set PType=GPT
Find /i "MBR" C:\Windows\AsToolCDVer.txt
if %errorlevel%==0 set PType=MBR

ren C:\ProgramData\SetWallpaper_.cmd SetWallpaper.cmd 
copy /y C:\Windows\ASUS\Wallpapers\*.png C:\Windows\ASUS\Wallpapers\*.jpg
del /f C:\Windows\ASUS\Wallpapers\*.png

:: copy store movie
rem copy /y C:\Windows\Temp\StoreMovie\*.* C:\Users\Public\Videos
rem rd /s /q C:\Windows\Temp\StoreMovie

:: Hide BIOS file on system drive root
attrib C:\*.BIN +r +h 

:: Execute extra installnation stage in the end of process
if exist c:\preload64\patch\AsInsStage64.cmd start /w c:\preload64\patch\AsInsStage64.cmd
if exist c:\preload64\patch\AsDCDInst.cmd call c:\preload64\patch\AsDCDInst.cmd
if exist c:\preload64\patch\AsHDIInst.cmd call c:\preload64\patch\AsHDIInst.cmd

:: OOBE Local1 patch for ISRT SKU
echo C:\Windows\Temp\CreateISRT.exe >> C:\Windows\Temp\LOCAL1.CMD

:: delete power skin registry key
call c:\preload64\patch\DelPowerSkin.exe

:: Output device detail information
c:\preload64\patch\devcon.exe status * > c:\devlist.txt
echo Finish >> c:\Finish.log
rd /s /q C:\WIMAPPLY

:: Ready sysprep.exe
c:\preload64\patch\AsusService.exe -r
taskkill /F /IM sysprep.exe /T
start /w net start TrustedInstaller
timeout /t 10
start /w net start TrustedInstaller

reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v AuditSHD /f
start /w c:\preload64\patch\AsSmartPin.exe 

:: Run fastboot
if exist c:\preload64\patch\FastBoot.cmd start /w c:\preload64\patch\FastBoot.cmd preload64

if exist c:\preload64\patch\OAReport.cmd call c:\preload64\patch\OAReport.cmd
if exist c:\preload64\patch\machineinfo.cmd call c:\preload64\patch\machineinfo.cmd
if exist c:\preload\patch\machineinfo-output.txt copy /y c:\preload\patch\machineinfo-output.txt c:\Windows\Log\machineinfo-output.txt

if not exist c:\fac.txt goto Other
del /f c:\fac.txt
if not exist c:\preload64\fac\active1.txt goto Other

if not exist c:\Windows\AsHDIVer.txt (goto ActiveToHidden)
if not exist c:\Windows\Log\Facf9.log (goto UserReboot) else (goto ActiveToHidden)

:UserReboot
if %PType%==GPT (
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\CLOSEPE.TXT
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\CLOSEPE.TXT
)
if %PType%==MBR (
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\CLOSEPE1.TXT
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\CLOSEPE1.TXT
)

start /w c:\windows\system32\sysprep\sysprep.exe -oobe -quiet -reboot
exit

:ActiveToHidden
if %PType%==OLD (
start /w c:\preload64\patch\AsActive.exe /actrec
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\active1.txt
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\active1.txt
)

if %PType%==GPT (
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\ASSPE.TXT
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\ASSPE.TXT
if exist c:\preload64\patch\CBR.xml md P:\FACLog
if exist c:\preload64\patch\CBR.xml copy /y c:\preload64\patch\CBR.xml P:\FACLog\
if exist c:\preload64\patch\machineinfo-output.txt md P:\FACLog
if exist c:\preload64\patch\machineinfo-output.txt copy /y c:\preload64\patch\machineinfo-output.txt P:\FACLog\
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\BOOTOPE.CMD
if ERRORLEVEL 1 goto ErrorHandler
start /w c:\preload64\fac\BOOTOPE.CMD
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\CLOSEPE.TXT
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\CLOSEPE.TXT
)

if %PType%==MBR (
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\ASSPE1.TXT
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\ASSPE1.TXT
if exist c:\preload64\patch\CBR.xml md P:\FACLog
if exist c:\preload64\patch\CBR.xml copy /y c:\preload64\patch\CBR.xml P:\FACLog\
if exist c:\preload64\patch\machineinfo-output.txt md P:\FACLog
if exist c:\preload64\patch\machineinfo-output.txt copy /y c:\preload64\patch\machineinfo-output.txt P:\FACLog\
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\BOOTOPE1.CMD
if ERRORLEVEL 1 goto ErrorHandler
start /w c:\preload64\fac\BOOTOPE1.CMD
start /w c:\preload64\patch\AsChange.exe c:\preload64\fac\CLOSEPE1.TXT
if ERRORLEVEL 1 goto ErrorHandler
diskpart /s c:\preload64\fac\CLOSEPE1.TXT
)

start /w c:\windows\system32\sysprep\sysprep.exe -oobe -quiet -reboot
exit


:Other
start /w c:\windows\system32\sysprep\sysprep.exe -oobe -quiet -shutdown
exit

:ErrorHandler
echo !!! AsActive (or AsChange) ERROR !!!
echo !!! AsActive (or AsChange) ERROR !!!
echo !!! AsActive (or AsChange) ERROR !!!
pause
echo !!! Process terminated !!!
echo !!! Process terminated !!!
echo !!! Process terminated !!!
pause
exit

