Function at 0x14001a9f9
Capabilities:
Query environment variable

Disassembly:
push rbp
sub rsp, 0x2b0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x240], rcx
mov qword [rbp + 0x248], rdx
mov dword [rbp + 0x250], r8d
mov qword [rbp + 0x228], 0
mov eax, dword [rbp + 0x250]
cdqe
mov rcx, rax
call fcn.1400c8290
call fcn.1400c7d90
mov rax, qword [rbp + 0x240]
mov rdx, rax
lea rcx, [rbp + 0x240]
call fcn.1400c8150
mov dword [rbp + 0x224], 0
mov qword [rbp + 0x1f0], 0
mov qword [rbp - 0x48], 0
mov qword [rbp + 0x218], 0
mov qword [rbp - 0x50], 0
mov qword [rbp + 0x1e8], 0
mov qword [rbp + 0x1e0], 0
mov qword [rbp - 0x58], 0
mov qword [rbp + 0x210], 0
mov qword [rbp + 0x1d8], 0
call fcn.1400c7e00
call fcn.1400c7e00
call fcn.1400c7e60
mov edx, eax
mov ecx, 0x1f4
call fcn.1400c52f0
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x50]
mov rcx, rax
call fcn.1400c8040
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x1d0], rax
lea rax, [0x1418f7220]
mov rdx, qword [rbp + 0x1d0]
mov r8d, 0x1f4
mov rcx, rax
call sub.KERNEL32.dll_GetEnvironmentVariableW
mov qword [rbp + 0x1c8], rax
cmp qword [rbp + 0x248], 0
jle 0x14001ab9c
call fcn.1400c7e00
call fcn.1400c7e00
mov rax, qword [rbp - 0x50]
mov rcx, rax
call fcn.1400c8220
lea rax, [0x1418f2750]
mov rcx, rax
call fcn.1400c8220
call fcn.1400c8420
call fcn.1400c7fb0
mov qword [rbp + 0x1c0], rax
mov rax, qword [rbp + 0x240]
mov rdx, qword [rbp + 0x1c0]
mov r9d, 0x2e
mov r8, rdx
mov rdx, rax
lea rax, [0x1418fd410]
mov rcx, rax
call fcn.140094264
mov qword [rbp + 0x1b8], rax
call fcn.1400c7ed0
mov rax, qword [rbp + 0x1b8]
mov qword [rbp + 0x210], rax
jmp 0x14001ac4a
nop
call fcn.1400c7e00
call fcn.1400c7e00
mov rax, qword [rbp - 0x50]
mov rcx, rax
call fcn.1400c8220
lea rax, [0x1418f2750]
mov rcx, rax
call fcn.1400c8220
call fcn.1400c8420
call fcn.1400c7e00
mov rax, qword [rbp + 0x240]
mov rcx, rax
call fcn.1400c8220
lea rax, [0x1418ef070]
mov rcx, rax
call fcn.1400c8220
call fcn.1400c8420
call fcn.1400c7fb0
mov qword [rbp + 0x1b0], rax
call fcn.1400c7fb0
mov qword [rbp + 0x1a8], rax
mov rdx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x1b0]
mov r9d, 0x2e
mov r8, rdx
mov rdx, rax
lea rax, [0x1418fd410]
mov rcx, rax
call fcn.140094264
mov qword [rbp + 0x1a0], rax
call fcn.1400c7ed0
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x210], rax
lea rax, [rbp - 0x48]
lea rdx, [0x14190c738]
mov rcx, rax
call fcn.1400c82e0
cmp qword [rbp + 0x210], 0
je 0x14001b34a
mov ecx, 0x9c40
call fcn.1400c6230
mov qword [rbp + 0x198], rax
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x1d8], rax
mov rax, qword [rbp + 0x210]
mov rcx, rax
call fcn.1400947e4
mov qword [rbp + 0x190], rax
cmp qword [rbp + 0x190], 0
je 0x14001b2e2
mov rax, qword [rbp + 0x210]
mov rcx, rax
call fcn.14009484c
mov qword [rbp + 0x188], rax
mov rax, qword [rbp + 0x188]
mov qword [rbp + 0x1e8], rax
cmp qword [rbp + 0x1e8], 0
je 0x14001b278
mov rax, qword [rbp + 0x1d8]
mov qword [rbp + 0x180], rax
mov rcx, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x180]
mov rax, qword [rbp + 0x210]
mov r8, rcx
mov rcx, rax
call fcn.140094928
mov qword [rbp + 0x178], rax
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x1e8], rax
cmp qword [rbp + 0x1e8], 0
je 0x14001b27b
call fcn.1400c7e00
call fcn.1400c7e00
mov rax, qword [rbp + 0x1d8]
mov qword [rbp + 0x170], rax
call fcn.1400c7e60
mov ecx, eax
mov rdx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x170]
mov r9d, ecx
mov r8d, SafeArrayPutElement
mov rcx, rax
call fcn.1400c64c0
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x58]
mov rcx, rax
call fcn.1400c8040
mov rax, qword [rbp - 0x58]
mov rcx, rax
call fcn.1400c4e40
mov qword [rbp + 0x168], rax
mov rax, qword [rbp + 0x168]
add rax, 4
mov qword [rbp + 0x160], rax
mov rax, qword [rbp + 0x160]
mov rcx, rax
call fcn.1400c6230
mov qword [rbp + 0x158], rax
mov rax, qword [rbp + 0x158]
mov qword [rbp + 0x1f0], rax
mov rax, qword [rbp - 0x58]
mov rcx, rax
call fcn.1400c4e40
mov qword [rbp + 0x150], rax
mov rax, qword [rbp + 0x150]
add rax, 4
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x148]
mov rcx, rax
call fcn.1400c6230
mov qword [rbp + 0x140], rax
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x1e0], rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x138], rax
mov rdx, qword [rbp - 0x58]
mov rax, qword [rbp + 0x138]
mov r9d, SafeArrayPutElement
mov r8, 0xffffffffffffffff
mov rcx, rax
call fcn.1400c62a0
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x1e0]
mov qword [rbp + 0x120], rax
mov rdx, qword [rbp + 0x120]
mov rax, qword [rbp + 0x128]
mov rcx, rax
call sub.USER32.dll_OemToCharW
mov qword [rbp + 0x118], rax
mov qword [rbp + 0x218], 0
mov rax, qword [rbp - 0x58]
mov rcx, rax
call fcn.1400c4e40
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x110]
add rax, 4
cmp qword [rbp + 0x218], rax
jg 0x14001b1c5
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
mov qword [rbp + 0x108], rax
mov rax, qword [rbp + 0x108]
mov rcx, rax
call fcn.1400c6430
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x208], 0
cmp qword [rbp + 0x100], 0x6a
jne 0x14001af45
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
add rax, 1
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0xf8]
mov rcx, rax
call fcn.1400c6430
mov qword [rbp + 0xf0], rax
cmp qword [rbp + 0xf0], 0x26
jne 0x14001af48
nop
mov qword [rbp + 0x208], 1
jmp 0x14001af49
nop
jmp 0x14001af49
nop
cmp qword [rbp + 0x208], 0
je 0x14001afbf
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0xe8]
mov edx, reloc.WS2_32.dll_listen
mov rcx, rax
call fcn.1400c6440
mov qword [rbp + 0xe0], rax
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
add rax, 1
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
mov edx, 0
mov rcx, rax
call fcn.1400c6440
mov qword [rbp + 0xd0], rax
jmp 0x14001afc0
nop
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
mov qword [rbp + 0xc8], rax
mov rax, qword [rbp + 0xc8]
mov rcx, rax
call fcn.1400c6430
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0x200], 0
cmp qword [rbp + 0xc0], 0xd9
jne 0x14001b050
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
add rax, 1
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0xb8]
mov rcx, rax
call fcn.1400c6430
mov qword [rbp + 0xb0], rax
cmp qword [rbp + 0xb0], 0x25
jne 0x14001b053
nop
mov qword [rbp + 0x200], 1
jmp 0x14001b054
nop
jmp 0x14001b054
nop
cmp qword [rbp + 0x200], 0
je 0x14001b0ca
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
mov qword [rbp + 0xa8], rax
mov rax, qword [rbp + 0xa8]
mov edx, 0xa
mov rcx, rax
call fcn.1400c6440
mov qword [rbp + 0xa0], rax
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
add rax, 1
mov qword [rbp + 0x98], rax
mov rax, qword [rbp + 0x98]
mov edx, 0
mov rcx, rax
call fcn.1400c6440
mov qword [rbp + 0x90], rax
jmp 0x14001b0cb
nop
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
mov qword [rbp + 0x88], rax
mov rax, qword [rbp + 0x88]
mov rcx, rax
call fcn.1400c6430
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x1f8], 0
cmp qword [rbp + 0x80], 0xcb
jne 0x14001b14f
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
add rax, 1
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x78]
mov rcx, rax
call fcn.1400c6430
mov qword [rbp + 0x70], rax
cmp qword [rbp + 0x70], 0x25
jne 0x14001b152
nop
mov qword [rbp + 0x1f8], 1
jmp 0x14001b153
nop
jmp 0x14001b153
nop
cmp qword [rbp + 0x1f8], 0
je 0x14001b1b7
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x68]
mov edx, 9
mov rcx, rax
call fcn.1400c6440
mov qword [rbp + 0x60], rax
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x218]
add rax, rdx
add rax, 1
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x58]
mov edx, 0
mov rcx, rax
call fcn.1400c6440
mov qword [rbp + 0x50], rax
jmp 0x14001b1b8
nop
add qword [rbp + 0x218], 1
jmp 0x14001ae8d
nop
call fcn.1400c7e00
call fcn.1400c7e00
mov rax, qword [rbp + 0x1e0]
mov qword [rbp + 0x48], rax
call fcn.1400c7e60
mov edx, eax
mov rax, qword [rbp + 0x48]
mov rcx, rax
call fcn.1400c6450
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x58]
mov rcx, rax
call fcn.1400c8040
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov rcx, rax
call fcn.1400c6280
mov qword [rbp + 0x38], rax
mov rax, qword [rbp + 0x1e0]
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
mov rcx, rax
call fcn.1400c6280
mov qword [rbp + 0x28], rax
call fcn.1400c7e00
mov rax, qword [rbp - 0x48]
mov rcx, rax
call fcn.1400c8220
mov rax, qword [rbp - 0x58]
mov rcx, rax
call fcn.1400c8220
lea rax, [0x1418fe77c]
mov rcx, rax
call fcn.1400c8220
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x48]
mov rcx, rax
call fcn.1400c8040
jmp 0x14001b27c
nop
jmp 0x14001b27c
nop
mov rax, qword [0x14190be18]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov rcx, rax
call fcn.1400a59c4
mov qword [rbp + 0x18], rax
cmp qword [rbp + 0x18], 0
je 0x14001b2d6
call fcn.1400a5dc4
mov qword [rbp + 0x10], rax
cmp qword [rbp + 0x10], 0
je 0x14001b2b0
jmp 0x14001b29e
nop
call fcn.1400a5dc4
mov qword [rbp + 8], rax
cmp qword [rbp + 8], 0
je 0x14001b2c3
jmp 0x14001b2b1
nop
call fcn.1400a5dc4
mov qword [rbp], rax
cmp qword [rbp], 0
je 0x14001b2dc
jmp 0x14001b2c4
nop
jmp 0x14001ac8a
nop
jmp 0x14001ac8a
nop
mov rax, qword [rbp + 0x1d8]
mov qword [rbp - 8], rax
mov rax, qword [rbp - 8]
mov rcx, rax
call fcn.1400c6280
mov qword [rbp - 0x10], rax
mov rax, qword [rbp + 0x210]
mov rcx, rax
call fcn.1400949a8
mov qword [rbp - 0x18], rax
cmp qword [rbp - 0x18], 0
je 0x14001b34d
mov rax, qword [rbp + 0x210]
mov rcx, rax
call fcn.140094894
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov dword [rbp + 0x224], eax
mov rax, qword [rbp + 0x210]
mov rcx, rax
call fcn.1400948b8
mov qword [rbp - 0x28], rax
jmp 0x14001b34e
nop
jmp 0x14001b34e
nop
cmp qword [rbp + 0x248], 0
jle 0x14001b38a
call fcn.1400c7e00
call fcn.1400c7e00
call fcn.1400c7e60
mov edx, eax
mov eax, dword [rbp + 0x224]
cdqe
mov rcx, rax
call fcn.1400c4aa0
call fcn.1400c7fb0
mov qword [rbp + 0x228], rax
jmp 0x14001b4d3
nop
call fcn.1400c7e00
call fcn.1400c7e00
call fcn.1400c7e60
mov edx, eax
mov rax, qword [rbp - 0x48]
mov r8d, edx
lea rdx, reloc.WS2_32.dll_listen
mov rcx, rax
call fcn.1400c53f0
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x48]
mov rcx, rax
call fcn.1400c8040
call fcn.1400c7e00
call fcn.1400c7e00
call fcn.1400c7e60
mov edx, eax
mov rax, qword [rbp - 0x48]
mov r9d, edx
lea r8, reloc.WS2_32.dll_ioctlsocket
lea rdx, [0x1418f7bc4]
mov rcx, rax
call fcn.1400c56b0
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x48]
mov rcx, rax
call fcn.1400c8040
mov rax, qword [rbp - 0x48]
lea rdx, [0x1418f7bc4]
mov rcx, rax
call fcn.1400c4bb0
mov qword [rbp - 0x30], rax
cmp qword [rbp - 0x30], 0
je 0x14001b427
nop
jmp 0x14001b3c5
nop
call fcn.1400c7e00
call fcn.1400c7e00
call fcn.1400c7e60
mov edx, eax
mov rax, qword [rbp - 0x48]
mov r8d, edx
mov edx, 1
mov rcx, rax
call fcn.1400c5350
call fcn.1400c8420
call fcn.1400c7f40
mov qword [rbp - 0x38], rax
lea rax, reloc.WS2_32.dll_ioctlsocket
mov qword [rbp - 0x40], rax
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x40]
mov rcx, rax
call fcn.1400c81c0
test eax, eax
je 0x14001b4b4
call fcn.1400c7e00
call fcn.1400c7e00
call fcn.1400c7e60
mov edx, eax
mov rax, qword [rbp - 0x48]
mov r8d, edx
mov edx, 2
mov rcx, rax
call fcn.1400c4d40
call fcn.1400c7e60
mov edx, eax
lea rax, [rbp - 0x48]
mov rcx, rax
call fcn.1400c8040
jmp 0x14001b4b5
nop
call fcn.1400c7e00
mov rax, qword [rbp - 0x48]
mov rcx, rax
call fcn.1400c8220
call fcn.1400c7fb0
mov qword [rbp + 0x228], rax
nop
mov rax, qword [rbp - 0x48]
mov rcx, rax
call fcn.1400c8120
mov rax, qword [rbp + 0x240]
mov rcx, rax
call fcn.1400c8120
mov rax, qword [rbp - 0x50]
mov rcx, rax
call fcn.1400c8120
mov rax, qword [rbp - 0x58]
mov rcx, rax
call fcn.1400c8120
mov rax, qword [rbp + 0x228]
add rsp, 0x2b0
pop rbp
ret