@echo off
setlocal

:: Verifica se está executando como administrador
net session >nul 2>&1
if %errorlevel% neq 0 (
    powershell -Command "Start-Process '%~f0' -Verb RunAs"
    exit /b
)

echo.
echo ========================================
echo       Configurando SMB e Windows
echo ========================================
echo.

:: SMB - Permitir assinatura SMB desativada
echo [1/3] Configurando RequireSecuritySignature...
powershell -Command "Set-SmbClientConfiguration -RequireSecuritySignature $false -Confirm:$false"

:: SMB - Permitir logon de convidado inseguro
echo [2/3] Configurando EnableInsecureGuestLogons...
powershell -Command "Set-SmbClientConfiguration -EnableInsecureGuestLogons $true -Confirm:$false"

:: Verifica DisableDomainCreds
echo [3/3] Verificando DisableDomainCreds...

for /f "tokens=3" %%A in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v DisableDomainCreds 2^>nul') do set "DisableDomainCreds=%%A"

if /i "%DisableDomainCreds%"=="0x1" (
    echo DisableDomainCreds esta em 0x1. Alterando para 0...
    reg add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v DisableDomainCreds /t REG_DWORD /d 0 /f
) else (
    echo DisableDomainCreds ja esta em 0 ou a chave nao esta configurada.
)

echo.
echo ========================================
echo       Configuracao concluida
echo ========================================
echo.
pause
