Function at 0x40824b
Capabilities:
Accept command line arguments
Check mutex on windows

Disassembly:
push ebp
sub esp, 0x70
lea ebp, [esp - 4]
mov eax, dword [0x4956a0]
xor eax, ebp
mov dword [ebp + 0x70], eax
push 0x28
mov eax, 0x46f9f0
call fcn.00451687
xor edi, edi
push 0x475e44
mov dword [ebp - 0x14], edi
mov dword [ebp - 4], edi
call dword [sym.imp.kernel32.dll_SetDllDirectoryA]
push edi
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x20], 0x80ff
call dword [sym.imp.comctl32.dll_InitCommonControlsEx]
test eax, eax
jne 0x4082e2
cmp dword [0x49a024], 3
jg 0x4082e2
push str.Could_not_initialize_common_controls_
lea ecx, [ebp + 0x1c]
call fcn.00402573
push str.WinMain
push 0x57
push str.c:_workspace_8_2_build_windows_i586_cygwin_jdk8u181_11358_install_src_windows_au_jucheck_UpdateChecker.cpp
push 3
mov edx, eax
mov ecx, 0x49a024
mov byte [ebp - 4], 1
call fcn.0042432e
push edi
push 1
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0
call fcn.00403353
mov eax, 0x499f3c
cmp eax, 0xffffffff
je 0x408301
mov dword [0x499fbc], eax
mov esi, eax
cmp dword [esi], edi
je 0x408301
push 1
call dword [esi + 0x20]
add esi, 0x24
jmp 0x4082f3
mov esi, dword [0x498f20]
cmp esi, dword [0x498f24]
jae 0x40831f
mov eax, dword [esi]
cmp eax, edi
je 0x40831a
push 1
call dword [eax + 0x20]
add esi, 4
jmp 0x408307
mov esi, 0x479054
lea edi, [ebp - 0x18]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0x18]
push eax
movsb byte es:[edi], byte [esi]
call dword [sym.imp.kernel32.dll_GetCommandLineA]
call fcn.0040c6d7
mov ebx, str.setconfig
mov edi, str.getconfig
mov esi, eax
pop ecx
test esi, esi
je 0x408706
push str.UnregServer
push esi
call dword [sym.imp.kernel32.dll_lstrcmpiA]
test eax, eax
je 0x4084b9
push str.RegServer
push esi
call dword [sym.imp.kernel32.dll_lstrcmpiA]
test eax, eax
je 0x4084b9
push str.auto
call fcn.0044b400
push eax
push str.auto
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x4083b0
and dword [0x496d5c], eax
mov dword [str.jau_m], 0x479078
lea eax, [ebp - 0x18]
push eax
mov eax, esi
call fcn.0040c6d7
jmp 0x408343
push str.scheduled
call fcn.0044b400
push eax
push str.scheduled
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x4083d9
mov dword [0x499f60], 1
jmp 0x4083a3
push str.pending
call fcn.0044b400
push eax
push str.pending
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x408402
mov dword [0x499f64], 1
jmp 0x4083a3
push str.critical
call fcn.0044b400
push eax
push str.critical
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x40842e
mov dword [0x499f68], 1
jmp 0x4083a3
push str.test
call fcn.0044b400
push eax
push str.test
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x408469
lea eax, [esi + 5]
push eax
push 0x499d18
mov dword [0x499f6c], 1
call dword [sym.imp.kernel32.dll_lstrcpyA]
jmp 0x4083a3
push ebx
call fcn.0044b400
push eax
push ebx
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x408583
push ebx
call fcn.0044b400
pop ecx
add eax, esi
push eax
lea ecx, [ebp + 0x1c]
call fcn.00402573
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], 3
call fcn.00417d8b
pop ecx
mov dword [ebp - 4], 2
lea ecx, [ebp + 0x1c]
push 0
push 1
mov byte [ebp - 4], 0
call fcn.00403353
xor ebx, ebx
mov esi, dword [0x499fbc]
cmp esi, ebx
je 0x408805
cmp dword [esi], ebx
je 0x408805
mov eax, dword [esi + 0x10]
cmp eax, ebx
je 0x4084de
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push ebx
mov dword [esi + 0x10], ebx
call dword [esi + 0x20]
add esi, 0x24
jmp 0x4084c9
push edi
call fcn.0044b400
push eax
push edi
push esi
call fcn.00461382
add esp, 0x10
test eax, eax
jne 0x4083a3
push edi
call fcn.0044b400
pop ecx
add eax, esi
push eax
lea ecx, [ebp + 0x54]
call fcn.00402573
mov byte [ebp - 4], 8
mov eax, dword [ebp + 0x54]
xor ebx, ebx
cmp dword [ebp + 0x68], 0x10
mov dword [ebp - 0x1c], ebx
jae 0x4085c3
lea eax, [ebp + 0x54]
lea ecx, [ebp - 0x1c]
push ecx
push 0x4790d0
push eax
call fcn.00461382
xor esi, esi
inc esi
add esp, 0xc
cmp eax, esi
je 0x408633
cmp dword [ebp - 0x1c], ebx
jl 0x408633
cmp dword [0x49a024], 3
jg 0x408628
lea eax, [ebp + 0x38]
push str.getconfig_error___incorrect_version:
push eax
lea edi, [ebp + 0x54]
call fcn.004089f6
pop ecx
pop ecx
push str.WinMain
push 0x98
push str.c:_workspace_8_2_build_windows_i586_cygwin_jdk8u181_11358_install_src_windows_au_jucheck_UpdateChecker.cpp
push 3
mov edx, eax
mov ecx, 0x49a024
mov byte [ebp - 4], 0xe
call fcn.0042432e
push ebx
push esi
lea ecx, [ebp + 0x38]
call fcn.00403353
mov dword [ebp - 0x14], esi
lea ecx, [ebp + 0x54]
jmp 0x4084ac
mov byte [ebp - 4], 9
push dword [ebp - 0x1c]
lea ebx, [ebp + 0x38]
call fcn.0041842e
cmp dword [eax + 0x14], 0x10
pop ecx
jb 0x40864b
mov eax, dword [eax]
push eax
push 0x4790d4
call fcn.00461382
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp + 0x38]
call fcn.00403353
mov dword [ebp - 4], 8
jmp 0x40862b
xor eax, eax
inc eax
je 0x4084b9
push str.SunJavaUpdateCheckerMutex
push eax
xor ebx, ebx
push ebx
call dword [sym.imp.kernel32.dll_CreateMutexA]
mov edi, eax
cmp edi, ebx
je 0x40875e
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0xb7
je 0x40875e
call fcn.004122b0
push dword [0x496d60]
push str.Method
push ebx
call fcn.00410602
add esp, 0xc
call fcn.00461382
mov dword [ebp - 0x14], eax
push edi
call dword [sym.imp.kernel32.dll_CloseHandle]
jmp 0x4084bb
mov dword [ebp - 0x14], 0x64
cmp edi, ebx
je 0x4084bb
cmp dword [0x496d5c], ebx
jne 0x40877d
cmp dword [0x499f60], ebx
je 0x408752
push dword [0x496d60]
push str.Method
push ebx
call fcn.00410602
add esp, 0xc
push str.SunJavaUpdateRecheckUpdateEvent
push ebx
push 0x1f0003
call dword [sym.imp.kernel32.dll_OpenEventA]
mov esi, eax
cmp esi, ebx
je 0x408752
push esi
call dword [sym.imp.kernel32.dll_SetEvent]
push esi
call dword [sym.imp.kernel32.dll_CloseHandle]
jmp 0x408752
mov esi, dword [0x498f20]
cmp esi, dword [0x498f24]
jae 0x408822
mov eax, dword [esi]
cmp eax, ebx
je 0x40881d
push ebx
call dword [eax + 0x20]
add esi, 4
jmp 0x40880b
mov eax, 0x499f90
call fcn.00405e70
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x70]
xor ecx, ebp
call fcn.00449589
add ebp, 0x74
leave
ret 0x10