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

Disassembly:
push ebp
sub esp, 0x70
lea ebp, [esp - 4]
mov eax, dword [0x4976a0]
xor eax, ebp
mov dword [ebp + 0x70], eax
push 0x28
mov eax, 0x47158c
call fcn.00452597
xor edi, edi
push 0x476f1c
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 0x4081fe
cmp dword [0x49c100], 3
jg 0x4081fe
push str.Could_not_initialize_common_controls_
lea ecx, [ebp + 0x38]
call fcn.0040246d
push str.WinMain
push 0x70
xor ebx, ebx
push str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_au_jucheck_UpdateChecker.cpp
inc ebx
push 3
mov edx, eax
mov ecx, 0x49c100
mov byte [ebp - 4], bl
call fcn.00421538
push edi
push ebx
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0
call fcn.0040321f
jmp 0x408201
xor ebx, ebx
inc ebx
mov eax, 0x49c01c
cmp eax, 0xffffffff
je 0x40821f
mov dword [0x49c098], eax
mov esi, eax
cmp dword [esi], edi
je 0x40821f
push ebx
call dword [esi + 0x20]
add esi, 0x24
jmp 0x408212
mov esi, dword [0x49b000]
cmp esi, dword [0x49b004]
jae 0x40823c
mov eax, dword [esi]
cmp eax, edi
je 0x408237
push ebx
call dword [eax + 0x20]
add esi, 4
jmp 0x408225
cmp dword [0x49c100], ebx
jg 0x40829b
lea eax, [ebp + 0x54]
push edi
push eax
call fcn.0042ef2e
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x38]
push str.UpdateChecker.cpp_MOS_MODE
push eax
mov byte [ebp - 4], 2
call fcn.0042ef2e
add esp, 0xc
push str.WinMain
push 0x76
push str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_au_jucheck_UpdateChecker.cpp
push ebx
mov edx, eax
mov ecx, 0x49c100
mov byte [ebp - 4], 3
call fcn.00421538
push edi
push ebx
lea ecx, [ebp + 0x38]
call fcn.0040321f
push edi
push ebx
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0
call fcn.0040321f
mov esi, 0x47a14c
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.00408127
mov edi, str.getconfig
mov esi, eax
pop ecx
test esi, esi
je 0x408652
push str.UnregServer
push esi
call dword [sym.imp.kernel32.dll_lstrcmpiA]
test eax, eax
je 0x4086a1
push str.RegServer
push esi
call dword [sym.imp.kernel32.dll_lstrcmpiA]
test eax, eax
je 0x4086a1
push str.auto
call fcn.0044c4a0
push eax
push str.auto
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x408327
and dword [0x498d5c], eax
mov dword [str.jau_m], 0x47a170
lea eax, [ebp - 0x18]
push eax
mov eax, esi
call fcn.00408127
jmp 0x4082ba
push str.scheduled
call fcn.0044c4a0
push eax
push str.scheduled
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x40834c
mov dword [0x49c040], ebx
jmp 0x40831a
push str.pending
call fcn.0044c4a0
push eax
push str.pending
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x408371
mov dword [0x49c044], ebx
jmp 0x40831a
push str.critical
call fcn.0044c4a0
push eax
push str.critical
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x408396
mov dword [0x49c048], ebx
jmp 0x40831a
push str.test
call fcn.0044c4a0
push eax
push str.test
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x4083cd
lea eax, [esi + 5]
push eax
push 0x49bdf8
mov dword [0x49c04c], ebx
call dword [sym.imp.kernel32.dll_lstrcpyA]
jmp 0x40831a
push str.setconfig
call fcn.0044c4a0
push eax
push str.setconfig
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x4084ce
push str.setconfig
call fcn.0044c4a0
pop ecx
add eax, esi
push eax
lea ecx, [ebp + 0x38]
call fcn.0040246d
lea eax, [ebp + 0x38]
push eax
mov byte [ebp - 4], 5
call fcn.00416de1
pop ecx
mov dword [ebp - 4], 4
jmp 0x4084ba
lea ecx, [ebp + 0x38]
push 0
push ebx
mov byte [ebp - 4], 0
call fcn.0040321f
jmp 0x4086a1
push edi
call fcn.0044c4a0
push eax
push edi
push esi
call fcn.0042ef2e
add esp, 0x10
test eax, eax
jne 0x40831a
push edi
call fcn.0044c4a0
pop ecx
add eax, esi
push eax
lea ecx, [ebp + 0x54]
call fcn.0040246d
mov byte [ebp - 4], 0xa
and dword [ebp - 0x1c], 0
cmp dword [ebp + 0x68], 0x10
mov eax, dword [ebp + 0x54]
jae 0x40850d
lea eax, [ebp + 0x54]
lea ecx, [ebp - 0x1c]
push ecx
push 0x47a1c8
push eax
call fcn.0042ef2e
add esp, 0xc
cmp eax, ebx
je 0x408576
cmp dword [ebp - 0x1c], 0
jl 0x408576
cmp dword [0x49c100], 3
jg 0x408571
lea eax, [ebp + 0x1c]
push str.getconfig_error___incorrect_version:
push eax
lea edi, [ebp + 0x54]
call fcn.00408976
pop ecx
pop ecx
push str.WinMain
push 0xb5
push str.c:_ade_jenkins_workspace_8_2_build_windows_i586_cygwin_jdk8u241_331_install_src_windows_au_jucheck_UpdateChecker.cpp
push 3
mov edx, eax
mov ecx, 0x49c100
mov byte [ebp - 4], 0x10
call fcn.00421538
push 0
push ebx
lea ecx, [ebp + 0x1c]
call fcn.0040321f
mov dword [ebp - 0x14], ebx
jmp 0x4085b1
mov byte [ebp - 4], 0xb
push dword [ebp - 0x1c]
lea ebx, [ebp + 0x1c]
call fcn.00417484
cmp dword [eax + 0x14], 0x10
pop ecx
jb 0x40858e
mov eax, dword [eax]
push eax
push 0x47a1cc
call fcn.0042ef2e
pop ecx
pop ecx
push 0
push 1
lea ecx, [ebp + 0x1c]
call fcn.0040321f
mov dword [ebp - 4], 0xa
xor ebx, ebx
inc ebx
lea ecx, [ebp + 0x54]
jmp 0x4084bd
xor eax, eax
inc eax
je 0x4086a1
push str.SunJavaUpdateCheckerMutex
push ebx
xor edi, edi
push edi
call dword [sym.imp.kernel32.dll_CreateMutexA]
mov ebx, eax
cmp ebx, edi
je 0x4086d2
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0xb7
je 0x4086d2
call fcn.0040f684
push dword [0x498d60]
push str.Method
push edi
call fcn.0040f0c4
add esp, 0xc
call fcn.0042ef2e
mov dword [ebp - 0x14], eax
push ebx
call dword [sym.imp.kernel32.dll_CloseHandle]
mov esi, dword [0x49c098]
xor edi, edi
cmp esi, edi
je 0x408778
cmp dword [esi], edi
je 0x408778
mov eax, dword [esi + 0x10]
cmp eax, edi
je 0x4086c6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
mov dword [esi + 0x10], edi
call dword [esi + 0x20]
add esi, 0x24
jmp 0x4086b1
mov dword [ebp - 0x14], 0x64
cmp ebx, edi
je 0x4086a1
cmp dword [0x498d5c], edi
jne 0x4086ed
cmp dword [0x49c040], edi
je 0x40869a
push dword [0x498d60]
push str.Method
push edi
call fcn.0040f0c4
add esp, 0xc
push str.SunJavaUpdateRecheckUpdateEvent
push edi
push 0x1f0003
call dword [sym.imp.kernel32.dll_OpenEventA]
mov esi, eax
cmp esi, edi
je 0x40869a
push esi
call dword [sym.imp.kernel32.dll_SetEvent]
push esi
call dword [sym.imp.kernel32.dll_CloseHandle]
jmp 0x40869a
mov esi, dword [0x49b000]
cmp esi, dword [0x49b004]
jae 0x408795
mov eax, dword [esi]
cmp eax, edi
je 0x408790
push edi
call dword [eax + 0x20]
add esi, 4
jmp 0x40877e
mov eax, 0x49c06c
call fcn.00405d46
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.0044a628
add ebp, 0x74
leave
ret 0x10