Function at 0x40f510
Capabilities:
Link many functions at runtime

Disassembly:
push str.ws2_32.dll
call fcn.0042ef90
add esp, 4
mov dword [0x4bfcc0], eax
mov dword [0x4bfcc4], eax
test eax, eax
jne 0x40f545
push str.wsock32.dll
call fcn.0042ef90
add esp, 4
mov dword [0x4bfcc0], eax
test eax, eax
je 0x40fb60
push str.getaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40f591
mov eax, dword [0x4bfcc0]
test eax, eax
je 0x40f5ea
push str.getaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcc8], eax
test ecx, ecx
je 0x40f5f4
push str.freeaddrinfo
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
jmp 0x40f5d3
push str.wship6.dll
call fcn.0042ef90
add esp, 4
mov dword [0x4bfcd4], eax
test eax, eax
je 0x40f605
push str.getaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4bfcc8], eax
mov eax, dword [0x4bfcd4]
test eax, eax
je 0x40f5f4
push str.freeaddrinfo
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcd4]
mov dword [0x4bfccc], eax
test ecx, ecx
je 0x40f5fe
push str.getnameinfo
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x40f600
mov dword [0x4bfcc8], 0
mov dword [0x4bfccc], 0
xor eax, eax
mov dword [0x4bfcd0], eax
mov eax, dword [0x4bfcc4]
test eax, eax
je 0x40f61c
push str.WSAAddressToStringA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x40f61e
xor eax, eax
mov dword [0x4bfcd8], eax
mov eax, dword [0x4bfcc0]
test eax, eax
je 0x40f9c4
push str.WSAAsyncSelect
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcdc], eax
test ecx, ecx
je 0x40f9ce
push str.WSAEventSelect
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfce0], eax
test ecx, ecx
je 0x40f9d8
push str.select
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfce4], eax
test ecx, ecx
je 0x40f9e2
push str.WSAGetLastError
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfce8], eax
test ecx, ecx
je 0x40f9ec
push str.WSAEnumNetworkEvents
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcec], eax
test ecx, ecx
je 0x40f9f6
push str.WSAStartup
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcf0], eax
test ecx, ecx
je 0x40fa00
push str.WSACleanup
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcf4], eax
test ecx, ecx
je 0x40fa0a
push str.closesocket
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcf8], eax
test ecx, ecx
je 0x40fa14
push str.ntohl
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfcfc], eax
test ecx, ecx
je 0x40fa1e
push str.htonl
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd00], eax
test ecx, ecx
je 0x40fa28
push str.htons
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd04], eax
test ecx, ecx
je 0x40fa32
push str.ntohs
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd08], eax
test ecx, ecx
je 0x40fa3c
push str.gethostname
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd0c], eax
test ecx, ecx
je 0x40fa46
push str.gethostbyname
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd10], eax
test ecx, ecx
je 0x40fa50
push str.getservbyname
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd14], eax
test ecx, ecx
je 0x40fa5a
push str.inet_addr
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd18], eax
test ecx, ecx
je 0x40fa64
push str.inet_ntoa
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd1c], eax
test ecx, ecx
je 0x40fa6e
push str.inet_ntop
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd20], eax
test ecx, ecx
je 0x40fa78
push 0x4a583a
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd24], eax
test ecx, ecx
je 0x40fa82
push str.bind
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd28], eax
test ecx, ecx
je 0x40fa8c
push str.setsockopt
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd2c], eax
test ecx, ecx
je 0x40fa96
push 0x4a55e5
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd30], eax
test ecx, ecx
je 0x40faa0
push str.listen
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd34], eax
test ecx, ecx
je 0x40faaa
push str.send
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd38], eax
test ecx, ecx
je 0x40fab4
push 0x4a73db
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd3c], eax
test ecx, ecx
je 0x40fabe
push str.ioctlsocket
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd40], eax
test ecx, ecx
je 0x40fac8
push str.accept
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd44], eax
test ecx, ecx
je 0x40fad2
push str.getpeername
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd48], eax
test ecx, ecx
je 0x40fadc
push str.recv
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x4bfcc0]
mov dword [0x4bfd4c], eax
test ecx, ecx
je 0x40fae6
push str.WSAIoctl
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
jmp 0x40fae8
mov dword [0x4bfcdc], 0
mov dword [0x4bfce0], 0
mov dword [0x4bfce4], 0
mov dword [0x4bfce8], 0
mov dword [0x4bfcec], 0
mov dword [0x4bfcf0], 0
mov dword [0x4bfcf4], 0
mov dword [0x4bfcf8], 0
mov dword [0x4bfcfc], 0
mov dword [0x4bfd00], 0
mov dword [0x4bfd04], 0
mov dword [0x4bfd08], 0
mov dword [0x4bfd0c], 0
mov dword [0x4bfd10], 0
mov dword [0x4bfd14], 0
mov dword [0x4bfd18], 0
mov dword [0x4bfd1c], 0
mov dword [0x4bfd20], 0
mov dword [0x4bfd24], 0
mov dword [0x4bfd28], 0
mov dword [0x4bfd2c], 0
mov dword [0x4bfd30], 0
mov dword [0x4bfd34], 0
mov dword [0x4bfd38], 0
mov dword [0x4bfd3c], 0
mov dword [0x4bfd40], 0
mov dword [0x4bfd44], 0
mov dword [0x4bfd48], 0
mov dword [0x4bfd4c], 0
xor eax, eax
mov dword [0x4bfd50], eax
push 0x4bfd58
push 0x202
call dword [0x4bfcf0]
test eax, eax
jne 0x40fb0e
movzx eax, byte [0x4bfd58]
cmp ax, 2
je 0x40fb4d
push 0x4bfd58
push 2
call dword [0x4bfcf0]
test eax, eax
jne 0x40fb2c
movzx eax, byte [0x4bfd58]
cmp ax, 2
je 0x40fb4d
push 0x4bfd58
push 0x101
call dword [0x4bfcf0]
test eax, eax
jne 0x40fb6a
movzx eax, byte [0x4bfd58]
cmp ax, 1
jne 0x40fb6a
push 0x40fb80
call fcn.00415550
add esp, 4
mov dword [0x4bfd54], eax
ret
push str.Unable_to_load_any_WinSock_library
call fcn.004033b0
push str.Unable_to_initialise_WinSock
call fcn.004033b0
int3