Function at 0x40dd1a
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
lea ebp, [esp - 0x110c]
mov eax, 0x110c
call fcn.004147d0
push 0xfffffffffffffffe
push 0x42dad8
push 0x413f50
mov eax, dword fs:[0]
push eax
sub esp, 0x90
mov eax, dword [0x431420]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp + 0x1108], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0x1114]
mov dword [ebp - 0x30], ebx
mov eax, dword [ebp + 0x1118]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x111c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 0x1120]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 0x1124]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x1128]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0x112c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x113c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0x1140]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 0x1144]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 0x1148]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x114c]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 0x1150]
mov dword [ebp - 0x48], eax
mov esi, dword [ebp + 0x1154]
mov byte [ebp + 0x1100], 0
xor eax, eax
lea edi, [ebp + 0x1101]
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp + 0x10d0], 0
xor eax, eax
lea edi, [ebp + 0x10d1]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
mov byte [ebp + 0x10dc], 0
xor eax, eax
lea edi, [ebp + 0x10dd]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
mov byte [ebp + 0x10f4], 0
xor eax, eax
lea edi, [ebp + 0x10f5]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
push ebx
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
call edi
test eax, eax
je 0x40ea00
push ebx
call fcn.0040c99c
pop ecx
test eax, eax
je 0x40ea00
cmp dword [0x432fd0], 0
jne 0x40deb3
push 0x14
push 0x432fbc
push 0x14
push 0x432fa8
call fcn.0040c77d
push 0x20
push 0x432f88
call fcn.0040dc21
lea eax, [ebp + 0x380]
push eax
call fcn.0040d38b
add esp, 0x1c
test eax, eax
je 0x40de99
push 0x1e
lea eax, [ebp + 0x380]
push eax
push 0x432f68
call fcn.004167b0
add esp, 0xc
jmp 0x40dea9
push 0x427abc
push 0x432f68
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov dword [0x432fd0], 1
push 0x4266a7
lea eax, [ebp + 0xd80]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.__xml_version_1.0__encoding_UTF_8_____request_
lea eax, [ebp + 0x580]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x426708
push str.sc_xml_ver
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
push ebx
call edi
mov dword [ebp - 0x34], eax
push 0x428dac
push ebx
call fcn.004137e0
pop ecx
pop ecx
mov ebx, eax
mov edi, 0x426af4
lea eax, [ebp + 0x10bc]
test esi, esi
jne 0x40df1b
push str.suninstallstat
jmp 0x40df1c
push esi
push edi
push eax
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
call esi
add esp, 0xc
test ebx, ebx
je 0x40df44
mov eax, ebx
sub eax, dword [ebp - 0x30]
mov dword [ebp - 0x34], eax
inc ebx
push ebx
push edi
lea eax, [ebp + 0x10bc]
push eax
call esi
add esp, 0xc
push str.suninstallstatdev
lea eax, [ebp + 0x10bc]
push eax
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpA]
call ebx
push str.sunjfxinstallstatdev
lea eax, [ebp + 0x10bc]
push eax
call ebx
lea eax, [ebp + 0x10bc]
push eax
push str.reportsuiteid
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
mov edi, 0x432f88
push edi
push str.visitorid
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push edi
push str.prop21
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push str.https:__
push dword [ebp - 0x30]
call fcn.004137e0
add esp, 0x2c
test eax, eax
je 0x40e005
mov edi, str.https:__sjremetrics.java.com
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push edi
push dword [ebp - 0x30]
call fcn.004164d5
add esp, 0xc
test eax, eax
lea eax, [ebp + 0x380]
jne 0x40dff0
push 0xb3e9fd
push 0x428d28
push eax
call esi
add esp, 0xc
jmp 0x40dffc
push str.nonprodpasswd
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp + 0x380]
push eax
jmp 0x40e00a
push str.nonhttpspasswd
push str.prop20
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
push dword [ebp - 0x24]
push str.pagename
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp + 0x1158]
mov edi, 0x428cf0
push edi
lea eax, [ebp + 0x1094]
push eax
call esi
push dword [ebp + 0x115c]
push edi
lea eax, [ebp + 0x1080]
push eax
call esi
lea eax, [ebp + 0x1094]
push eax
push str.evar24
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
lea eax, [ebp + 0x1080]
push eax
push str.evar25
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x3c
push str.jfxic
push dword [ebp - 0x24]
call ebx
test eax, eax
je 0x40e1e0
push dword [ebp - 0x38]
push str.evar2
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
xor edi, edi
cmp dword [ebp - 0x20], edi
je 0x40e0db
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 2
jl 0x40e0db
push 0x428ccc
push dword [ebp - 0x20]
call ebx
test eax, eax
je 0x40e0db
push dword [ebp - 0x20]
jmp 0x40e0e0
push 0x432f68
push str.evar3
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
push 0x42780c
push dword [ebp - 0x24]
call ebx
test eax, eax
jne 0x40e1e2
cmp dword [ebp - 0x2c], edi
je 0x40e11e
push dword [ebp - 0x2c]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 2
jl 0x40e11e
push dword [ebp - 0x2c]
jmp 0x40e137
push 0x427abc
lea eax, [ebp + 0x300]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp + 0x300]
push eax
push str.evar15
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
call fcn.0040cab8
push eax
push 0x428cf0
lea eax, [ebp + 0x10f4]
push eax
call esi
lea eax, [ebp + 0x10f4]
push eax
push str.evar40
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
mov byte [ebp + 0x10e8], 0
xor eax, eax
lea edi, [ebp + 0x10e9]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
push dword [ebp + 0x1138]
push 0x428cf0
lea eax, [ebp + 0x10e8]
push eax
call esi
lea eax, [ebp + 0x10e8]
push eax
push str.evar26
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp - 0x58]
push str.evar27
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp - 0x40]
push str.evar28
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x48
xor edi, edi
push str.i586
push str.evar4
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push 0x432fbc
push str.evar5
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push 0x432fa8
push str.evar6
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x24
lea eax, [ebp + 0x10a8]
cmp dword [ebp - 0x4c], edi
jne 0x40e260
mov dword [ebp - 0x40], 0x14
push 0x427abc
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp + 0x10a8]
push eax
push str.Method
push edi
call fcn.0040d116
add esp, 0x10
jmp 0x40e26a
push dword [ebp - 0x4c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp + 0x10a8]
push eax
push str.evar7
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp - 0x5c]
push str.evar8
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x18
push 0x42780c
push dword [ebp - 0x24]
call ebx
test eax, eax
jne 0x40e4a3
push str.event6_event7
push str.events
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
push 0x4266a7
lea eax, [ebp + 0xe80]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x200
lea eax, [ebp + 0xe80]
push eax
push str.InstallStatus
call fcn.0040d569
push edi
call fcn.0040d6fb
add esp, 0x10
push str.reinstall
lea eax, [ebp + 0xe80]
push eax
call ebx
test eax, eax
je 0x40ea00
push str.exists
lea eax, [ebp + 0xe80]
push eax
call ebx
test eax, eax
jne 0x40e335
cmp dword [ebp + 0x1134], 0x643
je 0x40e341
cmp dword [ebp + 0x1134], 0x642
je 0x40e341
cmp dword [ebp + 0x1134], 0x666
jne 0x40e34b
mov dword [ebp + 0x1134], 0xffffff80
call fcn.0040d766
test eax, eax
je 0x40e38b
cmp dword [ebp + 0x1134], 0x643
je 0x40e36c
cmp dword [ebp + 0x1134], 0x642
jne 0x40e38b
call fcn.0040cca9
test eax, eax
je 0x40e381
mov dword [ebp + 0x1134], 0xffffff75
jmp 0x40e3a5
mov dword [ebp + 0x1134], 0xffffff76
cmp dword [ebp + 0x1134], edi
jne 0x40e3a5
push str.decline
lea eax, [ebp + 0xe80]
push eax
call ebx
test eax, eax
jne 0x40e3c0
push edi
push str.VisitorId
push edi
call fcn.0040c6db
push edi
push str.Method
push edi
call fcn.0040c6db
add esp, 0x18
lea eax, [ebp + 0x10dc]
push eax
lea eax, [ebp + 0x10d0]
push eax
lea eax, [ebp + 0x1100]
push eax
push dword [ebp + 0x1134]
push dword [ebp - 0x38]
call fcn.0040d7c3
lea eax, [ebp + 0x10dc]
push eax
push str.evar17
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
lea eax, [ebp + 0x1100]
push eax
push str.evar18
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
lea eax, [ebp + 0x10d0]
push eax
push str.evar19
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x38
push str.decline
lea eax, [ebp + 0xe80]
push eax
call ebx
test eax, eax
je 0x40ea00
push dword [ebp + 0x1134]
push str._jre_d
lea eax, [ebp + 0xd80]
push eax
call esi
add esp, 0xc
lea eax, [ebp + 0xe80]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x40e492
push str.exists
lea eax, [ebp + 0xe80]
push eax
call ebx
test eax, eax
je 0x40e492
lea eax, [ebp + 0xe80]
push eax
lea eax, [ebp + 0xd80]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0xd80]
push eax
push str.products
jmp 0x40e6b6
push 0x428c1c
push dword [ebp - 0x24]
call ebx
test eax, eax
jne 0x40e513
push edi
push str.VisitorId
push edi
call fcn.0040c6db
push edi
push str.Method
push edi
call fcn.0040c6db
push str.event11
push str.events
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp + 0x1134]
push str._jre_d
lea eax, [ebp + 0xd80]
push eax
call esi
lea eax, [ebp + 0xd80]
push eax
push str.products
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x3c
jmp 0x40e6c5
push 0x428c10
push dword [ebp - 0x24]
call ebx
test eax, eax
jne 0x40e530
push str.event1
push str.events
jmp 0x40e6b6
push 0x428c04
push dword [ebp - 0x24]
call ebx
test eax, eax
jne 0x40e612
push str.event2
push str.events
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
lea eax, [ebp + 0x380]
cmp dword [ebp + 0x1134], edi
jne 0x40e571
push edi
push 0x428bf8
jmp 0x40e57c
push dword [ebp + 0x1134]
push 0x428250
push eax
call esi
add esp, 0xc
lea eax, [ebp + 0x380]
push eax
push str.evar9
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
lea eax, [ebp + 0x380]
cmp dword [ebp + 0x1130], edi
jne 0x40e5b3
push edi
push 0x428bf8
jmp 0x40e5be
push dword [ebp + 0x1130]
push 0x428250
push eax
call esi
add esp, 0xc
lea eax, [ebp + 0x380]
push eax
push str.evar10
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
mov dword [ebp - 0x38], edi
lea eax, [ebp - 0x38]
push eax
push str.NotifyInstall
push edi
call fcn.0040d369
add esp, 0x18
lea eax, [ebp + 0x580]
cmp dword [ebp - 0x38], edi
jne 0x40e60b
push 0x428bd4
push str.evar11
jmp 0x40e6bc
push 0x428bc8
jmp 0x40e601
push str.jfxic
push dword [ebp - 0x24]
call ebx
test eax, eax
jne 0x40e6c5
push str.event20
push str.events
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp + 0x1134]
push str._jfx_d
lea eax, [ebp + 0xd80]
push eax
call esi
lea eax, [ebp + 0xd80]
push eax
push str.products
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp - 0x64]
push str.evar16
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp - 0x60]
push str.evar17
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
push dword [ebp - 0x54]
push str.evar18
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0x48
cmp dword [ebp + 0x1134], 3
jne 0x40e6c5
push dword [ebp - 0x48]
push str.evar19
lea eax, [ebp + 0x580]
push eax
call fcn.0040ca75
add esp, 0xc
push str.__request_
lea eax, [ebp + 0x580]
push eax
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatA]
call ebx
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 4], edi
push edi
push edi
push edi
push edi
push str.jupdate
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [ebp - 0x3c], eax
cmp eax, edi
je 0x40e9c2
push 0x3c
pop esi
push esi
push edi
lea eax, [ebp - 0xa0]
push eax
call fcn.004139c0
mov dword [ebp - 0xa0], esi
lea eax, [ebp + 0x200]
mov dword [ebp - 0x90], eax
mov eax, 0x100
mov dword [ebp - 0x8c], eax
xor ecx, ecx
mov word [ebp - 0x88], cx
lea ecx, [ebp]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], eax
lea ecx, [ebp + 0x100]
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], eax
mov esi, dword [ebp - 0x34]
push esi
push dword [ebp - 0x30]
lea eax, [ebp + 0xe80]
push eax
call fcn.004167b0
add esp, 0x18
mov byte [ebp + esi + 0xe80], 0
lea eax, [ebp - 0xa0]
push eax
push edi
push esi
lea eax, [ebp + 0xe80]
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
push edi
push edi
push 3
mov eax, 0x4266a7
push eax
push eax
push dword [ebp - 0x88]
push dword [ebp - 0x90]
push dword [ebp - 0x3c]
call dword [sym.imp.WININET.dll_InternetConnectA]
mov esi, eax
mov dword [ebp - 0x44], esi
cmp esi, edi
je 0x40e9c2
lea eax, [ebp + 0xe80]
cmp dword [ebp - 0x70], edi
je 0x40e7bf
push dword [ebp - 0x74]
jmp 0x40e7c4
push 0x426748
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp - 0x68], edi
je 0x40e7dc
push dword [ebp - 0x6c]
lea eax, [ebp + 0xe80]
push eax
call ebx
push str.https:__
push dword [ebp - 0x30]
call fcn.004137e0
pop ecx
pop ecx
push edi
test eax, eax
lea eax, [ebp + 0xe80]
je 0x40e7fd
push 0x4c00000
jmp 0x40e802
push 0x4400000
push edi
push 0x4266a7
push str.HTTP_1.1
push eax
push str.POST
push esi
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov dword [ebp - 0x1c], eax
cmp eax, edi
je 0x40e9c2
xor esi, esi
inc esi
mov dword [ebp - 0x28], esi
lea eax, [ebp + 0x580]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x580]
push eax
push edi
push edi
push dword [ebp - 0x1c]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x40e897
cmp dword [ebp - 0x28], edi
je 0x40e9c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
sub ecx, 0x2ee2
je 0x40e892
sub ecx, 5
je 0x40e892
sub ecx, 0x16
je 0x40e892
mov dword [ebp - 0x28], edi
push edi
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 0x40e82b
jmp 0x40e828
mov dword [ebp - 0x28], edi
jmp 0x40e82b
cmp dword [ebp - 0x28], edi
je 0x40e9c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x2c], 4
push edi
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x20]
push eax
mov ebx, 0x20000013
push ebx
push dword [ebp - 0x1c]
mov esi, dword [sym.imp.WININET.dll_HttpQueryInfoA]
call esi
test eax, eax
jne 0x40e8da
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x28], 1
cmp dword [ebp - 0x20], 0x197
jne 0x40e949
cmp dword [ebp - 0x28], edi
je 0x40e949
push edi
push 7
push dword [ebp - 0x34]
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.WININET.dll_InternetErrorDlg]
cmp eax, 0x2f00
je 0x40e911
mov dword [ebp - 0x28], edi
jmp 0x40e8e1
lea eax, [ebp + 0x580]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x580]
push eax
push edi
push edi
push dword [ebp - 0x1c]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
mov dword [ebp - 0x2c], 4
push edi
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x20]
push eax
push ebx
push dword [ebp - 0x1c]
call esi
jmp 0x40e8e1
cmp dword [ebp - 0x20], 0xc8
jne 0x40e972
mov dword [ebp - 0x50], 1
lea eax, [ebp - 0x48]
push eax
push 0x200
lea eax, [ebp + 0xe80]
push eax
push dword [ebp - 0x1c]
call dword [sym.imp.WININET.dll_InternetReadFile]
mov esi, str.prop20
push esi
lea eax, [ebp + 0x580]
push eax
call fcn.004137e0
pop ecx
pop ecx
mov ebx, eax
cmp ebx, edi
je 0x40e9b5
push esi
call fcn.00413eb0
lea ebx, [ebx + eax + 1]
push esi
push ebx
call fcn.004137e0
add esp, 0xc
sub eax, ebx
dec eax
dec eax
je 0x40e9b5
push eax
push str.XXXXXXXXXXXXXXXXXX
push ebx
call fcn.004167b0
add esp, 0xc
lea eax, [ebp + 0x580]
push eax
call fcn.0040cd54
pop ecx
mov dword [ebp - 4], 0xfffffffe
call fcn.0040e9d5
mov eax, dword [ebp - 0x50]
jmp 0x40ea03
xor eax, eax
inc eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x1108]
xor ecx, ebp
call fcn.00413f3b
add ebp, 0x110c
leave
ret