Function at 0x45f18b
Capabilities:
Link many functions at runtime

Disassembly:
push str.ws2_32.dll
call fcn.0045e226
mov dword [0x4b1550], eax
mov dword [0x4b1554], eax
pop ecx
test eax, eax
jne 0x45f1c8
push str.wsock32.dll
call fcn.0045e226
mov dword [0x4b1550], eax
pop ecx
test eax, eax
jne 0x45f1c8
push str.Unable_to_load_any_WinSock_library
call fcn.0045ae57
mov eax, dword [0x4b1550]
pop ecx
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, str.getaddrinfo
push edi
push ebx
push eax
call esi
xor edi, edi
test eax, eax
je 0x45f27b
mov eax, dword [0x4b1550]
test eax, eax
je 0x45f1fd
push ebx
push eax
call esi
mov dword [0x4b15c4], eax
mov eax, dword [0x4b1550]
jmp 0x45f203
mov dword [0x4b15c4], edi
test eax, eax
je 0x45f21b
push str.freeaddrinfo
push eax
call esi
mov dword [0x4b15c8], eax
mov eax, dword [0x4b1550]
jmp 0x45f221
mov dword [0x4b15c8], edi
test eax, eax
je 0x45f239
push str.getnameinfo
push eax
call esi
mov dword [0x4b15cc], eax
mov eax, dword [0x4b1550]
jmp 0x45f23f
mov dword [0x4b15cc], edi
test eax, eax
je 0x45f273
push str.gai_strerror
push eax
call esi
mov dword [0x4b15d0], eax
mov eax, dword [0x4b1550]
mov ecx, dword [0x4b1554]
test ecx, ecx
je 0x45f2ce
push str.WSAAddressToStringA
push ecx
call esi
mov dword [0x4b15d4], eax
mov eax, dword [0x4b1550]
jmp 0x45f2d4
mov dword [0x4b15d0], edi
jmp 0x45f255
push str.wship6.dll
call fcn.0045e226
mov dword [0x4b1558], eax
pop ecx
test eax, eax
je 0x45f250
push ebx
push eax
call esi
mov dword [0x4b15c4], eax
mov eax, dword [0x4b1558]
test eax, eax
je 0x45f2b5
push str.freeaddrinfo
push eax
call esi
mov dword [0x4b15c8], eax
mov eax, dword [0x4b1558]
jmp 0x45f2bb
mov dword [0x4b15c8], edi
test eax, eax
jne 0x45f225
mov dword [0x4b15cc], edi
jmp 0x45f232
mov dword [0x4b15d4], edi
test eax, eax
je 0x45f2ec
push str.WSAAsyncSelect
push eax
call esi
mov dword [0x4b27b8], eax
mov eax, dword [0x4b1550]
jmp 0x45f2f2
mov dword [0x4b27b8], edi
test eax, eax
je 0x45f30a
push str.WSAEventSelect
push eax
call esi
mov dword [0x4b27b4], eax
mov eax, dword [0x4b1550]
jmp 0x45f310
mov dword [0x4b27b4], edi
test eax, eax
je 0x45f328
push str.select
push eax
call esi
mov dword [0x4b27a8], eax
mov eax, dword [0x4b1550]
jmp 0x45f32e
mov dword [0x4b27a8], edi
test eax, eax
je 0x45f346
push str.WSAGetLastError
push eax
call esi
mov dword [0x4b27b0], eax
mov eax, dword [0x4b1550]
jmp 0x45f34c
mov dword [0x4b27b0], edi
test eax, eax
je 0x45f364
push str.WSAEnumNetworkEvents
push eax
call esi
mov dword [0x4b27ac], eax
mov eax, dword [0x4b1550]
jmp 0x45f36a
mov dword [0x4b27ac], edi
test eax, eax
je 0x45f382
push str.WSAStartup
push eax
call esi
mov dword [0x4b1560], eax
mov eax, dword [0x4b1550]
jmp 0x45f388
mov dword [0x4b1560], edi
test eax, eax
je 0x45f3a0
push str.WSACleanup
push eax
call esi
mov dword [0x4b1564], eax
mov eax, dword [0x4b1550]
jmp 0x45f3a6
mov dword [0x4b1564], edi
test eax, eax
je 0x45f3be
push str.closesocket
push eax
call esi
mov dword [0x4b1568], eax
mov eax, dword [0x4b1550]
jmp 0x45f3c4
mov dword [0x4b1568], edi
test eax, eax
je 0x45f3dc
push str.ntohl
push eax
call esi
mov dword [0x4b156c], eax
mov eax, dword [0x4b1550]
jmp 0x45f3e2
mov dword [0x4b156c], edi
test eax, eax
je 0x45f3fa
push str.htonl
push eax
call esi
mov dword [0x4b1570], eax
mov eax, dword [0x4b1550]
jmp 0x45f400
mov dword [0x4b1570], edi
test eax, eax
je 0x45f418
push str.htons
push eax
call esi
mov dword [0x4b1574], eax
mov eax, dword [0x4b1550]
jmp 0x45f41e
mov dword [0x4b1574], edi
test eax, eax
je 0x45f436
push str.ntohs
push eax
call esi
mov dword [0x4b1578], eax
mov eax, dword [0x4b1550]
jmp 0x45f43c
mov dword [0x4b1578], edi
test eax, eax
je 0x45f454
push str.gethostname
push eax
call esi
mov dword [0x4b157c], eax
mov eax, dword [0x4b1550]
jmp 0x45f45a
mov dword [0x4b157c], edi
test eax, eax
je 0x45f472
push str.gethostbyname
push eax
call esi
mov dword [0x4b1580], eax
mov eax, dword [0x4b1550]
jmp 0x45f478
mov dword [0x4b1580], edi
test eax, eax
je 0x45f490
push str.getservbyname
push eax
call esi
mov dword [0x4b1584], eax
mov eax, dword [0x4b1550]
jmp 0x45f496
mov dword [0x4b1584], edi
test eax, eax
je 0x45f4ae
push str.inet_addr
push eax
call esi
mov dword [0x4b1588], eax
mov eax, dword [0x4b1550]
jmp 0x45f4b4
mov dword [0x4b1588], edi
test eax, eax
je 0x45f4cc
push str.inet_ntoa
push eax
call esi
mov dword [0x4b158c], eax
mov eax, dword [0x4b1550]
jmp 0x45f4d2
mov dword [0x4b158c], edi
test eax, eax
je 0x45f4ea
push str.inet_ntop
push eax
call esi
mov dword [0x4b1590], eax
mov eax, dword [0x4b1550]
jmp 0x45f4f0
mov dword [0x4b1590], edi
test eax, eax
je 0x45f508
push str.connect
push eax
call esi
mov dword [0x4b1594], eax
mov eax, dword [0x4b1550]
jmp 0x45f50e
mov dword [0x4b1594], edi
test eax, eax
je 0x45f526
push str.bind
push eax
call esi
mov dword [0x4b1598], eax
mov eax, dword [0x4b1550]
jmp 0x45f52c
mov dword [0x4b1598], edi
test eax, eax
je 0x45f544
push str.setsockopt
push eax
call esi
mov dword [0x4b159c], eax
mov eax, dword [0x4b1550]
jmp 0x45f54a
mov dword [0x4b159c], edi
test eax, eax
je 0x45f562
push str.socket
push eax
call esi
mov dword [0x4b15a0], eax
mov eax, dword [0x4b1550]
jmp 0x45f568
mov dword [0x4b15a0], edi
test eax, eax
je 0x45f580
push str.listen
push eax
call esi
mov dword [0x4b15a4], eax
mov eax, dword [0x4b1550]
jmp 0x45f586
mov dword [0x4b15a4], edi
test eax, eax
je 0x45f59e
push str.send
push eax
call esi
mov dword [0x4b15a8], eax
mov eax, dword [0x4b1550]
jmp 0x45f5a4
mov dword [0x4b15a8], edi
test eax, eax
je 0x45f5bc
push str.shutdown
push eax
call esi
mov dword [0x4b15ac], eax
mov eax, dword [0x4b1550]
jmp 0x45f5c2
mov dword [0x4b15ac], edi
test eax, eax
je 0x45f5da
push str.ioctlsocket
push eax
call esi
mov dword [0x4b15b0], eax
mov eax, dword [0x4b1550]
jmp 0x45f5e0
mov dword [0x4b15b0], edi
test eax, eax
je 0x45f5f8
push str.accept
push eax
call esi
mov dword [0x4b15b4], eax
mov eax, dword [0x4b1550]
jmp 0x45f5fe
mov dword [0x4b15b4], edi
test eax, eax
je 0x45f616
push str.getpeername
push eax
call esi
mov dword [0x4b15b8], eax
mov eax, dword [0x4b1550]
jmp 0x45f61c
mov dword [0x4b15b8], edi
test eax, eax
je 0x45f634
push str.recv
push eax
call esi
mov dword [0x4b15bc], eax
mov eax, dword [0x4b1550]
jmp 0x45f63a
mov dword [0x4b15bc], edi
test eax, eax
je 0x45f64d
push str.WSAIoctl
push eax
call esi
mov dword [0x4b15c0], eax
jmp 0x45f653
mov dword [0x4b15c0], edi
push 2
push 2
call fcn.0045fe36
pop ecx
pop ecx
test al, al
jne 0x45f68a
push edi
push 2
call fcn.0045fe36
pop ecx
pop ecx
test al, al
jne 0x45f68a
push 1
push 1
call fcn.0045fe36
pop ecx
pop ecx
test al, al
jne 0x45f68a
push str.Unable_to_initialise_WinSock
call fcn.0045ae57
pop ecx
push 0x45e885
call fcn.0044d68b
pop ecx
pop edi
pop esi
mov dword [0x4b155c], eax
pop ebx
ret