Function at 0x40da76
Capabilities:
Check http status code
Connect to http server
Create http request
Parse url
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4205d8
push 0x411b8c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ecx
mov eax, 0x10a8
call fcn.004124b0
push ebx
push esi
push edi
xor esi, esi
inc esi
mov dword [ebp - 0x3c], esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x40e487
push dword [ebp + 8]
call fcn.0040c0f5
pop ecx
test eax, eax
je 0x40e487
cmp dword [0x426718], 0
jne 0x40db3d
push 0x14
push 0x426704
push 0x14
push 0x4266f0
call fcn.0040bf33
push 0x20
push 0x4266d0
call fcn.0040cc77
lea eax, [ebp - 0x4c0]
push eax
call fcn.0040d38b
add esp, 0x1c
test eax, eax
je 0x40db23
push 0x1e
lea eax, [ebp - 0x4c0]
push eax
push 0x4266b0
call fcn.00412ea0
add esp, 0xc
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x40db35
push 0x420068
push 0x4266b0
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
call ebx
mov dword [0x426718], esi
jmp 0x40db43
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x42006b
lea eax, [ebp - 0x5c0]
push eax
call ebx
push str.__xml_version_1.0__encoding_UTF_8_____request_
lea eax, [ebp - 0xdc0]
push eax
call ebx
push 0x4200a0
push str.sc_xml_ver
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x34], eax
push 0x4200b0
push dword [ebp + 8]
call fcn.00412880
mov esi, eax
push str.suninstallstat
push 0x4200c4
lea eax, [ebp - 0xa0]
push eax
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
call edi
add esp, 0x14
test esi, esi
je 0x40dbce
mov eax, esi
sub eax, dword [ebp + 8]
mov dword [ebp - 0x34], eax
inc esi
push esi
push 0x4200c8
lea eax, [ebp - 0xa0]
push eax
call edi
add esp, 0xc
push str.suninstallstatdev
lea eax, [ebp - 0xa0]
push eax
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
call esi
test eax, eax
jne 0x40dbe9
and dword [ebp - 0x3c], eax
lea eax, [ebp - 0xa0]
push eax
push str.reportsuiteid
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
push 0x4266d0
push str.visitorid
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
push 0x14
lea eax, [ebp - 0xa0]
push eax
push str.PingTest
call fcn.0040d891
add esp, 0x24
test eax, eax
jne 0x40dc36
cmp dword [ebp - 0x3c], eax
jne 0x40dc4f
push 0x4266d0
push str.prop21
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push 0x420110
push dword [ebp + 8]
call fcn.00412880
pop ecx
pop ecx
test eax, eax
je 0x40dcb0
push 0x42011c
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push str.https:__sjremetrics.java.com
push dword [ebp + 8]
call fcn.004123b0
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x4c0]
jne 0x40dc9a
push 0xb3e9fd
push 0x42015c
push eax
call edi
add esp, 0xc
jmp 0x40dca2
push str.nonprodpasswd
push eax
call ebx
lea eax, [ebp - 0x4c0]
push eax
push 0x420170
jmp 0x40dcba
push str.nonhttpspasswd
push 0x420188
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push dword [ebp + 0x10]
push str.pagename
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
push dword [ebp + 0x18]
push str.evar2
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0x18
lea eax, [ebp - 0xdc0]
cmp dword [ebp + 0x1c], 0
jne 0x40dd0c
push 0x4266b0
push 0x4201a4
jmp 0x40dd14
push dword [ebp + 0x1c]
push str.evar3
push eax
call fcn.0040c1b9
add esp, 0xc
push str.i586
push str.evar4
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
push 0x426704
push str.evar5
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
push 0x4266f0
push str.evar6
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0x24
cmp dword [ebp + 0xc], 0
jne 0x40ddb1
mov dword [ebp - 0x50], 0x14
push 0x4201d4
lea eax, [ebp - 0xc0]
push eax
call ebx
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0xc0]
push eax
push 0x4201d8
push 0
call fcn.0040c7c1
lea eax, [ebp - 0xc0]
push eax
push 0x4201e0
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0x1c
jmp 0x40ddc8
push dword [ebp + 0xc]
push str.evar7
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push dword [ebp + 0x14]
push str.evar8
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push 0x4201f8
push dword [ebp + 0x10]
call esi
test eax, eax
jne 0x40df0a
push str.event6_event7
push 0x42020c
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push 0x420213
lea eax, [ebp - 0x2c0]
push eax
call ebx
push 0x200
lea eax, [ebp - 0x2c0]
push eax
push str.InstallStatus
call fcn.0040d891
push 0
call fcn.0040d992
add esp, 0x10
push str.reinstall
lea eax, [ebp - 0x2c0]
push eax
call esi
test eax, eax
je 0x40de7b
push 0
push str.VisitorId
push 0
call fcn.0040c9d0
push 0
push str.Method
push 0
call fcn.0040c9d0
add esp, 0x18
push str.decline
lea eax, [ebp - 0x2c0]
push eax
call esi
test eax, eax
jne 0x40de83
xor eax, eax
inc eax
jmp 0x40e489
push 0x42024c
lea eax, [ebp - 0x2c0]
push eax
call esi
test eax, eax
jne 0x40deae
cmp dword [ebp + 0x24], 0x643
je 0x40dea7
cmp dword [ebp + 0x24], 0x642
jne 0x40deae
mov dword [ebp + 0x24], 0xffffff80
push dword [ebp + 0x24]
push 0x420254
lea eax, [ebp - 0x5c0]
push eax
call edi
add esp, 0xc
lea eax, [ebp - 0x2c0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x40def9
push str.exists
lea eax, [ebp - 0x2c0]
push eax
call esi
test eax, eax
je 0x40def9
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0x5c0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x5c0]
push eax
push 0x420264
jmp 0x40e06b
push 0x420270
push dword [ebp + 0x10]
call esi
test eax, eax
jne 0x40df5f
push str.event5
push 0x42027c
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
push dword [ebp + 0x24]
push str._jre_d
lea eax, [ebp - 0x5c0]
push eax
call edi
lea eax, [ebp - 0x5c0]
push eax
push str.products
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0x24
jmp 0x40e07a
push 0x420298
push dword [ebp + 0x10]
call esi
test eax, eax
jne 0x40df7c
push str.event4
push 0x4202a4
jmp 0x40e06b
push 0x4202ac
push dword [ebp + 0x10]
call esi
test eax, eax
jne 0x40df99
push str.event1
push 0x4202b8
jmp 0x40e06b
push 0x4202c0
push dword [ebp + 0x10]
call esi
test eax, eax
jne 0x40e07a
push str.event2
push str.events
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
xor esi, esi
lea eax, [ebp - 0x4c0]
cmp dword [ebp + 0x24], esi
jne 0x40dfd9
push esi
push 0x4202d4
jmp 0x40dfe1
push dword [ebp + 0x24]
push 0x4202d8
push eax
call edi
add esp, 0xc
lea eax, [ebp - 0x4c0]
push eax
push str.evar9
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
lea eax, [ebp - 0x4c0]
cmp dword [ebp + 0x20], esi
jne 0x40e015
push esi
push 0x4202e4
jmp 0x40e01d
push dword [ebp + 0x20]
push 0x4202e8
push eax
call edi
add esp, 0xc
lea eax, [ebp - 0x4c0]
push eax
push str.evar10
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
mov dword [ebp - 0x40], esi
lea eax, [ebp - 0x40]
push eax
push str.NotifyInstall
push esi
call fcn.0040c829
add esp, 0x18
cmp dword [ebp - 0x40], esi
jne 0x40e061
push 0x420304
push 0x420308
jmp 0x40e06b
push 0x420310
push str.evar11
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1b9
add esp, 0xc
push str.__request_
lea eax, [ebp - 0xdc0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
xor esi, esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x4c], esi
mov dword [ebp - 4], esi
push esi
push esi
push esi
push esi
push 0x420328
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [ebp - 0x30], eax
cmp eax, esi
je 0x40e44c
push 0xf
pop ecx
xor eax, eax
lea edi, [ebp - 0x8c]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x8c], 0x3c
lea eax, [ebp - 0xec0]
mov dword [ebp - 0x7c], eax
mov eax, pe_nt_image_headers32
mov dword [ebp - 0x78], eax
mov word [ebp - 0x74], si
lea ecx, [ebp - 0xfc0]
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], eax
lea ecx, [ebp - 0x10c0]
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x54], eax
push dword [ebp - 0x34]
push dword [ebp + 8]
lea eax, [ebp - 0x2c0]
push eax
call fcn.00412ea0
add esp, 0xc
mov eax, dword [ebp - 0x34]
mov byte [ebp + eax - 0x2c0], 0
lea ecx, [ebp - 0x8c]
push ecx
push esi
push eax
lea eax, [ebp - 0x2c0]
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
push esi
push esi
push 3
push 0x420330
push 0x420331
push dword [ebp - 0x74]
push dword [ebp - 0x7c]
push dword [ebp - 0x30]
call dword [sym.imp.WININET.dll_InternetConnectA]
mov dword [ebp - 0x28], eax
cmp eax, esi
je 0x40e44c
lea eax, [ebp - 0x2c0]
cmp dword [ebp - 0x5c], esi
je 0x40e169
push dword [ebp - 0x60]
jmp 0x40e16e
push 0x420334
push eax
call ebx
cmp dword [ebp - 0x54], esi
je 0x40e186
push dword [ebp - 0x58]
lea eax, [ebp - 0x2c0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x420338
push dword [ebp + 8]
call fcn.00412880
pop ecx
pop ecx
push esi
test eax, eax
lea eax, [ebp - 0x2c0]
je 0x40e1b8
push 0x4c00000
push esi
push 0x420341
push 0x420344
push eax
push 0x420350
jmp 0x40e1ce
push 0x4400000
push esi
push 0x420355
push 0x420358
push eax
push str.POST
push dword [ebp - 0x28]
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x1c], eax
cmp eax, esi
je 0x40e44c
xor edi, edi
inc edi
mov dword [ebp - 0x20], edi
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
lea eax, [ebp - 0xdc0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0xdc0]
push eax
push esi
push esi
push dword [ebp - 0x1c]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x40e261
cmp dword [ebp - 0x20], esi
je 0x40e44c
call ebx
mov dword [ebp - 0xa8], eax
mov ecx, eax
sub ecx, 0x2ee2
je 0x40e25c
sub ecx, 5
je 0x40e25c
sub ecx, 0x16
je 0x40e25c
mov dword [ebp - 0x20], esi
push esi
push 7
push eax
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.WININET.dll_InternetErrorDlg]
cmp eax, 0x2f00
jne 0x40e1f0
mov dword [ebp - 0x20], edi
jmp 0x40e1f0
mov dword [ebp - 0x20], esi
jmp 0x40e1f0
cmp dword [ebp - 0x20], esi
je 0x40e44c
call ebx
mov dword [ebp - 0x48], eax
and dword [ebp - 0x24], 0
mov dword [ebp - 0x38], 4
push 0
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x24]
push eax
mov edi, 0x20000013
push edi
push dword [ebp - 0x1c]
mov esi, dword [sym.imp.WININET.dll_HttpQueryInfoA]
call esi
test eax, eax
jne 0x40e29e
call ebx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x20], 1
mov ebx, dword [ebp - 0x1c]
cmp dword [ebp - 0x24], 0x197
jne 0x40e310
cmp dword [ebp - 0x20], 0
je 0x40e310
push 0
push 7
push dword [ebp - 0x48]
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.WININET.dll_InternetErrorDlg]
cmp eax, 0x2f00
je 0x40e2d9
and dword [ebp - 0x20], 0
jmp 0x40e2a8
lea eax, [ebp - 0xdc0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0xdc0]
push eax
push 0
push 0
push ebx
call dword [sym.imp.WININET.dll_HttpSendRequestA]
mov dword [ebp - 0x38], 4
push 0
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x24]
push eax
push edi
push ebx
call esi
jmp 0x40e2a8
cmp dword [ebp - 0x24], 0xc8
jne 0x40e337
mov dword [ebp - 0x4c], 1
lea eax, [ebp - 0x44]
push eax
push 0x200
lea eax, [ebp - 0x2c0]
push eax
push ebx
call dword [sym.imp.WININET.dll_InternetReadFile]
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
jne 0x40e343
mov ecx, 0x4266b0
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x40e350
lea eax, [ebp - 0xc0]
push dword [ebp + 0x18]
push ecx
push dword [ebp + 0x10]
push eax
push 0x4266d0
push dword [ebp - 0x24]
push str.InstallStatus:ret_d_visid_s_method_s_state_s_ver_s__s
lea eax, [ebp - 0x4c0]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x20
lea eax, [ebp - 0x5c0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x40e3aa
push str._ICstatus
lea eax, [ebp - 0x4c0]
push eax
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
call esi
lea eax, [ebp - 0x5c0]
push eax
lea eax, [ebp - 0x4c0]
push eax
call esi
cmp dword [ebp - 0x44], 0
je 0x40e3db
push 0x4203b4
lea eax, [ebp - 0x4c0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push dword [ebp - 0x44]
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0x4c0]
push eax
call fcn.00412fd0
add esp, 0xc
lea eax, [ebp - 0x4c0]
push eax
call fcn.0040c1fd
pop ecx
cmp dword [ebp - 0x3c], 0
jne 0x40e44c
push 0x4203b8
lea eax, [ebp - 0xdc0]
push eax
call fcn.00412880
pop ecx
pop ecx
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x40e43f
add dword [ebp - 0x2c], 7
push str.prop20
push dword [ebp - 0x2c]
call fcn.00412880
pop ecx
pop ecx
mov dword [ebp - 0xac], eax
sub eax, dword [ebp - 0x2c]
dec eax
dec eax
mov dword [ebp - 0xa4], eax
je 0x40e43f
push eax
push str.XXXXXXXXXXXXXXXXXX
push dword [ebp - 0x2c]
call fcn.00412ea0
add esp, 0xc
lea eax, [ebp - 0xdc0]
push eax
call fcn.0040c1fd
pop ecx
or dword [ebp - 4], 0xffffffff
call fcn.0040e45a
mov eax, dword [ebp - 0x4c]
jmp 0x40e489
mov eax, esi
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret