Function at 0x100108bb
Capabilities:
Check internet connectivity via wininet
Connect to http server
Create http request
Get file size
Parse url

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0xadc
mov eax, dword [0x1002d4a0]
push ebx
push esi
mov esi, ecx
mov dword [ebp + 0x70], eax
mov eax, dword [esi + 8]
push edi
xor ebx, ebx
push ebx
mov dword [ebp - 0x9b8], eax
call dword [sym.imp.WININET.dll_InternetAttemptConnect]
cmp eax, ebx
mov dword [ebp - 0x9a4], eax
jne 0x10010f4f
push ebx
mov edi, 0x80
push edi
push 3
push ebx
push 1
push closesocket
push 0x1002f718
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
mov dword [ebp - 0x9d4], eax
je 0x10010f39
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x9b0], eax
mov eax, 0x19000
cmp dword [ebp - 0x9b0], eax
jae 0x1001093f
mov eax, dword [ebp - 0x9b0]
push eax
mov dword [ebp - 0x9cc], eax
call fcn.1001b998
cmp eax, ebx
pop ecx
mov dword [ebp - 0x9c4], eax
je 0x10010f1a
push 0x3c
lea eax, [ebp - 0xa18]
push ebx
push eax
call fcn.1001b590
lea eax, [ebp - 0x1a0]
mov dword [ebp - 0xa08], eax
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x9fc], eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x9f4], eax
add esp, 0xc
lea eax, [ebp - 0x9a0]
mov dword [ebp - 0x9ec], eax
lea eax, [ebp - 0xa18]
push eax
push 0x90000000
push ebx
push dword [ebp + 0x7c]
mov dword [ebp - 0xa18], 0x3c
mov dword [ebp - 0xa04], 0x100
mov dword [ebp - 0x9f8], edi
mov dword [ebp - 0x9f0], edi
mov dword [ebp - 0x9e8], 0x800
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
test eax, eax
je 0x10010ef7
cmp dword [ebp - 0xa0c], 3
jne 0x10010ee4
push 0x10000000
push ebx
push ebx
xor edi, edi
inc edi
push edi
push str.BugTrap_for_Win32
call dword [sym.imp.WININET.dll_InternetOpenA]
cmp eax, ebx
mov dword [ebp - 0x9d0], eax
je 0x10010ef7
push 0x1000fdc0
push eax
call dword [sym.imp.WININET.dll_InternetSetStatusCallback]
mov eax, dword [ebp - 0xa00]
cmp ax, bx
mov dword [ebp - 0x9b4], eax
jne 0x10010a39
mov dword [ebp - 0x9b4], 0x50
mov al, byte [ebp - 0xa0]
neg al
lea ecx, [ebp - 0xa0]
push esi
mov dword [esi + 0x14], edi
mov edi, 0x4000200
push edi
push 3
sbb eax, eax
and eax, ecx
mov cl, byte [ebp - 0x20]
neg cl
lea edx, [ebp - 0x20]
sbb ecx, ecx
and ecx, edx
push ecx
push eax
push dword [ebp - 0x9b4]
lea eax, [ebp - 0x1a0]
push eax
push dword [ebp - 0x9d0]
call dword [sym.imp.WININET.dll_InternetConnectA]
cmp eax, ebx
mov dword [ebp - 0x9dc], eax
je 0x10010eba
push esi
push edi
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x9a0]
push ecx
push str.POST
push eax
mov dword [esi + 0x14], 2
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
cmp eax, ebx
mov dword [ebp - 0x9c0], eax
je 0x10010e90
push 1
push 0x1000
lea ecx, [ebp - 0xa68]
call fcn.1000acff
lea eax, [ebp - 0xa68]
mov dword [ebp - 0x9ac], eax
lea eax, [ebp - 0xa60]
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_protocolSignature__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
mov dword [ebp - 0x9a8], eax
call fcn.10008f81
mov ecx, dword [ebp - 0x9a8]
mov eax, dword [ecx]
push 4
push str.BT01Error_Report
call dword [eax + 0xc]
mov edi, 0x10027038
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_messageType__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push 0xa
lea eax, [ebp + 0x60]
push eax
push 1
call fcn.1001b62e
add esp, 0xc
lea eax, [ebp + 0x60]
push eax
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_messageFlags__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push 0xa
lea eax, [ebp + 0x60]
push eax
push ebx
call fcn.1001b62e
add esp, 0xc
lea eax, [ebp + 0x60]
push eax
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_appName__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push 0x1002ecc8
lea ecx, [ebp - 0x9ac]
call fcn.10012cbb
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_appVersion__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push 0x1002edd0
lea ecx, [ebp - 0x9ac]
call fcn.10012cbb
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_reportFileExtension__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
call fcn.1000ab72
push eax
lea ecx, [ebp - 0x9ac]
call fcn.10012cbb
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_notificationEMail__r_nContent_Type:_text_plain__charset_utf_8__r_nContent_Transfer_Encoding:_8bit_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push 0x1002f1f0
lea ecx, [ebp - 0x9ac]
call fcn.10012cbb
push edi
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
push str.__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184_r_nContent_Disposition:_form_data__name_reportData___filename_report.dat__r_nContent_Type:_application_octet_stream_r_nContent_Transfer_Encoding:_binary_r_n_r_n
lea ecx, [ebp - 0x9ac]
call fcn.10008f81
mov eax, dword [ebp - 0xa4c]
cmp eax, ebx
mov dword [ebp - 0x9bc], eax
je 0x10010e5f
mov edi, dword [ebp - 0xa58]
push 0x28
lea eax, [ebp - 0xa40]
push ebx
push eax
call fcn.1001b590
add esp, 0xc
cmp dword [ebp - 0x9b8], ebx
push 0x58
pop eax
mov dword [ebp - 0xa30], eax
mov dword [ebp - 0xa34], eax
mov eax, dword [ebp - 0x9b0]
lea eax, [edi + eax + 0x36]
mov dword [ebp - 0xa24], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0xa40], 0x28
mov dword [ebp - 0xa38], str.Content_Type:_multipart_form_data__boundaryBUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184
mov dword [ebp - 0x9b4], eax
je 0x10010ccf
push ebx
push ebx
push 0x8001
push dword [ebp - 0x9b8]
call dword [sym.imp.USER32.dll_PostMessageA]
push dword [ebp - 0x9b4]
mov dword [esi + 0x14], 3
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push 0x1c8
push ebx
push ebx
lea eax, [ebp - 0xa40]
push eax
push dword [ebp - 0x9c0]
call dword [sym.imp.WININET.dll_HttpSendRequestExA]
test eax, eax
jne 0x10010d13
call fcn.1000fdff
cmp eax, ebx
mov dword [ebp - 0x9a4], eax
jne 0x10010e70
cmp dword [ebp - 0x9b8], ebx
je 0x10010d2e
push ebx
push ebx
push 0x8002
push dword [ebp - 0x9b8]
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [ebp - 0x9bc]
mov dword [esi + 0x14], 4
mov dword [ebp - 0x9c8], ebx
mov dword [ebp - 0x9b0], eax
push dword [ebp - 0x9b4]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
cmp edi, ebx
jbe 0x10010da6
lea eax, [ebp - 0x9d8]
push eax
push edi
push dword [ebp - 0x9b0]
mov dword [ebp - 0x9d8], ebx
push dword [ebp - 0x9c0]
call dword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
jne 0x10010d8a
call fcn.1000fdff
cmp eax, ebx
mov dword [ebp - 0x9a4], eax
jne 0x10010d9c
mov eax, dword [ebp - 0x9d8]
add dword [ebp - 0x9b0], eax
sub edi, eax
jne 0x10010d57
jmp 0x10010da6
mov dword [ebp - 0x9c8], 1
cmp dword [ebp - 0x9c8], ebx
jne 0x10010e09
push ebx
lea eax, [ebp - 0x9bc]
push eax
push dword [ebp - 0x9cc]
mov dword [ebp - 0x9bc], ebx
push dword [ebp - 0x9c4]
push dword [ebp - 0x9d4]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10010ded
mov edi, dword [ebp - 0x9bc]
cmp edi, ebx
je 0x10010ded
mov eax, dword [ebp - 0x9c4]
jmp 0x10010d41
push 0x36
mov dword [ebp - 0x9c8], 1
mov dword [ebp - 0x9b0], str._r_n__BUGTRAP_7A1D6378_1294_491B_996C_37D4FF91D184___r_n_r_n
pop edi
jmp 0x10010d47
cmp dword [ebp - 0x9a4], ebx
jne 0x10010e70
cmp dword [ebp - 0x9b8], ebx
je 0x10010e2c
push ebx
push ebx
push 0x8003
push dword [ebp - 0x9b8]
call dword [sym.imp.USER32.dll_PostMessageA]
push dword [ebp - 0x9b4]
mov dword [esi + 0x14], 5
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push ebx
push ebx
push ebx
push dword [ebp - 0x9c0]
call dword [sym.imp.WININET.dll_HttpEndRequestA]
test eax, eax
jne 0x10010e70
call fcn.1000fdff
mov dword [ebp - 0x9a4], eax
jmp 0x10010e70
push 8
pop eax
push eax
mov ecx, esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fc4e
push dword [ebp - 0x9c0]
mov dword [esi + 0x14], 7
call dword [sym.imp.WININET.dll_InternetCloseHandle]
lea ecx, [ebp - 0xa44]
call fcn.1000ac7b
jmp 0x10010ea5
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fce5
pop ecx
pop ecx
push dword [ebp - 0x9dc]
mov dword [esi + 0x14], 7
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x10010ecf
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fce5
pop ecx
pop ecx
push dword [ebp - 0x9d0]
mov dword [esi + 0x14], 7
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x10010f0c
push 0x43
pop eax
push eax
mov ecx, esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fc4e
jmp 0x10010f0c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fce5
pop ecx
pop ecx
push dword [ebp - 0x9c4]
call fcn.1001b588
pop ecx
jmp 0x10010f2b
push 8
pop eax
push eax
mov ecx, esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fc4e
push dword [ebp - 0x9d4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x10010f58
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
mov dword [ebp - 0x9a4], eax
call fcn.1000fc4e
jmp 0x10010f58
push eax
push esi
call fcn.1000fce5
pop ecx
pop ecx
mov ecx, dword [ebp + 0x70]
mov eax, dword [ebp - 0x9a4]
pop edi
pop esi
pop ebx
call fcn.1001b57a
add ebp, 0x74
leave
ret