Function at 0x1003c830
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Resolve dns
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc08
mov eax, dword [0x10086ba0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0xbf0], eax
mov dword [ebp - 0xbe8], 1
cmp dword [ebp - 0xbf0], 0
jne 0x1003c86d
xor al, al
jmp 0x1003cac7
push 4
mov ecx, dword [ebp - 0xbf0]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x5f8]
push ecx
call fcn.10013640
add esp, 0xc
push 8
push 0
lea edx, [ebp - 0x5f4]
push edx
call fcn.100139b0
add esp, 0xc
push 0x5dc
push 0
lea eax, [ebp - 0xbe0]
push eax
call fcn.100139b0
add esp, 0xc
push 0x5dc
push 0
lea ecx, [ebp - 0x5e8]
push ecx
call fcn.100139b0
add esp, 0xc
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x5ec], eax
call fcn.1003b360
mov dword [ebp - 0xbf4], eax
cmp dword [ebp - 0x5ec], 0
jae 0x1003c903
push 0x10072c80
call fcn.10016d4e
add esp, 4
xor al, al
jmp 0x1003cac7
mov edx, 2
mov word [ebp - 0x5fc], dx
movzx eax, word [ebp + 0xc]
push eax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x5fa], ax
push 4
lea ecx, [ebp - 0xbe8]
push ecx
push 0xfffffffffffffffb
push 0xffff
mov edx, dword [ebp - 0x5ec]
push edx
call dword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
jge 0x1003c94e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebp - 0xbec], eax
push 0x10
lea eax, [ebp - 0x5fc]
push eax
mov ecx, dword [ebp - 0x5ec]
push ecx
call dword [sym.imp.WS2_32.dll_connect]
test eax, eax
jge 0x1003c96f
xor al, al
jmp 0x1003cac7
mov edx, dword [0x10088138]
add edx, 1
mov dword [0x10088138], edx
mov eax, dword [0x10088114]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
movzx edx, word [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [0x1008810c]
push edx
push 0xffffffffffffffff
push 0x5dc
lea eax, [ebp - 0xbe0]
push eax
call fcn.10016910
add esp, 0x24
mov dword [ebp - 0xbf8], 1
mov dword [ebp - 0xc00], 0
mov dword [ebp - 0xc04], 0
mov dword [ebp - 0xc08], 0
mov ecx, dword [ebp + 0x18]
push ecx
lea edx, [ebp - 0x5e8]
push edx
lea eax, [ebp - 0xbe0]
push eax
mov ecx, dword [ebp - 0x5ec]
push ecx
call fcn.10060af0
add esp, 0x10
mov dword [ebp - 0xbfc], eax
cmp dword [ebp - 0xbfc], 0
jle 0x1003caa9
push 3
push 0x10072c88
lea edx, [ebp - 0x5e8]
push edx
call fcn.1003c5d0
add esp, 0xc
mov dword [ebp - 0xc00], eax
cmp dword [ebp - 0xc00], 0
je 0x1003ca96
mov eax, dword [ebp - 0xc00]
push eax
call fcn.10013a30
add esp, 4
mov dword [ebp - 0xbe4], eax
push 0x80
push 0
mov ecx, dword [ebp + 0x18]
add ecx, 0x914
push ecx
call fcn.100139b0
add esp, 0xc
mov edx, dword [ebp - 0xbe4]
push edx
mov eax, dword [ebp - 0xc00]
push eax
mov ecx, dword [ebp + 0x18]
add ecx, 0x914
push ecx
call fcn.10013640
add esp, 0xc
push 2
mov edx, dword [ebp - 0x5ec]
push edx
call dword [sym.imp.WS2_32.dll_shutdown]
mov al, 1
jmp 0x1003cac7
push 2
mov eax, dword [ebp - 0x5ec]
push eax
call dword [sym.imp.WS2_32.dll_shutdown]
xor al, al
jmp 0x1003cac7
push 2
mov ecx, dword [ebp - 0x5ec]
push ecx
call dword [sym.imp.WS2_32.dll_shutdown]
mov edx, dword [ebp - 0x5ec]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
xor al, al
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1001362b
mov esp, ebp
pop ebp
ret