Function at 0x41b710
Capabilities:
Create tcp socket
Create udp socket
Set socket configuration

Disassembly:
sub esp, 0x1c
mov eax, dword [0x4353ac]
push esi
mov esi, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x14d8]
test eax, eax
mov dword [esp + 8], 0x8000
mov dword [esp + 4], 1
jl 0x41b74b
push eax
call sub.WS2_32.dll_closesocket
mov dword [esi + 0x14d8], 0xffffffff
mov ecx, esi
mov dword [esi + 0x14dc], 0xffffffff
mov dword [esi + 0xa798], 1
call fcn.00417680
test eax, eax
je 0x41b776
push 0x14
push str.TCP_init_failed_in_soap_bind__
jmp 0x41b986
push 0
push 1
push 2
mov dword [esi + 0xa798], 0
call sub.WS2_32.dll_socket
test eax, eax
mov dword [esi + 0x14d8], eax
jge 0x41b7ac
call sub.WS2_32.dll_WSAGetLastError
push 0x14
mov dword [esi + 0xa79c], eax
push str.TCP_socket_failed_in_soap_bind__
jmp 0x41b986
mov ecx, dword [esi + 0x48]
test ecx, ecx
je 0x41b7e1
push 4
lea edx, [esp + 8]
push edx
push ecx
push 0xffff
push eax
call sub.WS2_32.dll_setsockopt
test eax, eax
je 0x41b7e1
call sub.WS2_32.dll_WSAGetLastError
push 0x14
mov dword [esi + 0xa79c], eax
push str.TCP_setsockopt_failed_in_soap_bind__
jmp 0x41b986
cmp word [esi + 0xa468], 0
je 0x41b820
mov ecx, dword [esi + 0x14d8]
push 4
lea eax, [esp + 8]
push eax
push 8
push 0xffff
push ecx
call sub.WS2_32.dll_setsockopt
test eax, eax
je 0x41b820
call sub.WS2_32.dll_WSAGetLastError
push 0x14
mov dword [esi + 0xa79c], eax
push str.TCP_setsockopt_SO_KEEPALIVE_failed_in_soap_bind__
jmp 0x41b986
mov eax, dword [esi + 0x14d8]
push 4
lea edx, [esp + 0xc]
push edx
push 0x1001
push 0xffff
push eax
call sub.WS2_32.dll_setsockopt
test eax, eax
je 0x41b858
call sub.WS2_32.dll_WSAGetLastError
push 0x14
mov dword [esi + 0xa79c], eax
push str.TCP_setsockopt_SO_SNDBUF_failed_in_soap_bind__
jmp 0x41b986
mov edx, dword [esi + 0x14d8]
push 4
lea ecx, [esp + 0xc]
push ecx
push 0x1002
push 0xffff
push edx
call sub.WS2_32.dll_setsockopt
test eax, eax
je 0x41b890
call sub.WS2_32.dll_WSAGetLastError
push 0x14
mov dword [esi + 0xa79c], eax
push str.TCP_setsockopt_SO_RCVBUF_failed_in_soap_bind__
jmp 0x41b986
mov ecx, dword [esi + 0x14d8]
push 4
lea eax, [esp + 8]
push eax
push 1
push 6
push ecx
call sub.WS2_32.dll_setsockopt
test eax, eax
je 0x41b8c2
call sub.WS2_32.dll_WSAGetLastError
push 0x14
mov dword [esi + 0xa79c], eax
push str.TCP_setsockopt_TCP_NODELAY_failed_in_soap_bind__
jmp 0x41b986
mov ecx, dword [esp + 0x28]
xor edx, edx
test ecx, ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], edx
mov word [esp + 0xc], 2
mov dword [esi + 0xa798], 2
je 0x41b907
push esi
lea eax, [esp + 0x14]
call fcn.00417750
add esp, 4
test eax, eax
je 0x41b912
push 0x14
push str.TCP_get_host_by_name_failed_in_soap_bind__
jmp 0x41b986
push 0
call sub.WS2_32.dll_htonl
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x2c]
push eax
call sub.WS2_32.dll_htons
mov edx, dword [esi + 0x14d8]
push 0x10
lea ecx, [esp + 0x10]
push ecx
push edx
mov word [esp + 0x1a], ax
mov dword [esi + 0xa798], 0
call sub.WS2_32.dll_bind
test eax, eax
jne 0x41b96b
mov eax, dword [esp + 0x30]
mov ecx, dword [esi + 0x14d8]
push eax
push ecx
call sub.WS2_32.dll_listen
test eax, eax
jne 0x41b96b
mov eax, dword [esi + 0x14d8]
pop esi
mov ecx, dword [esp + 0x18]
call fcn.00421df2
add esp, 0x1c
ret
call sub.WS2_32.dll_WSAGetLastError
push esi
mov dword [esi + 0xa79c], eax
call fcn.00417810
add esp, 4
push 0x14
push str.TCP_bind_failed_in_soap_bind__
mov eax, esi
call fcn.0041b200
push eax
push esi
call fcn.0041a480
mov ecx, dword [esp + 0x2c]
add esp, 0x10
or eax, 0xffffffff
pop esi
call fcn.00421df2
add esp, 0x1c
ret