Function at 0x45d9f0
Capabilities:
Link many functions at runtime

Disassembly:
push str.ws2_32.dll
call fcn.0045ca70
add esp, 4
mov dword [0x4e38ec], eax
mov dword [0x4e3a80], eax
test eax, eax
jne 0x45da33
push str.wsock32.dll
call fcn.0045ca70
add esp, 4
mov dword [0x4e38ec], eax
test eax, eax
jne 0x45da33
push str.Unable_to_load_any_WinSock_library
call fcn.004578a0
mov eax, dword [0x4e38ec]
add esp, 4
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.getaddrinfo
push eax
call esi
test eax, eax
je 0x45dace
mov eax, dword [0x4e38ec]
test eax, eax
je 0x45da64
push str.getaddrinfo
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45da66
xor ecx, ecx
mov dword [0x4e38d8], ecx
test eax, eax
je 0x45da81
push str.freeaddrinfo
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45da83
xor ecx, ecx
mov dword [0x4e38dc], ecx
test eax, eax
je 0x45da9e
push str.getnameinfo
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45daa0
xor ecx, ecx
mov dword [0x4e38e0], ecx
test eax, eax
je 0x45dac4
push str.gai_strerror
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
mov dword [0x4e38e4], ecx
jmp 0x45db44
xor ecx, ecx
mov dword [0x4e38e4], ecx
jmp 0x45db44
push str.wship6.dll
call fcn.0045ca70
add esp, 4
mov dword [0x4e3a84], eax
test eax, eax
je 0x45db3f
push str.getaddrinfo
push eax
call esi
mov dword [0x4e38d8], eax
mov eax, dword [0x4e3a84]
test eax, eax
je 0x45db0b
push str.freeaddrinfo
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e3a84]
jmp 0x45db0d
xor ecx, ecx
mov dword [0x4e38dc], ecx
test eax, eax
je 0x45db2e
push str.getnameinfo
push eax
call esi
mov dword [0x4e38e0], eax
mov eax, dword [0x4e38ec]
jmp 0x45daa6
xor eax, eax
mov dword [0x4e38e0], eax
mov eax, dword [0x4e38ec]
jmp 0x45daa6
mov eax, dword [0x4e38ec]
mov ecx, dword [0x4e3a80]
test ecx, ecx
je 0x45db5f
push str.WSAAddressToStringA
push ecx
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45db61
xor ecx, ecx
mov dword [0x4e38e8], ecx
test eax, eax
je 0x45db7c
push str.WSAAsyncSelect
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45db7e
xor ecx, ecx
mov dword [0x4e5404], ecx
test eax, eax
je 0x45db99
push str.WSAEventSelect
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45db9b
xor ecx, ecx
mov dword [0x4e5400], ecx
test eax, eax
je 0x45dbb6
push str.select
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dbb8
xor ecx, ecx
mov dword [0x4e5350], ecx
test eax, eax
je 0x45dbd3
push str.WSAGetLastError
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dbd5
xor ecx, ecx
mov dword [0x4e53fc], ecx
test eax, eax
je 0x45dbf0
push str.WSAEnumNetworkEvents
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dbf2
xor ecx, ecx
mov dword [0x4e53f8], ecx
test eax, eax
je 0x45dc0d
push str.WSAStartup
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dc0f
xor ecx, ecx
mov dword [0x4e3874], ecx
test eax, eax
je 0x45dc2a
push str.WSACleanup
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dc2c
xor ecx, ecx
mov dword [0x4e3878], ecx
test eax, eax
je 0x45dc47
push str.closesocket
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dc49
xor ecx, ecx
mov dword [0x4e387c], ecx
test eax, eax
je 0x45dc64
push str.ntohl
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dc66
xor ecx, ecx
mov dword [0x4e3880], ecx
test eax, eax
je 0x45dc81
push str.htonl
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dc83
xor ecx, ecx
mov dword [0x4e3884], ecx
test eax, eax
je 0x45dc9e
push str.htons
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dca0
xor ecx, ecx
mov dword [0x4e3888], ecx
test eax, eax
je 0x45dcbb
push str.ntohs
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dcbd
xor ecx, ecx
mov dword [0x4e388c], ecx
test eax, eax
je 0x45dcd8
push str.gethostname
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dcda
xor ecx, ecx
mov dword [0x4e3890], ecx
test eax, eax
je 0x45dcf5
push str.gethostbyname
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dcf7
xor ecx, ecx
mov dword [0x4e3894], ecx
test eax, eax
je 0x45dd12
push str.getservbyname
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dd14
xor ecx, ecx
mov dword [0x4e3898], ecx
test eax, eax
je 0x45dd2f
push str.inet_addr
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dd31
xor ecx, ecx
mov dword [0x4e389c], ecx
test eax, eax
je 0x45dd4c
push str.inet_ntoa
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dd4e
xor ecx, ecx
mov dword [0x4e38a0], ecx
test eax, eax
je 0x45dd69
push str.inet_ntop
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dd6b
xor ecx, ecx
mov dword [0x4e38a4], ecx
test eax, eax
je 0x45dd86
push str.connect
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dd88
xor ecx, ecx
mov dword [0x4e38a8], ecx
test eax, eax
je 0x45dda3
push str.bind
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dda5
xor ecx, ecx
mov dword [0x4e38ac], ecx
test eax, eax
je 0x45ddc0
push str.setsockopt
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45ddc2
xor ecx, ecx
mov dword [0x4e38b0], ecx
test eax, eax
je 0x45dddd
push str.socket
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45dddf
xor ecx, ecx
mov dword [0x4e38b4], ecx
test eax, eax
je 0x45ddfa
push str.listen
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45ddfc
xor ecx, ecx
mov dword [0x4e38b8], ecx
test eax, eax
je 0x45de17
push str.send
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45de19
xor ecx, ecx
mov dword [0x4e38bc], ecx
test eax, eax
je 0x45de34
push str.shutdown
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45de36
xor ecx, ecx
mov dword [0x4e38c0], ecx
test eax, eax
je 0x45de51
push str.ioctlsocket
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45de53
xor ecx, ecx
mov dword [0x4e38c4], ecx
test eax, eax
je 0x45de6e
push str.accept
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45de70
xor ecx, ecx
mov dword [0x4e38c8], ecx
test eax, eax
je 0x45de8b
push str.getpeername
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45de8d
xor ecx, ecx
mov dword [0x4e38cc], ecx
test eax, eax
je 0x45dea8
push str.recv
push eax
call esi
mov ecx, eax
mov eax, dword [0x4e38ec]
jmp 0x45deaa
xor ecx, ecx
mov dword [0x4e38d0], ecx
test eax, eax
je 0x45debe
push str.WSAIoctl
push eax
call esi
jmp 0x45dec0
xor eax, eax
push 2
push 2
mov dword [0x4e38d4], eax
call fcn.0045e720
add esp, 8
pop esi
test eax, eax
jne 0x45df02
push eax
push 2
call fcn.0045e720
add esp, 8
test eax, eax
jne 0x45df02
push 1
push 1
call fcn.0045e720
add esp, 8
test eax, eax
jne 0x45df02
push str.Unable_to_initialise_WinSock
call fcn.004578a0
add esp, 4
push 0x45cf00
call fcn.0044f770
add esp, 4
mov dword [0x4e3870], eax
ret