Function at 0x4419d5
Capabilities:
Create tcp socket
Create udp socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0
push 1
push 2
call sub.WS2_32.dll_socket
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x24], eax
mov edx, dword [ebp + 0xc]
cmp dword [edx + 0x24], 0
jge 0x441a3c
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x2728
jne 0x441a24
push 1
mov eax, dword [ebp + 0xc]
push eax
call fcn.004024e6
add esp, 8
push eax
push str.opening_stream_socket_to_server__s:_No_more_sockets
call fcn.004014f1
add esp, 8
xor eax, eax
jmp 0x441c1e
mov ecx, dword [ebp + 0xc]
push ecx
push str.opening_stream_socket_to_server__s:_s
call fcn.004018f7
add esp, 8
xor eax, eax
jmp 0x441c1e
mov edx, dword [0x57082c]
add edx, 1
mov dword [0x57082c], edx
cmp dword [0x57082c], 0x3fc
jl 0x441a72
mov eax, dword [ebp + 0xc]
add eax, 0x29
push eax
push str.No_more_connections_allowed___s_
call fcn.004014f1
add esp, 8
xor eax, eax
jmp 0x441c1e
mov word [0x56e7aa], 0
push 0x10
push 0
push 0x570808
call fcn.0049cf10
add esp, 0xc
mov word [0x570808], 2
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x14]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.004012c1
add esp, 8
mov word [0x57080a], 0
mov ecx, dword [0x5ccc44]
mov dword [0x57080c], ecx
mov word [0x570808], 2
mov edx, dword [ebp + 8]
cmp dword [edx + 0x18], 0
je 0x441af8
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x18]
push ecx
push 0x4c90d4
call fcn.0049d210
add esp, 8
test eax, eax
je 0x441af8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x18]
push eax
call sub.WS2_32.dll_inet_addr
mov dword [0x57080c], eax
push 0x10
push 0x570808
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x24]
push edx
call sub.WS2_32.dll_bind
cmp eax, 0xffffffff
jne 0x441b28
mov eax, dword [ebp + 0xc]
push eax
push str.error_binding_to_local_port_for__s:_s
call fcn.004018f7
add esp, 8
xor eax, eax
jmp 0x441c1e
push 0x10
push 0
push 0x570808
call fcn.0049cf10
add esp, 0xc
mov word [0x570808], 2
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x14]
movzx eax, byte [edx]
movzx ecx, byte [eax + 0x4c46b0]
and ecx, 0x10
test ecx, ecx
je 0x441b74
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3c], 0xffffffff
jne 0x441b74
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x14]
push ecx
call sub.WS2_32.dll_inet_addr
mov edx, dword [ebp + 8]
mov dword [edx + 0x3c], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 0x3c], 0xffffffff
jne 0x441bb0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x34c]
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 0
jne 0x441b96
xor eax, eax
jmp 0x441c1e
push 4
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp + 8]
add eax, 0x3c
push eax
call fcn.0049d370
add esp, 0xc
push 4
mov ecx, dword [ebp + 8]
add ecx, 0x3c
push ecx
push 0x57080c
call fcn.0049d370
add esp, 0xc
push 4
mov edx, dword [ebp + 8]
add edx, 0x3c
push edx
mov eax, dword [ebp + 0xc]
add eax, 0x344
push eax
call fcn.0049d370
add esp, 0xc
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0x2c]
test edx, edx
jle 0x441bf7
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0x2c]
mov dword [ebp - 8], ecx
jmp 0x441c00
mov edx, dword [0x4c3140]
mov dword [ebp - 8], edx
mov ax, word [ebp - 8]
push eax
call sub.WS2_32.dll_htons
mov word [0x57080a], ax
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 0x10
mov eax, 0x570808
mov esp, ebp
pop ebp
ret