Function at 0x10006b70
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, eax
sub esp, 0x48
test byte [0x10047174], 8
jne 0x10006c10
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x44]
xor ecx, ecx
mov edx, 0x11
mov dword [esp + 4], 0
mov dword [esp], 0
call sym._FTP_SendCommandA
test eax, eax
jne 0x10006bc0
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 0x14]
mov eax, ebx
call sym._FTP_ReceiveResponse
test eax, eax
je 0x10006bb2
cmp eax, 0xe3
je 0x10006c40
mov edx, 0x2efe
cmp eax, 0x1aa
je 0x10006bff
mov edx, 0x2eef
cmp eax, 0x212
je 0x10006bff
cmp eax, 0x1a9
mov edx, 0x2ee3
mov eax, 0x2efd
cmove edx, eax
mov dword [esp], edx
call sym._INTERNET_SetLastError
jmp 0x10006bb2
mov dword [esp + 0xc], 0x10049824
mov dword [esp + 8], str.FTP_DoPassive
mov dword [esp + 4], 0x10047174
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x10006b88
call sym._INTERNET_GetResponseBuffer
lea esi, [eax + 4]
movzx eax, byte [eax + 4]
lea edx, [eax - 0x30]
cmp dl, 9
ja 0x10006c6d
jmp 0x10006cb0
movzx eax, byte [esi + 1]
inc esi
lea edx, [eax - 0x30]
cmp dl, 9
jbe 0x10006cb0
test al, al
jne 0x10006c60
test byte [0x10047174], 2
je 0x10006bb2
mov dword [esp + 0xc], str.no_address_found_in_response__aborting_n
mov dword [esp + 8], str.FTP_DoPassive
mov dword [esp + 4], 0x10047174
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_2
jmp 0x10006bb2
test al, al
je 0x10006c71
lea eax, [ebp - 0x10]
lea edi, [ebp - 0x24]
mov dword [esp + 4], str._d__d__d__d__d__d
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x14]
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x18]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x1c]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x20]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp], esi
call sym._sscanf
cmp eax, 6
je 0x10006d30
test byte [0x10047174], 2
je 0x10006bb2
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], str.unknown_response_address_format__s__aborting_n
mov dword [esp + 8], str.FTP_DoPassive
mov dword [esp + 4], 0x10047174
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_2
jmp 0x10006bb2
mov eax, edi
lea edx, [ebp - 0xc]
lea esi, [esi]
and dword [eax], 0xff
add eax, 4
cmp edx, eax
jne 0x10006d38
mov eax, dword [ebx + 0x54]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
mov dword [ebp - 0x34], eax
mov eax, dword [ebx + 0x5c]
mov dword [esp], 2
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx + 0x60]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x24]
mov byte [ebp - 0x30], al
mov eax, dword [ebp - 0x20]
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 0x2e], al
mov eax, dword [ebp - 0x18]
mov byte [ebp - 0x2d], al
mov eax, dword [ebp - 0x14]
mov byte [ebp - 0x32], al
mov eax, dword [ebp - 0x10]
mov byte [ebp - 0x31], al
call dword [sym.imp.ws2_32.dll_socket]
sub esp, 0xc
mov esi, eax
cmp eax, 0xffffffff
je 0x10006bb2
lea eax, [ebp - 0x34]
mov dword [esp + 8], 0x10
mov dword [esp + 4], eax
mov dword [esp], esi
call dword [sym.imp.ws2_32.dll_connect]
sub esp, 0xc
test eax, eax
jne 0x10006dd2
mov dword [ebx + 0x4c], esi
mov eax, 1
jmp 0x10006bb4
test byte [0x10047174], 2
jne 0x10006dec
mov dword [esp], esi
call dword [sym.imp.ws2_32.dll_closesocket]
sub esp, 4
jmp 0x10006bb2
mov dword [esp + 0xc], str.cant_connect_passive_FTP_data_port._n
mov dword [esp + 8], str.FTP_DoPassive
mov dword [esp + 4], 0x10047174
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_2
jmp 0x10006ddb