Function at 0x180024a40
Capabilities:
Link many functions at runtime

Disassembly:
sub rsp, 0x398
mov qword [rsp + 0x1e0], 0
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8d, 0x42
mov edx, 9
lea rcx, [0x18004d480]
call fcn.180032720
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x1e8], rax
mov qword [rsp + 0x380], 0
mov rcx, qword [rsp + 0x1e8]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x1d8]
call fcn.1800327e0
cmp qword [rsp + 0x30], 0
jne 0x180024ad0
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x1f0], 0
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x61
mov edx, shutdown
lea rcx, [0x18004d490]
call fcn.180032720
mov qword [rsp + 0x48], rax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b9c8], rax
cmp qword [rsp + 0x48], 0
je 0x180024b40
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x48]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b9c8], 0
jne 0x180024b51
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x1f8], 0
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x8f
mov edx, recv
lea rcx, [0x18004d4a8]
call fcn.180032720
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b9c0], rax
cmp qword [rsp + 0x50], 0
je 0x180024bc1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b9c0], 0
jne 0x180024bd2
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x200], 0
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xb1
mov edx, recv
lea rcx, [0x18004d4b8]
call fcn.180032720
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b9b8], rax
cmp qword [rsp + 0x58], 0
je 0x180024c42
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x58]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b9b8], 0
jne 0x180024c53
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x208], 0
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xb8
mov edx, reloc.WS2_32.dll_shutdown
lea rcx, [0x18004d4c8]
call fcn.180032720
mov qword [rsp + 0x60], rax
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b9b0], rax
cmp qword [rsp + 0x60], 0
je 0x180024cc3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x60]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b9b0], 0
jne 0x180024cd4
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x210], 0
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x2a
mov edx, reloc.WS2_32.dll_socket
lea rcx, [0x18004d4e0]
call fcn.180032720
mov qword [rsp + 0x68], rax
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b9a8], rax
cmp qword [rsp + 0x68], 0
je 0x180024d44
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x68]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b9a8], 0
jne 0x180024d55
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x218], 0
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x98
mov edx, reloc.WS2_32.dll_shutdown
lea rcx, [0x18004d4f8]
call fcn.180032720
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b9a0], rax
cmp qword [rsp + 0x70], 0
je 0x180024dc5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x70]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b9a0], 0
jne 0x180024dd6
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x220], 0
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x7b
mov edx, 0x1e
lea rcx, [0x18004d510]
call fcn.180032720
mov qword [rsp + 0x78], rax
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b998], rax
cmp qword [rsp + 0x78], 0
je 0x180024e46
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x78]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b998], 0
jne 0x180024e57
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x228], 0
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xd3
mov edx, send
lea rcx, [0x18004d530]
call fcn.180032720
mov qword [rsp + 0x80], rax
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b990], rax
cmp qword [rsp + 0x80], 0
je 0x180024ed3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x80]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b990], 0
jne 0x180024ee4
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x230], 0
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xa5
mov edx, reloc.WS2_32.dll_send
lea rcx, [0x18004d548]
call fcn.180032720
mov qword [rsp + 0x88], rax
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b988], rax
cmp qword [rsp + 0x88], 0
je 0x180024f60
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x88]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b988], 0
jne 0x180024f71
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x238], 0
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x40
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x18004d560]
call fcn.180032720
mov qword [rsp + 0x90], rax
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b980], rax
cmp qword [rsp + 0x90], 0
je 0x180024fed
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x90]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b980], 0
jne 0x180024ffe
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x240], 0
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xcb
mov edx, 0x1c
lea rcx, [0x18004d578]
call fcn.180032720
mov qword [rsp + 0x98], rax
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b978], rax
cmp qword [rsp + 0x98], 0
je 0x18002507a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x98]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b978], 0
jne 0x18002508b
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x248], 0
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x76
mov edx, 0x1c
lea rcx, [0x18004d598]
call fcn.180032720
mov qword [rsp + 0xa0], rax
mov rdx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b970], rax
cmp qword [rsp + 0xa0], 0
je 0x180025107
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xa0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b970], 0
jne 0x180025118
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x250], 0
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xc3
mov edx, reloc.WS2_32.dll_inet_addr
lea rcx, [0x18004d5b8]
call fcn.180032720
mov qword [rsp + 0xa8], rax
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b968], rax
cmp qword [rsp + 0xa8], 0
je 0x180025194
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xa8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b968], 0
jne 0x1800251a5
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x258], 0
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x40
mov edx, reloc.WS2_32.dll_send
lea rcx, [0x18004d5c8]
call fcn.180032720
mov qword [rsp + 0xb0], rax
mov rdx, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b960], rax
cmp qword [rsp + 0xb0], 0
je 0x180025221
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xb0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b960], 0
jne 0x180025232
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x260], 0
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xad
mov edx, reloc.WS2_32.dll_inet_addr
lea rcx, [0x18004d5e0]
call fcn.180032720
mov qword [rsp + 0xb8], rax
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b958], rax
cmp qword [rsp + 0xb8], 0
je 0x1800252ae
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xb8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b958], 0
jne 0x1800252bf
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x268], 0
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xd4
mov edx, 0xa
lea rcx, [0x18004d5f0]
call fcn.180032720
mov qword [rsp + 0xc0], rax
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b950], rax
cmp qword [rsp + 0xc0], 0
je 0x18002533b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xc0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b950], 0
jne 0x18002534c
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x270], 0
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x89
mov edx, 7
lea rcx, [0x18004d600]
call fcn.180032720
mov qword [rsp + 0xc8], rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b948], rax
cmp qword [rsp + 0xc8], 0
je 0x1800253c8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xc8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b948], 0
jne 0x1800253d9
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x278], 0
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x2e
mov edx, 9
lea rcx, [0x18004d608]
call fcn.180032720
mov qword [rsp + 0xd0], rax
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b940], rax
cmp qword [rsp + 0xd0], 0
je 0x180025455
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xd0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b940], 0
jne 0x180025466
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x280], 0
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, __WSAFDIsSet
mov edx, reloc.WS2_32.dll_inet_addr
lea rcx, [0x18004d618]
call fcn.180032720
mov qword [rsp + 0xd8], rax
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b938], rax
cmp qword [rsp + 0xd8], 0
je 0x1800254e2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xd8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b938], 0
jne 0x1800254f3
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x288], 0
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x40
mov edx, recv
lea rcx, [0x18004d628]
call fcn.180032720
mov qword [rsp + 0xe0], rax
mov rdx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b930], rax
cmp qword [rsp + 0xe0], 0
je 0x18002556f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xe0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b930], 0
jne 0x180025580
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x290], 0
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, WSAGetLastError
mov edx, reloc.WS2_32.dll_send
lea rcx, [0x18004d638]
call fcn.180032720
mov qword [rsp + 0xe8], rax
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b928], rax
cmp qword [rsp + 0xe8], 0
je 0x1800255fc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xe8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b928], 0
jne 0x18002560d
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x298], 0
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x36
mov edx, reloc.WS2_32.dll_inet_addr
lea rcx, [0x18004d650]
call fcn.180032720
mov qword [rsp + 0xf0], rax
mov rdx, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b920], rax
cmp qword [rsp + 0xf0], 0
je 0x180025689
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xf0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b920], 0
jne 0x18002569a
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2a0], 0
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xd0
mov edx, recv
lea rcx, [0x18004d660]
call fcn.180032720
mov qword [rsp + 0xf8], rax
mov rdx, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b918], rax
cmp qword [rsp + 0xf8], 0
je 0x180025716
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0xf8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b918], 0
jne 0x180025727
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2a8], 0
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x4b
mov edx, send
lea rcx, [0x18004d670]
call fcn.180032720
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b910], rax
cmp qword [rsp + 0x100], 0
je 0x1800257a3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x100]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b910], 0
jne 0x1800257b4
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2b0], 0
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xc4
mov edx, recv
lea rcx, [0x18004d680]
call fcn.180032720
mov qword [rsp + 0x108], rax
mov rdx, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b908], rax
cmp qword [rsp + 0x108], 0
je 0x180025830
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x108]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b908], 0
jne 0x180025841
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2b8], 0
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xe7
mov edx, 0xa
lea rcx, [0x18004d690]
call fcn.180032720
mov qword [rsp + 0x110], rax
mov rdx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b900], rax
cmp qword [rsp + 0x110], 0
je 0x1800258bd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x110]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b900], 0
jne 0x1800258ce
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2c0], 0
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x58
mov edx, reloc.WS2_32.dll_shutdown
lea rcx, [0x18004d6a0]
call fcn.180032720
mov qword [rsp + 0x118], rax
mov rdx, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8f8], rax
cmp qword [rsp + 0x118], 0
je 0x18002594a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x118]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8f8], 0
jne 0x18002595b
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2c8], 0
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xcd
mov edx, 0xa
lea rcx, [0x18004d6b8]
call fcn.180032720
mov qword [rsp + 0x120], rax
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8f0], rax
cmp qword [rsp + 0x120], 0
je 0x1800259d7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x120]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8f0], 0
jne 0x1800259e8
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2d0], 0
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x2e
mov edx, reloc.WS2_32.dll_inet_addr
lea rcx, [0x18004d6c8]
call fcn.180032720
mov qword [rsp + 0x128], rax
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8e8], rax
cmp qword [rsp + 0x128], 0
je 0x180025a64
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x128]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8e8], 0
jne 0x180025a75
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2d8], 0
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xd9
mov edx, reloc.WS2_32.dll_select
lea rcx, [0x18004d6d8]
call fcn.180032720
mov qword [rsp + 0x130], rax
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8e0], rax
cmp qword [rsp + 0x130], 0
je 0x180025af1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x130]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8e0], 0
jne 0x180025b02
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2e0], 0
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x1b
mov edx, shutdown
lea rcx, [0x18004d6f0]
call fcn.180032720
mov qword [rsp + 0x138], rax
mov rdx, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8d8], rax
cmp qword [rsp + 0x138], 0
je 0x180025b7e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x138]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8d8], 0
jne 0x180025b8f
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2e8], 0
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x47
mov edx, shutdown
lea rcx, [0x18004d708]
call fcn.180032720
mov qword [rsp + 0x140], rax
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8d0], rax
cmp qword [rsp + 0x140], 0
je 0x180025c0b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x140]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8d0], 0
jne 0x180025c1c
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2f0], 0
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x1c
mov edx, reloc.WS2_32.dll_setsockopt
lea rcx, [0x18004d720]
call fcn.180032720
mov qword [rsp + 0x148], rax
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8c8], rax
cmp qword [rsp + 0x148], 0
je 0x180025c98
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x148]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8c8], 0
jne 0x180025ca9
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x2f8], 0
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xd1
mov edx, 0x18
lea rcx, [0x18004d738]
call fcn.180032720
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8c0], rax
cmp qword [rsp + 0x150], 0
je 0x180025d25
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x150]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8c0], 0
jne 0x180025d36
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x300], 0
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, reloc.WS2_32.dll_WSACleanup
mov edx, reloc.WS2_32.dll_socket
lea rcx, [0x18004d758]
call fcn.180032720
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8b0], rax
cmp qword [rsp + 0x158], 0
je 0x180025db2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x158]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8b0], 0
jne 0x180025dc3
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x308], 0
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xbf
mov edx, 0x19
lea rcx, [0x18004d770]
call fcn.180032720
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8b8], rax
cmp qword [rsp + 0x160], 0
je 0x180025e3f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x160]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8b8], 0
jne 0x180025e50
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x310], 0
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x99
mov edx, reloc.WS2_32.dll_select
lea rcx, [0x18004d790]
call fcn.180032720
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8a8], rax
cmp qword [rsp + 0x168], 0
je 0x180025ecc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x168]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8a8], 0
jne 0x180025edd
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x318], 0
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xa7
mov edx, send
lea rcx, [0x18004d7a8]
call fcn.180032720
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b8a0], rax
cmp qword [rsp + 0x170], 0
je 0x180025f59
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x170]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b8a0], 0
jne 0x180025f6a
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x320], 0
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xe3
mov edx, reloc.WS2_32.dll_socket
lea rcx, [0x18004d7c0]
call fcn.180032720
mov qword [rsp + 0x178], rax
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b898], rax
cmp qword [rsp + 0x178], 0
je 0x180025fe6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x178]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b898], 0
jne 0x180025ff7
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x328], 0
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x50
mov edx, recv
lea rcx, [0x18004d7d8]
call fcn.180032720
mov qword [rsp + 0x180], rax
mov rdx, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b890], rax
cmp qword [rsp + 0x180], 0
je 0x180026073
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x180]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b890], 0
jne 0x180026084
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x330], 0
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x82
mov edx, reloc.WS2_32.dll_send
lea rcx, [0x18004d7e8]
call fcn.180032720
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b888], rax
cmp qword [rsp + 0x188], 0
je 0x180026100
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x188]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b888], 0
jne 0x180026111
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x338], 0
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xc6
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x18004d800]
call fcn.180032720
mov qword [rsp + 0x190], rax
mov rdx, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b840], rax
cmp qword [rsp + 0x190], 0
je 0x18002618d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x190]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b840], 0
jne 0x18002619e
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x340], 0
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xb4
mov edx, reloc.WS2_32.dll_shutdown
lea rcx, [0x18004d818]
call fcn.180032720
mov qword [rsp + 0x198], rax
mov rdx, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b858], rax
cmp qword [rsp + 0x198], 0
je 0x18002621a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x198]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b858], 0
jne 0x18002622b
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x348], 0
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x3e
mov edx, shutdown
lea rcx, [0x18004d830]
call fcn.180032720
mov qword [rsp + 0x1a0], rax
mov rdx, qword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b850], rax
cmp qword [rsp + 0x1a0], 0
je 0x1800262a7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1a0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b850], 0
jne 0x1800262b8
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x350], 0
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x9e
mov edx, reloc.WS2_32.dll_send
lea rcx, [0x18004d848]
call fcn.180032720
mov qword [rsp + 0x1a8], rax
mov rdx, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b848], rax
cmp qword [rsp + 0x1a8], 0
je 0x180026334
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1a8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b848], 0
jne 0x180026345
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x358], 0
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xac
mov edx, send
lea rcx, [0x18004d860]
call fcn.180032720
mov qword [rsp + 0x1b0], rax
mov rdx, qword [rsp + 0x1b0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b880], rax
cmp qword [rsp + 0x1b0], 0
je 0x1800263c1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1b0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b880], 0
jne 0x1800263d2
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x360], 0
mov rax, qword [rsp + 0x360]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x48
mov edx, send
lea rcx, [0x18004d878]
call fcn.180032720
mov qword [rsp + 0x1b8], rax
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b878], rax
cmp qword [rsp + 0x1b8], 0
je 0x18002644e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1b8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b878], 0
jne 0x18002645f
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x368], 0
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0x9c
mov edx, recv
lea rcx, [0x18004d890]
call fcn.180032720
mov qword [rsp + 0x1c0], rax
mov rdx, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b870], rax
cmp qword [rsp + 0x1c0], 0
je 0x1800264db
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1c0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b870], 0
jne 0x1800264ec
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x370], 0
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, reloc.WS2_32.dll_WSAGetLastError
mov edx, recv
lea rcx, [0x18004d8a0]
call fcn.180032720
mov qword [rsp + 0x1c8], rax
mov rdx, qword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b868], rax
cmp qword [rsp + 0x1c8], 0
je 0x180026568
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1c8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b868], 0
jne 0x180026579
xor al, al
jmp 0x1800268cb
mov qword [rsp + 0x378], 0
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, 0xdb
mov edx, reloc.WS2_32.dll_select
lea rcx, [0x18004d8b0]
call fcn.180032720
mov qword [rsp + 0x1d0], rax
mov rdx, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006b860], rax
cmp qword [rsp + 0x1d0], 0
je 0x1800265f5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x1d0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [0x18006b860], 0
jne 0x180026606
xor al, al
jmp 0x1800268cb
cmp qword [0x18006b9c8], 0
je 0x18002689c
cmp qword [0x18006b9c0], 0
je 0x18002689c
cmp qword [0x18006b9b8], 0
je 0x18002689c
cmp qword [0x18006b9b0], 0
je 0x18002689c
cmp qword [0x18006b9a8], 0
je 0x18002689c
cmp qword [0x18006b9a0], 0
je 0x18002689c
cmp qword [0x18006b998], 0
je 0x18002689c
cmp qword [0x18006b990], 0
je 0x18002689c
cmp qword [0x18006b988], 0
je 0x18002689c
cmp qword [0x18006b980], 0
je 0x18002689c
cmp qword [0x18006b978], 0
je 0x18002689c
cmp qword [0x18006b970], 0
je 0x18002689c
cmp qword [0x18006b968], 0
je 0x18002689c
cmp qword [0x18006b960], 0
je 0x18002689c
cmp qword [0x18006b958], 0
je 0x18002689c
cmp qword [0x18006b950], 0
je 0x18002689c
cmp qword [0x18006b948], 0
je 0x18002689c
cmp qword [0x18006b940], 0
je 0x18002689c
cmp qword [0x18006b938], 0
je 0x18002689c
cmp qword [0x18006b930], 0
je 0x18002689c
cmp qword [0x18006b928], 0
je 0x18002689c
cmp qword [0x18006b920], 0
je 0x18002689c
cmp qword [0x18006b918], 0
je 0x18002689c
cmp qword [0x18006b910], 0
je 0x18002689c
cmp qword [0x18006b908], 0
je 0x18002689c
cmp qword [0x18006b900], 0
je 0x18002689c
cmp qword [0x18006b8f8], 0
je 0x18002689c
cmp qword [0x18006b8f0], 0
je 0x18002689c
mov dword [rsp + 0x3c], 0
cmp dword [rsp + 0x3c], 0
jne 0x1800268b5
mov dword [rsp + 0x40], 0
jmp 0x1800268bd
mov dword [rsp + 0x40], 1
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x38], al
movzx eax, byte [rsp + 0x38]
add rsp, 0x398
ret