Function at 0x14004fe14
Capabilities:
Link many functions at runtime

Disassembly:
sub rsp, 0x28
lea rcx, str.ws2_32.dll
call fcn.14004fa15
mov qword [0x1400ac5c0], rax
mov qword [0x1400ac5c8], rax
test rax, rax
jne 0x14004fe53
lea rcx, str.wsock32.dll
call fcn.14004fa15
mov qword [0x1400ac5c0], rax
test rax, rax
je 0x1400505c8
lea rdx, str.getaddrinfo
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14004fee0
mov rcx, qword [0x1400ac5c0]
test rcx, rcx
je 0x14004ff4e
lea rdx, str.getaddrinfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac5d0], rax
test rcx, rcx
je 0x14004ff59
lea rdx, str.freeaddrinfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac5d8], rax
test rcx, rcx
je 0x14004ff95
lea rdx, str.getnameinfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac5e0], rax
jmp 0x14004ff81
lea rcx, str.wship6.dll
call fcn.14004fa15
mov qword [0x1400ac5f0], rax
test rax, rax
je 0x14004ff9e
lea rdx, str.getaddrinfo
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1400ac5d0], rax
mov rcx, qword [0x1400ac5f0]
test rcx, rcx
je 0x14004ff66
lea rdx, str.freeaddrinfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5f0]
mov qword [0x1400ac5d8], rax
test rcx, rcx
je 0x14004ff71
lea rdx, str.getnameinfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x14004ff73
mov qword [0x1400ac5d0], 0
mov qword [0x1400ac5d8], 0
jmp 0x14004ff95
mov qword [0x1400ac5d8], 0
xor eax, eax
mov qword [0x1400ac5e0], rax
mov rcx, qword [0x1400ac5c0]
test rcx, rcx
je 0x14004ff95
lea rdx, str.gai_strerror
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x14004ff97
xor eax, eax
mov qword [0x1400ac5e8], rax
mov rcx, qword [0x1400ac5c8]
test rcx, rcx
je 0x14004ffb9
lea rdx, str.WSAAddressToStringA
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x14004ffbb
xor eax, eax
mov qword [0x1400ac5f8], rax
mov rcx, qword [0x1400ac5c0]
test rcx, rcx
je 0x1400503f8
lea rdx, str.WSAAsyncSelect
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac600], rax
test rcx, rcx
je 0x140050403
lea rdx, str.WSAEventSelect
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac608], rax
test rcx, rcx
je 0x14005040e
lea rdx, str.select
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac610], rax
test rcx, rcx
je 0x140050419
lea rdx, str.WSAGetLastError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac618], rax
test rcx, rcx
je 0x140050424
lea rdx, str.WSAEnumNetworkEvents
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac620], rax
test rcx, rcx
je 0x14005042f
lea rdx, str.WSAStartup
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac628], rax
test rcx, rcx
je 0x14005043a
lea rdx, str.WSACleanup
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac630], rax
test rcx, rcx
je 0x140050445
lea rdx, str.closesocket
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac638], rax
test rcx, rcx
je 0x140050450
lea rdx, str.ntohl
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac640], rax
test rcx, rcx
je 0x14005045b
lea rdx, str.htonl
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac648], rax
test rcx, rcx
je 0x140050466
lea rdx, str.htons
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac650], rax
test rcx, rcx
je 0x140050471
lea rdx, str.ntohs
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac658], rax
test rcx, rcx
je 0x14005047c
lea rdx, str.gethostname
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac660], rax
test rcx, rcx
je 0x140050487
lea rdx, str.gethostbyname
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac668], rax
test rcx, rcx
je 0x140050492
lea rdx, str.getservbyname
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac670], rax
test rcx, rcx
je 0x14005049d
lea rdx, str.inet_addr
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac678], rax
test rcx, rcx
je 0x1400504a8
lea rdx, str.inet_ntoa
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac680], rax
test rcx, rcx
je 0x1400504b3
lea rdx, str.inet_ntop
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac688], rax
test rcx, rcx
je 0x1400504be
lea rdx, [0x140093395]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac690], rax
test rcx, rcx
je 0x1400504c9
lea rdx, str.bind
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac698], rax
test rcx, rcx
je 0x1400504d4
lea rdx, str.setsockopt
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6a0], rax
test rcx, rcx
je 0x1400504df
lea rdx, [0x140093051]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6a8], rax
test rcx, rcx
je 0x1400504ea
lea rdx, str.listen
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6b0], rax
test rcx, rcx
je 0x1400504f5
lea rdx, str.send
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6b8], rax
test rcx, rcx
je 0x140050500
lea rdx, [0x140094dab]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6c0], rax
test rcx, rcx
je 0x14005050b
lea rdx, str.ioctlsocket
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6c8], rax
test rcx, rcx
je 0x140050516
lea rdx, str.accept
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6d0], rax
test rcx, rcx
je 0x140050521
lea rdx, str.getpeername
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6d8], rax
test rcx, rcx
je 0x1400505b6
lea rdx, str.recv
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1400ac5c0]
mov qword [0x1400ac6e0], rax
test rcx, rcx
je 0x1400505c1
lea rdx, str.WSAIoctl
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x140050531
mov qword [0x1400ac600], 0
mov qword [0x1400ac608], 0
mov qword [0x1400ac610], 0
mov qword [0x1400ac618], 0
mov qword [0x1400ac620], 0
mov qword [0x1400ac628], 0
mov qword [0x1400ac630], 0
mov qword [0x1400ac638], 0
mov qword [0x1400ac640], 0
mov qword [0x1400ac648], 0
mov qword [0x1400ac650], 0
mov qword [0x1400ac658], 0
mov qword [0x1400ac660], 0
mov qword [0x1400ac668], 0
mov qword [0x1400ac670], 0
mov qword [0x1400ac678], 0
mov qword [0x1400ac680], 0
mov qword [0x1400ac688], 0
mov qword [0x1400ac690], 0
mov qword [0x1400ac698], 0
mov qword [0x1400ac6a0], 0
mov qword [0x1400ac6a8], 0
mov qword [0x1400ac6b0], 0
mov qword [0x1400ac6b8], 0
mov qword [0x1400ac6c0], 0
mov qword [0x1400ac6c8], 0
mov qword [0x1400ac6d0], 0
xor eax, eax
mov qword [0x1400ac6d8], rax
mov qword [0x1400ac6e0], rax
mov qword [0x1400ac6e8], rax
lea rdx, [0x1400ac6f8]
mov cx, 0x202
call qword [0x1400ac628]
test eax, eax
jne 0x14005055a
movzx eax, byte [0x1400ac6f8]
cmp ax, 2
je 0x14005059e
lea rdx, [0x1400ac6f8]
mov cx, 2
call qword [0x1400ac628]
test eax, eax
jne 0x14005057c
movzx eax, byte [0x1400ac6f8]
cmp ax, 2
je 0x14005059e
lea rdx, [0x1400ac6f8]
mov cx, 0x101
call qword [0x1400ac628]
test eax, eax
jne 0x1400505d4
movzx eax, byte [0x1400ac6f8]
cmp ax, 1
jne 0x1400505d4
lea rcx, [0x1400505e1]
call fcn.14004a0b8
mov qword [0x1400ac6f0], rax
add rsp, 0x28
ret
mov qword [0x1400ac6e0], 0
xor eax, eax
jmp 0x140050531
lea rcx, str.Unable_to_load_any_WinSock_library
call fcn.1400040c4
lea rcx, str.Unable_to_initialise_WinSock
call fcn.1400040c4
int3