Function at 0x14002c4a0
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x1f0
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x1401620c0]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
mov rdi, rcx
mov qword [rsp + 0x20], rcx
lea rbx, [rcx + 8]
mov qword [rsp + 0x28], rbx
lea rcx, [rbx + 0x10]
xor edx, edx
call fcn.140038c80
nop
lea rcx, [rbx + 0x38]
xor edx, edx
call fcn.140038c80
nop
lea rcx, [rbx + 0x60]
xor edx, edx
call fcn.140038c80
nop
lea rcx, [rbx + 0x88]
xor edx, edx
call fcn.140038c80
nop
xor esi, esi
cmp qword [0x140165420], rsi
jne 0x14002c6fe
lea rcx, str.wsock32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
test rax, rax
je 0x14002c6fe
mov qword [0x140165420], rsi
mov qword [0x140165418], rsi
mov qword [0x140165410], rsi
mov qword [0x140165408], rsi
mov qword [0x140165400], rsi
mov qword [0x1401653f8], rsi
mov qword [0x1401653f0], rsi
mov qword [0x1401653e8], rsi
mov qword [0x1401653e0], rsi
mov qword [0x1401653d8], rsi
mov qword [0x1401653d0], rsi
mov qword [0x1401653c8], rsi
mov qword [0x1401653c0], rsi
mov qword [0x1401653b8], rsi
mov qword [0x1401653b0], rsi
lea rdx, str.closesocket
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140165420], rax
lea rdx, str.connect
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140165418], rax
lea rdx, str.gethostbyname
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140165410], rax
lea rdx, str.gethostname
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140165408], rax
lea rdx, str.htons
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140165400], rax
lea rdx, str.inet_addr
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653f8], rax
lea rdx, str.inet_ntoa
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653f0], rax
lea rdx, str.recv
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653e8], rax
lea rdx, str.recvfrom
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653e0], rax
lea rdx, str.select
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653d8], rax
lea rdx, str.send
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653d0], rax
lea rdx, str.sendto
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653c8], rax
lea rdx, str.socket
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653c0], rax
lea rdx, str.WSACleanup
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653b8], rax
lea rdx, str.WSAStartup
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401653b0], rax
jmp 0x14002c705
mov rax, qword [0x1401653b0]
test rax, rax
je 0x14002c715
lea rdx, [rsp + 0x40]
mov cx, 0x101
call rax
mov qword [rdi + 0x3518], rsi
mov qword [rdi + 0x3520], rsi
mov dword [rdi + 0xb8], 3
mov dword [rdi + 0xbc], 3
mov rcx, rdi
call fcn.14002bab0
mov rcx, rdi
call fcn.14002bb40
mov rcx, rdi
call fcn.14002bc30
nop
mov rax, rdi
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.1400c2a20
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret