Function at 0x40dfca
Capabilities:
Connect to http server
Create http request
Get file size
Read and send data from client to server
Read file on windows
Send data
Send http request

Disassembly:
push 0x6a4
mov eax, 0x42ee90
call fcn.0042d090
mov edi, edx
mov dword [ebp - 0x6a8], edi
mov dword [ebp - 0x6ac], ecx
xor eax, eax
push eax
push eax
push eax
push eax
push 0x439a90
mov bl, al
call dword [sym.imp.WININET.dll_InternetOpenA]
test eax, eax
je 0x40e3b1
xor ecx, ecx
push ecx
push ecx
push 3
push ecx
push ecx
push 0x50
push str.p3p.sogou.com
push eax
call dword [sym.imp.WININET.dll_InternetConnectA]
mov dword [ebp - 0x6a4], eax
test eax, eax
je 0x40e3b1
and dword [ebp - 0x5c], 0
lea ecx, [ebp - 0x6c]
push 0
mov dword [ebp - 0x58], 7
call fcn.004026e0
and dword [ebp - 4], 0
lea eax, [ebp - 0x694]
and dword [ebp - 0x6a0], 0
mov dword [ebp - 0x69c], 0x200
mov dword [ebp - 0x698], eax
xor eax, eax
lea ecx, [ebp - 0x3c]
inc eax
mov esi, 0xfde9
mov byte [ebp - 4], al
mov edx, dword [edi + 4]
push esi
push 0xffffffffffffffff
call fcn.00409d37
mov edi, eax
mov edx, dword [ebp - 0x6a8]
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 2
push esi
push 0xffffffffffffffff
mov edx, dword [edx]
call fcn.00409d37
add esp, 0x10
lea ecx, [ebp - 0x6a0]
mov edx, str.recv_p2pcrash.php_software
mov esi, eax
call fcn.0040a70c
mov edx, esi
mov ecx, eax
call fcn.0040a596
mov edx, str.ver
mov ecx, eax
call fcn.0040a70c
mov edx, edi
mov ecx, eax
call fcn.0040a596
push 0
push 1
lea ecx, [ebp - 0x54]
call fcn.00408008
xor eax, eax
lea ecx, [ebp - 0x3c]
inc eax
push 0
push eax
mov byte [ebp - 4], al
call fcn.00408008
mov ecx, dword [ebp - 0x698]
xor edx, edx
mov eax, dword [ebp - 0x6a0]
push edx
push 0x806cc200
push edx
push edx
push edx
mov byte [ecx + eax], dl
push dword [ebp - 0x698]
push str.POST
push dword [ebp - 0x6a4]
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov esi, eax
mov dword [ebp - 0x6b0], esi
test esi, esi
je 0x40e38f
push ecx
push ecx
lea ecx, [ebp - 0x3c]
call fcn.0040e627
mov byte [ebp - 4], 3
call fcn.00422bab
movzx eax, ax
push eax
call fcn.00422bab
movzx eax, ax
push eax
call fcn.00422bab
movzx eax, ax
push eax
call fcn.00422bab
movzx eax, ax
push eax
lea eax, [ebp - 0x24]
push str._04X_04X_04X_04X
push eax
call fcn.0040e41f
add esp, 0x18
lea ecx, [ebp - 0x24]
call fcn.0040a196
push eax
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x3c]
call fcn.0040e586
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x54]
call fcn.0040e43a
cmp dword [ebp - 0x40], 0x10
lea eax, [ebp - 0x54]
mov dword [esp], 0x20000000
cmovae eax, dword [ebp - 0x54]
push 0xffffffffffffffff
push eax
push esi
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
and dword [ebp - 0x280], 0
lea eax, [ebp - 0x274]
mov ecx, 0x200
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x27c], ecx
and dword [ebp - 0x490], 0
lea eax, [ebp - 0x484]
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x488], eax
mov edx, 0x43a1dc
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x280]
call fcn.0040a70c
lea edx, [ebp - 0x3c]
mov ecx, eax
call fcn.0040a596
mov esi, 0x43a188
mov ecx, eax
mov edx, esi
call fcn.0040a70c
mov edx, str.Content_Disposition:_form_data__name_report___filename_crashreport.zip_
mov ecx, eax
call fcn.0040a70c
mov edx, esi
mov ecx, eax
call fcn.0040a70c
mov edx, str.Content_Type:_application_octet_stream
mov ecx, eax
call fcn.0040a70c
mov edx, str._r_n_r_n
mov ecx, eax
call fcn.0040a70c
mov edx, str._r_n__
lea ecx, [ebp - 0x490]
call fcn.0040a70c
lea edx, [ebp - 0x3c]
mov ecx, eax
call fcn.0040a596
mov edx, str.___r_n
mov ecx, eax
call fcn.0040a70c
push 0
push 0x80
push 3
push 0
xor esi, esi
inc esi
push esi
push SysReAllocString
push dword [ebp - 0x6ac]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x6a8], eax
cmp eax, 0xffffffff
je 0x40e345
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, dword [ebp - 0x490]
add edi, dword [ebp - 0x280]
add edi, eax
mov dword [ebp - 0x6a4], eax
push edi
call fcn.0041747f
mov edx, dword [ebp - 0x280]
mov esi, eax
pop ecx
mov ecx, dword [ebp - 0x278]
push edx
mov byte [ecx + edx], 0
push dword [ebp - 0x278]
push esi
call fcn.0042d5d0
add esp, 0xc
lea eax, [ebp - 0x6a4]
push 0
push eax
push dword [ebp - 0x6a4]
mov eax, dword [ebp - 0x280]
add eax, esi
push eax
push dword [ebp - 0x6a8]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [ebp - 0x490]
mov eax, dword [ebp - 0x488]
push ecx
mov byte [eax + ecx], 0
mov eax, dword [ebp - 0x280]
push dword [ebp - 0x488]
add eax, esi
add eax, dword [ebp - 0x6a4]
push eax
call fcn.0042d5d0
add esp, 0xc
push dword [ebp - 0x6a8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push edi
push esi
push 0
push 0
push dword [ebp - 0x6b0]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
push 1
test eax, eax
movzx ebx, bl
pop esi
cmovne ebx, esi
lea eax, [ebp - 0x484]
cmp dword [ebp - 0x488], eax
je 0x40e35f
push dword [ebp - 0x488]
call fcn.0041aac0
pop ecx
lea eax, [ebp - 0x274]
cmp dword [ebp - 0x278], eax
je 0x40e379
push dword [ebp - 0x278]
call fcn.0041aac0
pop ecx
push 0
push esi
lea ecx, [ebp - 0x54]
call fcn.00408008
push 0
push esi
lea ecx, [ebp - 0x3c]
call fcn.00408008
lea eax, [ebp - 0x694]
cmp dword [ebp - 0x698], eax
je 0x40e3a9
push dword [ebp - 0x698]
call fcn.0041aac0
pop ecx
lea ecx, [ebp - 0x6c]
call fcn.00402610
mov al, bl
call fcn.0042d04b
ret