Function at 0x42d477
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, 0x47623b
call fcn.0044cfd2
mov eax, dword [ebp + 8]
xor ebx, ebx
push ebx
push ebx
push ebx
push ebx
mov esi, ecx
push 0x494150
mov dword [ebp - 0x6b0], eax
mov dword [ebp - 0x6a8], esi
mov byte [ebp - 0x69d], bl
call dword [sym.imp.WININET.dll_InternetOpenA]
cmp eax, ebx
je 0x42d875
push ebx
push ebx
push 3
push ebx
push ebx
push 0x50
push str.p3p.sogou.com
push eax
call dword [sym.imp.WININET.dll_InternetConnectA]
mov dword [ebp - 0x6a4], eax
cmp eax, ebx
je 0x42d875
xor eax, eax
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x68], ebx
mov word [ebp - 0x78], ax
mov dword [ebp - 4], ebx
mov edi, 0x200
lea eax, [ebp - 0x690]
mov dword [ebp - 0x69c], ebx
mov dword [ebp - 0x698], edi
mov dword [ebp - 0x694], eax
mov eax, 0xfde9
push eax
mov byte [ebp - 4], 1
push 0xffffffffffffffff
push dword [esi + 4]
lea esi, [ebp - 0x40]
call fcn.0040945c
mov dword [ebp - 0x6ac], eax
mov eax, 0xfde9
push eax
mov eax, dword [ebp - 0x6a8]
mov byte [ebp - 4], 2
push 0xffffffffffffffff
push dword [eax]
lea esi, [ebp - 0x5c]
call fcn.0040945c
add esp, 0x18
push dword [ebp - 0x6ac]
push str.ver
push eax
lea eax, [ebp - 0x69c]
push str.recv_p2pcrash.php_software
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040f273
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040f273
pop ecx
pop ecx
push ebx
push 1
mov ecx, esi
call fcn.004063f1
push ebx
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call fcn.004063f1
mov eax, dword [ebp - 0x694]
mov ecx, dword [ebp - 0x69c]
push ebx
push 0x806cc200
push ebx
push ebx
push ebx
mov byte [eax + ecx], bl
push dword [ebp - 0x694]
push str.POST
push dword [ebp - 0x6a4]
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x6a8], eax
cmp eax, ebx
je 0x42d850
lea eax, [ebp - 0x40]
call fcn.0042d881
mov byte [ebp - 4], 3
call fcn.00452c51
mov esi, 0xffff
and eax, esi
push eax
call fcn.00452c51
and eax, esi
push eax
call fcn.00452c51
and eax, esi
push eax
call fcn.00452c51
and eax, esi
push eax
lea eax, [ebp - 0x24]
push str._04X_04X_04X_04X
push eax
call fcn.0042d8f2
lea eax, [ebp - 0x24]
add esp, 0x18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x42d619
sub eax, edx
push eax
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x40]
call fcn.0040a686
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x5c]
push str.Content_Type:_multipart_form_data__boundary
push eax
call fcn.0042d90b
add esp, 0xc
cmp dword [ebp - 0x48], 0x10
mov eax, dword [ebp - 0x5c]
jae 0x42d650
lea eax, [ebp - 0x5c]
push 0x20000000
push 0xffffffffffffffff
push eax
push dword [ebp - 0x6a8]
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
lea eax, [ebp - 0x278]
mov dword [ebp - 0x284], ebx
mov dword [ebp - 0x280], edi
mov dword [ebp - 0x27c], eax
lea eax, [ebp - 0x484]
mov dword [ebp - 0x490], ebx
mov dword [ebp - 0x48c], edi
mov dword [ebp - 0x488], eax
push str._r_n_r_n
push str.Content_Type:_application_octet_stream
mov eax, 0x495dac
push eax
push str.Content_Disposition:_form_data__name_report___filename_crashreport.zip_
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x284]
push 0x495dfc
push eax
mov byte [ebp - 4], 6
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040f273
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push str.___r_n
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x490]
push str._r_n__
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040f273
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push ebx
push 0x80
push 3
push ebx
push 1
push SysReAllocString
push dword [ebp - 0x6b0]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x6ac], eax
cmp eax, 0xffffffff
je 0x42d806
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, dword [ebp - 0x490]
add esi, dword [ebp - 0x284]
mov dword [ebp - 0x6a4], eax
add esi, eax
push esi
call fcn.0044bd14
mov ecx, dword [ebp - 0x27c]
mov edi, eax
mov eax, dword [ebp - 0x284]
push eax
mov byte [ecx + eax], bl
push dword [ebp - 0x27c]
push edi
call fcn.0044bfa0
add esp, 0x10
push ebx
lea eax, [ebp - 0x6a4]
push eax
push dword [ebp - 0x6a4]
mov eax, dword [ebp - 0x284]
add eax, edi
push eax
push dword [ebp - 0x6ac]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [ebp - 0x490]
mov ecx, dword [ebp - 0x488]
push eax
mov byte [ecx + eax], bl
mov eax, dword [ebp - 0x284]
push dword [ebp - 0x488]
add eax, edi
add eax, dword [ebp - 0x6a4]
push eax
call fcn.0044bfa0
add esp, 0xc
push dword [ebp - 0x6ac]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
push edi
push ebx
push ebx
push dword [ebp - 0x6a8]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
je 0x42d806
mov byte [ebp - 0x69d], 1
lea eax, [ebp - 0x484]
cmp dword [ebp - 0x488], eax
je 0x42d820
push dword [ebp - 0x488]
call fcn.0044d937
pop ecx
lea eax, [ebp - 0x278]
cmp dword [ebp - 0x27c], eax
je 0x42d83a
push dword [ebp - 0x27c]
call fcn.0044d937
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x5c]
call fcn.004063f1
push ebx
push 1
lea ecx, [ebp - 0x40]
call fcn.004063f1
lea eax, [ebp - 0x690]
cmp dword [ebp - 0x694], eax
je 0x42d86a
push dword [ebp - 0x694]
call fcn.0044d937
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x78]
call fcn.00403656
mov al, byte [ebp - 0x69d]
call fcn.0044d055
ret