Function at 0x402903
Capabilities:
Check http status code
Connect to http server
Create http request
Parse url
Send data
Send http request

Disassembly:
push 0x4e8
mov eax, 0x418e94
call fcn.0040840e
mov eax, dword [ebp + 8]
mov dword [ebp - 0x4ac], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp + 0x10]
xor ebx, ebx
mov edi, edx
mov dword [ebp - 0x4a8], ecx
mov dword [ebp - 0x4a0], eax
cmp eax, ebx
je 0x40293d
mov dword [eax], ebx
mov esi, dword [ecx + 4]
mov dword [ebp - 0x49c], esi
mov eax, dword [esi]
mov dword [ebp - 0x498], eax
jmp 0x4029bc
mov edx, dword [eax + 0x1c]
add eax, 0xc
cmp edx, ebx
je 0x402a69
mov dword [ebp - 0x494], ebx
jbe 0x4029ab
cmp dword [eax + 0x14], 8
jb 0x402970
mov ecx, dword [eax]
jmp 0x402972
mov ecx, eax
mov esi, dword [ebp - 0x494]
movzx ecx, word [ecx + esi*2]
cmp ecx, 0x20
jb 0x402a69
cmp ecx, 0x22
je 0x402a69
cmp ecx, 0x7f
ja 0x402a69
inc dword [ebp - 0x494]
cmp dword [ebp - 0x494], edx
jb 0x402966
mov esi, dword [ebp - 0x49c]
lea eax, [ebp - 0x498]
call fcn.00401a6d
mov eax, dword [ebp - 0x498]
cmp eax, esi
jne 0x402950
push 0x3c
pop esi
push esi
lea eax, [ebp - 0x4f4]
push ebx
push eax
call fcn.0040f560
lea eax, [ebp - 0x38]
mov dword [ebp - 0x4f0], eax
lea eax, [ebp - 0x238]
mov dword [ebp - 0x4e4], eax
mov eax, 0x100
add esp, 0xc
cmp dword [edi + 0x14], 8
lea ecx, [ebp - 0x438]
mov dword [ebp - 0x4e0], eax
mov dword [ebp - 0x4c4], eax
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x4f4], esi
mov dword [ebp - 0x4ec], 0x10
mov dword [ebp - 0x4c8], ecx
jb 0x402a21
mov edi, dword [edi]
lea ecx, [ebp - 0x4f4]
push ecx
push ebx
push eax
push edi
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
je 0x402a69
mov byte [ebp - 0x48d], bl
mov ecx, str.https
lea eax, [ebp - 0x38]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x402a71
cmp dx, bx
je 0x402a65
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x402a71
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x402a43
xor eax, eax
jmp 0x402a76
xor al, al
call fcn.00408458
ret
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402a83
mov byte [ebp - 0x48d], 1
jmp 0x402aba
mov ecx, str.http
lea eax, [ebp - 0x38]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x402ab1
cmp dx, bx
je 0x402aad
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x402ab1
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x402a8b
xor eax, eax
jmp 0x402ab6
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x402a69
push ebx
push ebx
push ebx
push ebx
push str.Breakpad_1.0__Windows_
call dword [sym.imp.WININET.dll_InternetOpenW]
mov edi, eax
mov dword [ebp - 0x494], edi
mov dword [ebp - 0x4b8], edi
mov dword [ebp - 4], ebx
cmp edi, ebx
jne 0x402ae4
or dword [ebp - 4], 0xffffffff
jmp 0x402a69
push ebx
push ebx
push 3
push ebx
push ebx
push dword [ebp - 0x4dc]
lea eax, [ebp - 0x238]
push eax
push edi
call dword [sym.imp.WININET.dll_InternetConnectW]
mov esi, eax
mov dword [ebp - 0x498], esi
mov dword [ebp - 0x4b0], esi
mov byte [ebp - 4], 1
cmp esi, ebx
jne 0x402b24
or dword [ebp - 4], 0xffffffff
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x402a69
movzx eax, byte [ebp - 0x48d]
neg eax
sbb eax, eax
push ebx
and eax, 0x800000
or eax, 0x80000
push eax
push ebx
push ebx
push ebx
lea eax, [ebp - 0x438]
push eax
push str.POST
push esi
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov edi, eax
mov dword [ebp - 0x4b4], edi
mov byte [ebp - 4], 2
cmp edi, ebx
jne 0x402b7e
mov byte [ebp - 4], bl
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push esi
call edi
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x494]
call edi
jmp 0x402a69
lea ecx, [ebp - 0x48c]
call fcn.00402efd
mov byte [ebp - 4], 3
lea eax, [ebp - 0x48c]
push eax
lea eax, [ebp - 0x470]
push eax
call fcn.00402f5a
pop ecx
pop ecx
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x470]
push 8
pop esi
cmp dword [ebp - 0x45c], esi
jae 0x402bbd
lea eax, [ebp - 0x470]
push 0x20000000
push 0xffffffffffffffff
push eax
push edi
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
mov dword [ebp - 0x440], 0xf
mov dword [ebp - 0x444], ebx
mov byte [ebp - 0x454], bl
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x4ac]
mov edx, dword [ebp - 0x4a8]
lea eax, [ebp - 0x454]
push eax
lea eax, [ebp - 0x48c]
push eax
push dword [ebp - 0x4a4]
call fcn.00402f98
add esp, 0xc
test al, al
jne 0x402c6b
mov byte [ebp - 4], 4
push ebx
push 1
lea ecx, [ebp - 0x454]
call fcn.004047ea
mov byte [ebp - 4], 3
lea esi, [ebp - 0x470]
call fcn.00401405
mov byte [ebp - 4], 2
lea esi, [ebp - 0x48c]
call fcn.00401405
mov byte [ebp - 4], 1
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push edi
call esi
mov byte [ebp - 4], bl
push dword [ebp - 0x498]
call esi
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x494]
call esi
jmp 0x402a69
cmp dword [ebp - 0x440], 0x10
mov eax, dword [ebp - 0x454]
jae 0x402c80
lea eax, [ebp - 0x454]
push dword [ebp - 0x444]
push eax
push ebx
push ebx
push edi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
je 0x402c12
push ebx
lea eax, [ebp - 0x49c]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x13
push edi
mov dword [ebp - 0x49c], esi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x402d1c
mov byte [ebp - 0x48d], bl
mov byte [ebp - 4], 4
push ebx
push 1
lea ecx, [ebp - 0x454]
call fcn.004047ea
mov byte [ebp - 4], 3
lea esi, [ebp - 0x470]
call fcn.00401405
mov byte [ebp - 4], 2
lea esi, [ebp - 0x48c]
call fcn.00401405
mov byte [ebp - 4], 1
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push edi
call esi
mov byte [ebp - 4], bl
push dword [ebp - 0x498]
call esi
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x494]
call esi
mov al, byte [ebp - 0x48d]
jmp 0x402a6b
push 0xa
lea eax, [ebp - 0x18]
push ebx
push eax
call fcn.0040778f
mov ecx, dword [ebp - 0x4a0]
add esp, 0xc
cmp ecx, ebx
je 0x402d37
mov dword [ecx], eax
cmp eax, 0xc8
sete al
cmp al, bl
je 0x402d4a
mov ecx, edi
call fcn.00402d55
mov byte [ebp - 0x48d], al
jmp 0x402cbd