Function at 0x40f5b0
Capabilities:
Link many functions at runtime

Disassembly:
push str.ws2_32.dll
call fcn.0042f470
add esp, 4
mov dword [0x4c0cc0], eax
mov dword [0x4c0cc4], eax
test eax, eax
jne 0x40f5e5
push str.wsock32.dll
call fcn.0042f470
add esp, 4
mov dword [0x4c0cc0], eax
test eax, eax
je 0x40fc00
push str.getaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40f631
mov eax, dword [0x4c0cc0]
test eax, eax
je 0x40f68a
push str.getaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cc8], eax
test ecx, ecx
je 0x40f694
push str.freeaddrinfo
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
jmp 0x40f673
push str.wship6.dll
call fcn.0042f470
add esp, 4
mov dword [0x4c0cd4], eax
test eax, eax
je 0x40f6a5
push str.getaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4c0cc8], eax
mov eax, dword [0x4c0cd4]
test eax, eax
je 0x40f694
push str.freeaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cd4]
mov dword [0x4c0ccc], eax
test ecx, ecx
je 0x40f69e
push str.getnameinfo
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x40f6a0
mov dword [0x4c0cc8], 0
mov dword [0x4c0ccc], 0
xor eax, eax
mov dword [0x4c0cd0], eax
mov eax, dword [0x4c0cc4]
test eax, eax
je 0x40f6bc
push str.WSAAddressToStringA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x40f6be
xor eax, eax
mov dword [0x4c0cd8], eax
mov eax, dword [0x4c0cc0]
test eax, eax
je 0x40fa64
push str.WSAAsyncSelect
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cdc], eax
test ecx, ecx
je 0x40fa6e
push str.WSAEventSelect
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0ce0], eax
test ecx, ecx
je 0x40fa78
push str.select
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0ce4], eax
test ecx, ecx
je 0x40fa82
push str.WSAGetLastError
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0ce8], eax
test ecx, ecx
je 0x40fa8c
push str.WSAEnumNetworkEvents
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cec], eax
test ecx, ecx
je 0x40fa96
push str.WSAStartup
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cf0], eax
test ecx, ecx
je 0x40faa0
push str.WSACleanup
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cf4], eax
test ecx, ecx
je 0x40faaa
push str.closesocket
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cf8], eax
test ecx, ecx
je 0x40fab4
push str.ntohl
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0cfc], eax
test ecx, ecx
je 0x40fabe
push str.htonl
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d00], eax
test ecx, ecx
je 0x40fac8
push str.htons
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d04], eax
test ecx, ecx
je 0x40fad2
push str.ntohs
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d08], eax
test ecx, ecx
je 0x40fadc
push str.gethostname
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d0c], eax
test ecx, ecx
je 0x40fae6
push str.gethostbyname
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d10], eax
test ecx, ecx
je 0x40faf0
push str.getservbyname
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d14], eax
test ecx, ecx
je 0x40fafa
push str.inet_addr
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d18], eax
test ecx, ecx
je 0x40fb04
push str.inet_ntoa
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d1c], eax
test ecx, ecx
je 0x40fb0e
push str.inet_ntop
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d20], eax
test ecx, ecx
je 0x40fb18
push 0x4a688a
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d24], eax
test ecx, ecx
je 0x40fb22
push str.bind
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d28], eax
test ecx, ecx
je 0x40fb2c
push str.setsockopt
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d2c], eax
test ecx, ecx
je 0x40fb36
push 0x4a6635
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d30], eax
test ecx, ecx
je 0x40fb40
push str.listen
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d34], eax
test ecx, ecx
je 0x40fb4a
push str.send
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d38], eax
test ecx, ecx
je 0x40fb54
push 0x4a842b
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d3c], eax
test ecx, ecx
je 0x40fb5e
push str.ioctlsocket
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d40], eax
test ecx, ecx
je 0x40fb68
push str.accept
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d44], eax
test ecx, ecx
je 0x40fb72
push str.getpeername
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d48], eax
test ecx, ecx
je 0x40fb7c
push str.recv
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4c0cc0]
mov dword [0x4c0d4c], eax
test ecx, ecx
je 0x40fb86
push str.WSAIoctl
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x40fb88
mov dword [0x4c0cdc], 0
mov dword [0x4c0ce0], 0
mov dword [0x4c0ce4], 0
mov dword [0x4c0ce8], 0
mov dword [0x4c0cec], 0
mov dword [0x4c0cf0], 0
mov dword [0x4c0cf4], 0
mov dword [0x4c0cf8], 0
mov dword [0x4c0cfc], 0
mov dword [0x4c0d00], 0
mov dword [0x4c0d04], 0
mov dword [0x4c0d08], 0
mov dword [0x4c0d0c], 0
mov dword [0x4c0d10], 0
mov dword [0x4c0d14], 0
mov dword [0x4c0d18], 0
mov dword [0x4c0d1c], 0
mov dword [0x4c0d20], 0
mov dword [0x4c0d24], 0
mov dword [0x4c0d28], 0
mov dword [0x4c0d2c], 0
mov dword [0x4c0d30], 0
mov dword [0x4c0d34], 0
mov dword [0x4c0d38], 0
mov dword [0x4c0d3c], 0
mov dword [0x4c0d40], 0
mov dword [0x4c0d44], 0
mov dword [0x4c0d48], 0
mov dword [0x4c0d4c], 0
xor eax, eax
mov dword [0x4c0d50], eax
push 0x4c0d58
push 0x202
call dword [0x4c0cf0]
test eax, eax
jne 0x40fbae
movzx eax, byte [0x4c0d58]
cmp ax, 2
je 0x40fbed
push 0x4c0d58
push 2
call dword [0x4c0cf0]
test eax, eax
jne 0x40fbcc
movzx eax, byte [0x4c0d58]
cmp ax, 2
je 0x40fbed
push 0x4c0d58
push 0x101
call dword [0x4c0cf0]
test eax, eax
jne 0x40fc0a
movzx eax, byte [0x4c0d58]
cmp ax, 1
jne 0x40fc0a
push 0x40fc20
call fcn.004155f0
add esp, 4
mov dword [0x4c0d54], eax
ret
push str.Unable_to_load_any_WinSock_library
call fcn.004033b0
push str.Unable_to_initialise_WinSock
call fcn.004033b0
int3