Function at 0x4081d6
Capabilities:
Check mutex on windows

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0x2ac
push ebx
push esi
push edi
push str.lsupdate_mutex
xor ebx, ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
cmp eax, ebx
mov dword [ebp + 0x54], eax
je 0x40822f
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
mov esi, dword [sym.imp.USER32.dll_FindWindowW]
jne 0x4082ad
push 0x412950
push ebx
call esi
mov edi, eax
cmp edi, ebx
je 0x408236
push 9
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
push edi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
xor eax, eax
jmp 0x40870f
mov eax, dword [0x415050]
mov dword [ebp + 0x64], eax
push 0xff
lea eax, [ebp - 0x244]
push eax
push dword [ebp + 0x70]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push ecx
lea eax, [ebp - 0x244]
mov ecx, esp
push eax
call fcn.0040321e
lea eax, [ebp + 0x60]
push eax
call fcn.004033b7
pop ecx
pop ecx
push eax
lea ecx, [ebp + 0x64]
call fcn.004029af
lea ecx, [ebp + 0x60]
call fcn.00401869
mov eax, dword [ebp + 0x64]
cmp dword [eax - 8], ebx
jne 0x408293
push str.lvsupdate.exe
lea ecx, [ebp + 0x64]
call fcn.004029ff
push ecx
lea eax, [ebp + 0x64]
mov ecx, esp
push eax
call fcn.004031eb
call fcn.0040340f
pop ecx
lea ecx, [ebp + 0x64]
call fcn.00401869
lea eax, [ebp + 0x4c]
push eax
mov dword [ebp + 0x4c], 8
mov dword [ebp + 0x50], 4
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
push ebx
push dword [ebp + 0x78]
mov edi, 0x415db0
push dword [ebp + 0x70]
mov ecx, edi
push ebx
call fcn.0040775c
test al, al
jne 0x4082f5
push dword [ebp + 0x54]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, edi
call fcn.0040293b
or eax, 0xffffffff
jmp 0x40870f
push ebx
push str.LVSEIE_MainWnd
call esi
push str._setting.ini
mov dword [ebp + 0x70], eax
mov esi, 0x415df4
push esi
lea eax, [ebp + 0x60]
push eax
call fcn.0040336b
push ecx
lea eax, [ebp + 0x60]
mov ecx, esp
push eax
call fcn.004031eb
mov edi, 0x415e1c
mov ecx, edi
call fcn.004092a9
test eax, eax
jne 0x408337
xor esi, esi
jmp 0x408705
push str.update.ini
push esi
lea eax, [ebp + 0x58]
push eax
call fcn.0040336b
push ecx
lea eax, [ebp + 0x58]
mov ecx, esp
push eax
call fcn.004031eb
mov ecx, 0x415dfc
call fcn.004092a9
test eax, eax
jne 0x408378
push dword [ebp + 0x70]
push dword [ebp + 0x7c]
push dword [ebp + 0x78]
call fcn.00403019
add esp, 0xc
xor esi, esi
jmp 0x4086ea
mov eax, dword [0x415dec]
cmp eax, ebx
jne 0x408454
push ecx
mov ecx, esp
mov ebx, 0x4128c4
push ebx
call fcn.0040321e
push ecx
mov ecx, esp
mov esi, 0x4128bc
push esi
call fcn.0040321e
push ecx
mov ecx, esp
push str.update
call fcn.0040321e
lea eax, [ebp + 0x5c]
push eax
mov ecx, 0x415dfc
call fcn.0040969a
push ecx
mov ecx, esp
push ebx
call fcn.0040321e
push ecx
mov ecx, esp
push esi
call fcn.0040321e
push ecx
mov ecx, esp
push 0x41291c
call fcn.0040321e
lea eax, [ebp + 0x64]
push eax
mov ecx, edi
call fcn.0040969a
push dword [ebp + 0x64]
push dword [ebp + 0x5c]
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
push dword [ebp + 0x70]
push dword [ebp + 0x7c]
push dword [ebp + 0x78]
jne 0x408406
call fcn.00403019
jmp 0x40843a
call fcn.00402f93
mov esi, eax
add esp, 0xc
cmp esi, 1
jne 0x40843f
push dword [ebp + 0x70]
push dword [ebp + 0x7c]
push dword [ebp + 0x78]
call fcn.004074e2
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x40843f
push dword [ebp + 0x70]
push dword [ebp + 0x7c]
push dword [ebp + 0x78]
call fcn.0040309f
add esp, 0xc
mov esi, eax
lea ecx, [ebp + 0x64]
call fcn.00401869
lea ecx, [ebp + 0x5c]
call fcn.00401869
jmp 0x4086ea
cmp eax, 1
jne 0x4086e7
lea ecx, [ebp - 0x44]
call fcn.00406c52
lea ecx, [ebp + 0x30]
call fcn.004070a3
push ecx
mov ebx, esp
push ecx
mov ecx, esp
push 0x415df8
call fcn.004031eb
push ebx
call fcn.00401f17
pop ecx
mov ecx, esp
push esi
call fcn.004031eb
push ecx
mov ecx, esp
mov ebx, 0x415df0
push ebx
call fcn.004031eb
lea ecx, [ebp + 0x30]
call fcn.00407d7d
and dword [ebp + 0x7c], 0
lea ecx, [ebp + 0x3c]
call fcn.004014e4
test eax, eax
jle 0x408537
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x78], eax
push ecx
mov ecx, esp
push dword [ebp + 0x78]
call fcn.004031eb
lea eax, [ebp + 0x64]
push eax
call fcn.004033b7
pop ecx
pop ecx
push eax
push 0x412b78
push ebx
lea eax, [ebp + 0x5c]
push eax
call fcn.0040336b
push eax
lea eax, [ebp + 0x70]
push eax
call fcn.0040332a
lea ecx, [ebp + 0x5c]
call fcn.00401869
lea ecx, [ebp + 0x64]
call fcn.00401869
push ecx
lea eax, [ebp + 0x70]
mov ecx, esp
push eax
call fcn.004031eb
push ecx
mov ecx, esp
push dword [ebp + 0x78]
call fcn.004031eb
lea ecx, [ebp - 0x44]
call fcn.00407bcb
lea ecx, [ebp + 0x70]
call fcn.00401869
inc dword [ebp + 0x7c]
add dword [ebp + 0x78], 0x10
lea ecx, [ebp + 0x3c]
call fcn.004014e4
cmp dword [ebp + 0x7c], eax
jl 0x4084bc
lea ecx, [ebp + 0x3c]
call fcn.004014e4
test eax, eax
jle 0x4086d7
push 0
lea ecx, [ebp - 0x44]
call fcn.0040288b
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x408565
lea ecx, [ebp - 0x40]
call fcn.004023b2
test al, al
jne 0x40857b
push 0x14
call ebx
lea ecx, [ebp - 0x40]
call fcn.00402421
test al, al
je 0x408559
mov byte [ebp + 0x7b], 1
jmp 0x40857f
mov byte [ebp + 0x7b], 0
push ecx
mov ebx, esp
push ecx
mov ecx, esp
push 0x415df8
call fcn.004031eb
push ebx
call fcn.004033b7
pop ecx
pop ecx
call fcn.00401a32
test eax, eax
pop ecx
jl 0x4086d7
cmp byte [ebp + 0x7b], 0
je 0x4086d7
lea ecx, [ebp + 0x14]
call fcn.004070a3
push ecx
mov ebx, esp
push ecx
mov ecx, esp
push 0x415df8
call fcn.004031eb
push ebx
call fcn.00401f17
pop ecx
mov ecx, esp
push esi
call fcn.004031eb
push ecx
mov ecx, esp
push 0x415df0
call fcn.004031eb
lea ecx, [ebp + 0x14]
call fcn.00407d7d
push 0
lea ecx, [ebp + 0x14]
call fcn.00407947
test eax, eax
jl 0x4086cf
push ecx
mov ecx, esp
push 0x4128c4
call fcn.0040321e
push ecx
mov ecx, esp
mov esi, 0x4128bc
push esi
call fcn.0040321e
push ecx
mov ecx, esp
push str.update
call fcn.0040321e
lea eax, [ebp + 0x7c]
push eax
mov ecx, 0x415dfc
call fcn.0040969a
push ecx
lea eax, [ebp + 0x7c]
mov ecx, esp
push eax
call fcn.004031eb
push ecx
mov ecx, esp
push esi
call fcn.0040321e
push ecx
mov ecx, esp
mov ebx, 0x41291c
push ebx
call fcn.0040321e
mov ecx, edi
call fcn.0040918b
push ecx
mov ecx, esp
push str.http:__www.hao123.com__tn39015028_27_hao_pg
call fcn.0040321e
push ecx
mov ecx, esp
mov esi, str.home_url
push esi
call fcn.0040321e
push ecx
mov ecx, esp
push str.update
call fcn.0040321e
lea eax, [ebp + 0x78]
push eax
mov ecx, 0x415dfc
call fcn.0040969a
push ecx
lea eax, [ebp + 0x78]
mov ecx, esp
push eax
call fcn.004031eb
push ecx
mov ecx, esp
push esi
call fcn.0040321e
push ecx
mov ecx, esp
push ebx
call fcn.0040321e
mov ecx, edi
call fcn.0040918b
mov ecx, edi
call fcn.004090be
lea ecx, [ebp + 0x78]
call fcn.00401869
lea ecx, [ebp + 0x7c]
call fcn.00401869
lea ecx, [ebp + 0x14]
call fcn.0040698a
lea ecx, [ebp + 0x30]
call fcn.0040698a
lea ecx, [ebp - 0x44]
call fcn.00407311
mov esi, dword [ebp + 0x78]
push dword [ebp + 0x54]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x415db0
call fcn.0040293b
lea ecx, [ebp + 0x58]
call fcn.00401869
lea ecx, [ebp + 0x60]
call fcn.00401869
mov eax, esi
pop edi
pop esi
pop ebx
add ebp, 0x68
leave
ret 0x10