sc query GarenaPlatform | find /I "RUNNING"
if %errorlevel% equ 0 sc stop GarenaPlatform
tasklist | find /I "Garena.exe"
if %errorlevel% equ 0 (
	taskkill /F /IM Garena.exe
	taskkill /F /IM gxx.exe
	taskkill /F /IM gxxsvc.exe
	timeout 2
)

mkdir "%~dp0ICafeCloud\ProgramData\Garena" 2>nul

rmdir "%ProgramData%\Garena" /S /Q
mklink /J "%ProgramData%\Garena" "%~dp0ICafeCloud\ProgramData\Garena"

rmdir "%~dp0ICafeCloud\ProgramData\Garena\gxx\update" /S /Q
rmdir "%~dp0ICafeCloud\ProgramData\Garena\gxx\log" /S /Q
rmdir "%~dp0ICafeCloud\ProgramData\Garena\gxx\user" /S /Q

Reg.exe add "HKLM\SOFTWARE\WOW6432Node\Garena\gxx" /f /v "path" /t REG_SZ /d "%~dp0Garena.exe"

set "GxxSvcPath="
for /f "delims=" %%i in ('dir /b /s /a-d "%~dp0gxxsvc.exe" 2^>nul') do set "GxxSvcPath=%%i"
if defined GxxSvcPath (
	for %%i in ("%GxxSvcPath%\..") do set "GxxVer=%%~nxi"
	Reg.exe add "HKLM\SOFTWARE\WOW6432Node\Garena\gxx" /f /v "ver" /t REG_SZ /d "%GxxVer%"
	2>nul sc delete "GarenaPlatform"
	sc create "GarenaPlatform" binPath= "\"%GxxSvcPath%\" run" start= auto type= own DisplayName= "Garena platform service"
	sc config "GarenaPlatform" group= "COM Infrastructure"
)
