Function at 0x4888a0
Capabilities:
Link many functions at runtime

Disassembly:
push ebx
sub esp, 0x18
mov dword [esp], str.ws2_32.dll
call fcn.004d4420
test eax, eax
mov dword [0x521ed0], eax
mov dword [0x521d24], eax
je 0x488f50
mov dword [esp + 4], str.getaddrinfo
mov dword [esp], eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call ebx
sub esp, 8
test eax, eax
je 0x488f75
mov eax, dword [0x521ed0]
test eax, eax
je 0x488e00
mov dword [esp + 4], str.getaddrinfo
mov dword [esp], eax
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521edc], eax
test edx, edx
je 0x489002
mov dword [esp], edx
mov dword [esp + 4], str.freeaddrinfo
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521ed8], eax
test edx, edx
je 0x48893f
mov dword [esp + 4], str.getnameinfo
mov dword [esp], edx
call ebx
sub esp, 8
mov edx, dword [0x521d24]
xor eax, eax
test edx, edx
je 0x48895b
mov dword [esp + 4], str.WSAAddressToStringA
mov dword [esp], edx
call ebx
sub esp, 8
mov dword [0x521ed4], eax
mov eax, dword [0x521ed0]
test eax, eax
je 0x488e20
mov dword [esp + 4], str.WSAAsyncSelect
mov dword [esp], eax
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x5226d4], eax
test edx, edx
je 0x48901d
mov dword [esp], edx
mov dword [esp + 4], str.WSAEventSelect
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x5226e0], eax
test edx, edx
je 0x488e34
mov dword [esp], edx
mov dword [esp + 4], str.select
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x5226d8], eax
test edx, edx
je 0x489031
mov dword [esp], edx
mov dword [esp + 4], str.WSAGetLastError
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x5226dc], eax
test edx, edx
je 0x488e48
mov dword [esp], edx
mov dword [esp + 4], str.WSAEnumNetworkEvents
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x5226d0], eax
test edx, edx
je 0x489045
mov dword [esp], edx
mov dword [esp + 4], str.WSAStartup
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f40], eax
test edx, edx
je 0x488e5c
mov dword [esp], edx
mov dword [esp + 4], str.WSACleanup
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f3c], eax
test edx, edx
je 0x489059
mov dword [esp], edx
mov dword [esp + 4], str.closesocket
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f38], eax
test edx, edx
je 0x488e70
mov dword [esp], edx
mov dword [esp + 4], str.ntohl
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f34], eax
test edx, edx
je 0x48906d
mov dword [esp], edx
mov dword [esp + 4], str.htonl
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f30], eax
test edx, edx
je 0x488e84
mov dword [esp], edx
mov dword [esp + 4], str.htons
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f2c], eax
test edx, edx
je 0x489081
mov dword [esp], edx
mov dword [esp + 4], str.ntohs
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f28], eax
test edx, edx
je 0x488e98
mov dword [esp], edx
mov dword [esp + 4], str.gethostname
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f24], eax
test edx, edx
je 0x489095
mov dword [esp], edx
mov dword [esp + 4], str.gethostbyname
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f20], eax
test edx, edx
je 0x488eac
mov dword [esp], edx
mov dword [esp + 4], str.getservbyname
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f1c], eax
test edx, edx
je 0x4890a9
mov dword [esp], edx
mov dword [esp + 4], str.inet_addr
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f18], eax
test edx, edx
je 0x488ec0
mov dword [esp], edx
mov dword [esp + 4], str.inet_ntoa
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f14], eax
test edx, edx
je 0x4890bd
mov dword [esp], edx
mov dword [esp + 4], str.inet_ntop
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f10], eax
test edx, edx
je 0x488ed4
mov dword [esp], edx
mov dword [esp + 4], str.connect
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f0c], eax
test edx, edx
je 0x4890d1
mov dword [esp], edx
mov dword [esp + 4], str.bind
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f08], eax
test edx, edx
je 0x488ee8
mov dword [esp], edx
mov dword [esp + 4], str.setsockopt
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f04], eax
test edx, edx
je 0x4890e5
mov dword [esp], edx
mov dword [esp + 4], str.socket
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521f00], eax
test edx, edx
je 0x488efc
mov dword [esp], edx
mov dword [esp + 4], str.listen
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521efc], eax
test edx, edx
je 0x4890f9
mov dword [esp], edx
mov dword [esp + 4], str.send
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521ef8], eax
test edx, edx
je 0x488f10
mov dword [esp], edx
mov dword [esp + 4], str.shutdown
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521ef4], eax
test edx, edx
je 0x48910d
mov dword [esp], edx
mov dword [esp + 4], str.ioctlsocket
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521ef0], eax
test edx, edx
je 0x488f24
mov dword [esp], edx
mov dword [esp + 4], str.accept
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521eec], eax
test edx, edx
je 0x489121
mov dword [esp], edx
mov dword [esp + 4], str.getpeername
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521ee8], eax
test edx, edx
je 0x488f38
mov dword [esp], edx
mov dword [esp + 4], str.recv
call ebx
mov edx, dword [0x521ed0]
sub esp, 8
mov dword [0x521ee4], eax
test edx, edx
je 0x48913c
mov dword [esp + 4], str.WSAIoctl
mov dword [esp], edx
call ebx
sub esp, 8
mov dword [0x521ee0], eax
mov dword [esp + 4], 0x521d40
mov dword [esp], 0x202
call dword [0x521f40]
sub esp, 8
test eax, eax
je 0x488fd4
mov dword [esp + 4], 0x521d40
mov dword [esp], 2
call dword [0x521f40]
sub esp, 8
test eax, eax
je 0x488ff0
mov dword [esp + 4], 0x521d40
mov dword [esp], 0x101
call dword [0x521f40]
sub esp, 8
test eax, eax
jne 0x489011
cmp byte [0x521d40], 1
jne 0x489011
mov dword [esp], 0x488050
call fcn.004d1410
mov dword [0x521f44], eax
add esp, 0x18
pop ebx
ret
mov dword [0x521edc], 0
mov dword [0x521ed8], 0
jmp 0x48893f
mov dword [0x5226d4], 0
mov dword [0x5226e0], 0
mov dword [0x5226d8], 0
mov dword [0x5226dc], 0
mov dword [0x5226d0], 0
mov dword [0x521f40], 0
mov dword [0x521f3c], 0
mov dword [0x521f38], 0
mov dword [0x521f34], 0
mov dword [0x521f30], 0
mov dword [0x521f2c], 0
mov dword [0x521f28], 0
mov dword [0x521f24], 0
mov dword [0x521f20], 0
mov dword [0x521f1c], 0
mov dword [0x521f18], 0
mov dword [0x521f14], 0
mov dword [0x521f10], 0
mov dword [0x521f0c], 0
mov dword [0x521f08], 0
mov dword [0x521f04], 0
mov dword [0x521f00], 0
mov dword [0x521efc], 0
mov dword [0x521ef8], 0
mov dword [0x521ef4], 0
mov dword [0x521ef0], 0
mov dword [0x521eec], 0
mov dword [0x521ee8], 0
mov dword [0x521ee4], 0
xor eax, eax
jmp 0x488d74
mov dword [esp], str.wsock32.dll
call fcn.004d4420
test eax, eax
mov dword [0x521ed0], eax
jne 0x4888c2
mov dword [esp], str.Unable_to_load_any_WinSock_library
call fcn.00410440
mov dword [esp], str.wship6.dll
call fcn.004d4420
test eax, eax
mov dword [0x521d20], eax
je 0x48893f
mov dword [esp + 4], str.getaddrinfo
mov dword [esp], eax
call ebx
mov dword [0x521edc], eax
mov eax, dword [0x521d20]
sub esp, 8
test eax, eax
je 0x489002
mov dword [esp + 4], str.freeaddrinfo
mov dword [esp], eax
call ebx
mov edx, dword [0x521d20]
sub esp, 8
mov dword [0x521ed8], eax
test edx, edx
jne 0x48892f
jmp 0x48893f
cmp byte [0x521d40], 2
jne 0x488d99
jmp 0x488de6
cmp byte [0x521d40], 2
jne 0x488db9
jmp 0x488de6
mov dword [0x521ed8], 0
jmp 0x48893f
mov dword [esp], str.Unable_to_initialise_WinSock
call fcn.00410440
mov dword [0x5226e0], 0
mov dword [0x5226d8], 0
mov dword [0x5226dc], 0
mov dword [0x5226d0], 0
mov dword [0x521f40], 0
mov dword [0x521f3c], 0
mov dword [0x521f38], 0
mov dword [0x521f34], 0
mov dword [0x521f30], 0
mov dword [0x521f2c], 0
mov dword [0x521f28], 0
mov dword [0x521f24], 0
mov dword [0x521f20], 0
mov dword [0x521f1c], 0
mov dword [0x521f18], 0
mov dword [0x521f14], 0
mov dword [0x521f10], 0
mov dword [0x521f0c], 0
mov dword [0x521f08], 0
mov dword [0x521f04], 0
mov dword [0x521f00], 0
mov dword [0x521efc], 0
mov dword [0x521ef8], 0
mov dword [0x521ef4], 0
mov dword [0x521ef0], 0
mov dword [0x521eec], 0
mov dword [0x521ee8], 0
mov dword [0x521ee4], 0
xor eax, eax
jmp 0x488d74
xor eax, eax
jmp 0x488d74