Function at 0x10005fc0
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, 0x13c
push ebx
push esi
push edi
push eax
xor eax, eax
xor eax, eax
xor eax, eax
xor eax, eax
xor eax, eax
xor eax, eax
je 0x10005fe2
xor byte [ecx], dh
xor bl, byte [eax + 0x66]
mov dword [ebp - 0x10], 0xc0330000
pop eax
mov word [ebp - 0x10], 0
xor eax, eax
mov dword [ebp - 0xe], eax
mov dword [ebp - 0xa], eax
mov dword [ebp - 6], eax
mov word [ebp - 2], ax
mov dword [ebp - 0x18], 0x10
mov dword [ebp - 0x128], 0
mov byte [ebp - 0x120], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x11f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x120]
push edx
call dword [sym.imp.kernel32.dll_lstrcpy]
lea eax, [ebp - 0x120]
push eax
call dword [sym.imp.ws2_32.dll__inet_addr]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xffffffff
jne 0x100060d8
lea ecx, [ebp - 0x120]
push ecx
call dword [sym.imp.ws2_32.dll__gethostbyname]
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 0
jne 0x10006070
xor eax, eax
jmp 0x100061bf
mov word [ebp - 0x138], 0
xor edx, edx
mov dword [ebp - 0x136], edx
mov dword [ebp - 0x132], edx
mov dword [ebp - 0x12e], edx
mov word [ebp - 0x12a], dx
mov eax, dword [ebp - 0x13c]
movsx ecx, word [eax + 0xa]
mov edx, dword [ebp - 0x13c]
mov eax, dword [edx + 0xc]
mov esi, dword [eax]
lea edi, [ebp - 0x134]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0x134]
push eax
call dword [sym.imp.ws2_32.dll__inet_ntoa]
push eax
lea ecx, [ebp - 0x120]
push ecx
call dword [sym.imp.kernel32.dll_lstrcpy]
lea edx, [ebp - 0x120]
push edx
call dword [sym.imp.ws2_32.dll__inet_addr]
mov dword [ebp - 0xc], eax
mov ax, word [ebp + 0xc]
push eax
call dword [sym.imp.ws2_32.dll__htons]
mov word [ebp - 0xe], ax
mov word [ebp - 0x10], 2
push 0
push 1
push 2
call dword [sym.imp.ws2_32.dll__socket]
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 0xffffffff
jne 0x1000611f
xor eax, eax
jmp 0x100061bf
mov ecx, dword [ebp - 0x18]
push ecx
lea edx, [ebp - 0x10]
push edx
mov eax, dword [ebp - 0x128]
push eax
call dword [sym.imp.ws2_32.dll__connect]
cmp eax, 0xffffffff
jne 0x1000614a
mov ecx, dword [ebp - 0x128]
push ecx
call dword [sym.imp.ws2_32.dll__closesocket]
xor eax, eax
jmp 0x100061bf
mov dword [ebp - 0x124], 1
push 4
lea edx, [ebp - 0x124]
push edx
push 1
push 6
mov eax, dword [ebp - 0x128]
push eax
call dword [sym.imp.ws2_32.dll__setsockopt]
test eax, eax
je 0x10006183
mov ecx, dword [ebp - 0x128]
push ecx
call dword [sym.imp.ws2_32.dll__closesocket]
xor eax, eax
jmp 0x100061bf
mov dword [ebp - 0x14], 1
push 4
lea edx, [ebp - 0x14]
push edx
push 8
push 0xffff
mov eax, dword [ebp - 0x128]
push eax
call dword [sym.imp.ws2_32.dll__setsockopt]
test eax, eax
je 0x100061b9
mov ecx, dword [ebp - 0x128]
push ecx
call dword [sym.imp.ws2_32.dll__closesocket]
xor eax, eax
jmp 0x100061bf
mov eax, dword [ebp - 0x128]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret