Function at 0x402bd0
Capabilities:
Check internet connectivity via wininet
Delete file
Get common file path
Parse url

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43a359
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x38e8
call fcn.00421100
push ebx
push esi
push edi
lea edi, [ebp - 0x38f4]
mov ecx, 0xe3a
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
push 0
lea ecx, [ebp - 0x64]
call fcn.00403210
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x64]
call fcn.004031e0
lea ecx, [ebp - 0x64]
push ecx
call fcn.00404820
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jge 0x403183
push str.LastUpdateBeginTime
push 0
call fcn.00419480
add esp, 8
mov dword [ebp - 0x68], 0x80004005
mov esi, esp
push 0
lea edx, [ebp - 0x206c]
push edx
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
cmp esi, esp
call fcn.0041fa50
test eax, eax
je 0x403109
push 0x400
lea eax, [ebp - 0x1068]
push eax
lea ecx, [ebp - 0x468]
push ecx
call fcn.00419900
add esp, 0xc
test eax, eax
je 0x403107
lea edx, [ebp - 0x868]
push edx
lea eax, [ebp - 0xc68]
push eax
lea ecx, [ebp - 0x468]
push ecx
lea edx, [ebp - 0x1068]
push edx
call fcn.0041c220
add esp, 0x10
test eax, eax
je 0x403107
mov dword [ebp - 0x2070], 1
mov esi, esp
lea eax, [ebp - 0x1068]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
push str.jupdate
lea ecx, [ebp - 0x1068]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
lea edx, [ebp - 0x468]
push edx
lea eax, [ebp - 0x1068]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
push str..xml
lea ecx, [ebp - 0x1068]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp esi, esp
call fcn.0041fa50
push 0x400
lea edx, [ebp - 0x1868]
push edx
call fcn.0041caa0
add esp, 8
test eax, eax
jne 0x402d7b
mov esi, esp
lea eax, [ebp - 0x468]
push eax
lea ecx, [ebp - 0x468]
push ecx
push str.http:__java.sun.com_update__s_map__s.xml
lea edx, [ebp - 0x1868]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp esi, esp
call fcn.0041fa50
lea eax, [ebp - 0x1068]
push eax
lea ecx, [ebp - 0x1868]
push ecx
lea edx, [ebp - 0x64]
push edx
call fcn.00403860
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jl 0x402dd1
mov esi, esp
lea eax, [ebp - 0x1868]
push eax
lea ecx, [ebp - 0xc68]
push ecx
lea edx, [ebp - 0x868]
push edx
lea eax, [ebp - 0x1068]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
push eax
call dword [edx + 0x14]
cmp esi, esp
call fcn.0041fa50
mov dword [ebp - 0x68], eax
jmp 0x402de4
cmp dword [ebp - 0x68], 0x80070202
je 0x402de4
mov dword [ebp - 0x2070], 0
cmp dword [ebp - 0x68], 0
jl 0x402e1d
lea ecx, [ebp - 0x1068]
push ecx
lea edx, [ebp - 0x1868]
push edx
lea eax, [ebp - 0x64]
push eax
call fcn.00403860
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jge 0x402e1d
cmp dword [ebp - 0x68], 0x80070202
je 0x402e1d
mov dword [ebp - 0x2070], 0
cmp dword [ebp - 0x68], 0
jl 0x403084
mov esi, esp
lea ecx, [ebp - 0x2068]
push ecx
lea edx, [ebp - 0x1c68]
push edx
lea eax, [ebp - 0x1868]
push eax
lea ecx, [ebp - 0x1068]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp + 8]
push ecx
call dword [eax + 0x10]
cmp esi, esp
call fcn.0041fa50
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jl 0x403084
mov esi, esp
lea edx, [ebp - 0x1068]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp esi, esp
call fcn.0041fa50
push 0x3c
push 0
lea eax, [ebp - 0x20ac]
push eax
call fcn.004210a0
add esp, 0xc
mov dword [ebp - 0x20ac], 0x3c
lea ecx, [ebp - 0x24ac]
mov dword [ebp - 0x2080], ecx
mov dword [ebp - 0x207c], 0x400
mov dword [ebp - 0x28b0], 0
mov esi, esp
lea edx, [ebp - 0x20ac]
push edx
push 0
mov edi, esp
lea eax, [ebp - 0x1868]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp edi, esp
call fcn.0041fa50
push eax
lea ecx, [ebp - 0x1868]
push ecx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
cmp esi, esp
call fcn.0041fa50
test eax, eax
je 0x402f53
push 0
lea edx, [ebp - 0x1468]
push edx
push 0
push 0
lea eax, [ebp - 0x24ac]
push eax
call fcn.004211b0
add esp, 0x14
push 1
lea ecx, [ebp - 0x24ac]
push ecx
call fcn.00402b30
add esp, 8
mov dword [ebp - 0x28b0], eax
mov esi, esp
mov edx, dword [ebp - 0x28b0]
push edx
lea eax, [ebp - 0x1468]
push eax
push str._s__x
lea ecx, [ebp - 0x28ac]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp esi, esp
call fcn.0041fa50
jmp 0x402f96
push 1
lea edx, [ebp - 0x1868]
push edx
call fcn.00402b30
add esp, 8
mov dword [ebp - 0x28b0], eax
mov esi, esp
mov eax, dword [ebp - 0x28b0]
push eax
lea ecx, [ebp - 0xc68]
push ecx
push str.jupdate_s__x
lea edx, [ebp - 0x28ac]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp esi, esp
call fcn.0041fa50
mov esi, esp
lea eax, [ebp - 0x1468]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
lea ecx, [ebp - 0x28ac]
push ecx
lea edx, [ebp - 0x1468]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
lea eax, [ebp - 0x1868]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp esi, esp
call fcn.0041fa50
cmp eax, 4
jle 0x40303c
mov esi, esp
push str..msi
mov edi, esp
lea ecx, [ebp - 0x1868]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp edi, esp
call fcn.0041fa50
lea edx, [ebp + eax - 0x186c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
cmp esi, esp
call fcn.0041fa50
test eax, eax
jne 0x40303c
mov esi, esp
push str..msi
lea eax, [ebp - 0x1468]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp esi, esp
call fcn.0041fa50
jmp 0x403057
mov esi, esp
push str..exe
lea ecx, [ebp - 0x1468]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp esi, esp
call fcn.0041fa50
lea edx, [ebp - 0x1c68]
push edx
lea eax, [ebp - 0x2068]
push eax
lea ecx, [ebp - 0x1468]
push ecx
lea edx, [ebp - 0x1868]
push edx
lea eax, [ebp - 0x64]
push eax
call fcn.004038b0
mov dword [ebp - 0x68], eax
jmp 0x403107
cmp dword [ebp + 0xc], 0
je 0x403107
cmp dword [ebp - 0x2070], 0
je 0x403107
mov esi, esp
push 0x400
lea ecx, [ebp - 0x2cb0]
push ecx
push 0x71
mov ecx, 0x444080
call fcn.00401a10
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
push 0x400
lea edx, [ebp - 0x30b0]
push edx
push 0x87
mov ecx, 0x444080
call fcn.00401a10
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
push 0x40
lea eax, [ebp - 0x2cb0]
push eax
lea ecx, [ebp - 0x30b0]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp esi, esp
call fcn.0041fa50
jmp 0x403183
cmp dword [ebp + 0xc], 0
je 0x403183
mov esi, esp
push 0x400
lea edx, [ebp - 0x34b0]
push edx
push 0x71
mov ecx, 0x444080
call fcn.00401a10
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
push 0x400
lea eax, [ebp - 0x38b0]
push eax
push 0x8b
mov ecx, 0x444080
call fcn.00401a10
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
cmp esi, esp
call fcn.0041fa50
mov esi, esp
push 0x40
lea ecx, [ebp - 0x34b0]
push ecx
lea edx, [ebp - 0x38b0]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp esi, esp
call fcn.0041fa50
push str.LastUpdateFinishTime
push 0
call fcn.00419480
add esp, 8
call fcn.0041a1e0
call fcn.0041a260
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x38b4], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.004034d0
mov eax, dword [ebp - 0x38b4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x38f4
cmp ebp, esp
call fcn.0041fa50
mov esp, ebp
pop ebp
ret 8