Function at 0x411a9a
Capabilities:
Check mutex on windows

Disassembly:
sub esp, 0x30
cmp dword [esp + 0x3c], 0
push ebx
push ebp
push esi
push edi
jne 0x411c77
mov edi, dword [esp + 0x48]
test edi, edi
je 0x411dbb
call fcn.00413e2f
push 2
pop esi
xor ebx, ebx
cmp eax, esi
jae 0x411ad5
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x14], ebx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
call fcn.00413e2f
mov ebp, dword [sym.imp.KERNEL32.dll_CreateEventA]
cmp eax, esi
jae 0x411af5
push ebx
push ebx
push ebx
push ebx
call ebp
test eax, eax
je 0x411af5
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.00413e2f
cmp eax, esi
jae 0x411b13
push str.Local11200
push ebx
push ebx
push ebx
call ebp
test eax, eax
je 0x411b13
push eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
call fcn.00413e2f
mov ebp, dword [sym.imp.KERNEL32.dll_CreateMutexA]
cmp eax, 3
jae 0x411b2c
push str.Local532
push ebx
push ebx
call ebp
call fcn.00413e2f
cmp eax, esi
jae 0x411b4b
push esi
call fcn.0041a976
pop ecx
test eax, eax
je 0x411b4b
push eax
mov byte [eax + 1], 0xf7
call fcn.0040c4f8
pop ecx
mov byte [esp + 0x4c], bl
cmp byte [esp + 0x4c], bl
je 0x411b7d
mov esi, 0x15b
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
push 0x15b
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
dec esi
jne 0x411b5a
call fcn.00413e2f
cmp eax, 3
jae 0x411b90
push str.Local46
push ebx
push ebx
call ebp
mov byte [esp + 0x4c], bl
cmp byte [esp + 0x4c], bl
je 0x411bac
push ebx
push ebx
call dword [sym.imp.USER32.dll_IsDialogMessageA]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_SetDlgItemInt]
push 0xffffffffffffffff
push edi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x411c52
call fcn.00413a9f
mov esi, dword [esp + 0x44]
sub eax, dword [esi + 0x10]
mov dword [esi + 0xc], eax
mov ecx, dword [0x4387c0]
lea eax, [ecx + 0xa0]
push eax
push 1
call fcn.0040f4a2
cmp dword [eax], ebx
je 0x411c01
mov ecx, dword [0x4387c0]
lea eax, [ecx + 0xa0]
push eax
push 1
call fcn.0040f4a2
lea ecx, [esi + 0x18]
push ecx
push edi
call dword [eax]
mov ebx, eax
test ebx, ebx
jne 0x411c0b
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [esi + 0x18]
push str.process_exit_code:__d
push esi
call fcn.00413e4d
mov eax, dword [esi]
add esp, 0xc
test byte [eax], 0x40
je 0x411dbb
cmp dword [esi + 0x18], 0
je 0x411dbb
push dword [esi + 0x18]
lea ecx, [esp + 0x34]
call fcn.0040f785
push 0x435170
lea eax, [esp + 0x34]
jmp 0x411dd5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, dword [esp + 0x44]
push eax
push str._ec_08x__wait_process_failed
push esi
call fcn.00413e4d
mov eax, dword [esi]
add esp, 0xc
test byte [eax], 0x20
je 0x411c0b
jmp 0x411dc3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, dword [esp + 0x44]
push eax
push str._ec_08x__create_process_failed
push esi
call fcn.00413e4d
mov eax, dword [esi]
add esp, 0xc
test byte [eax], 0x20
je 0x411cae
lea ecx, [esp + 0x24]
call fcn.0041bbe7
push 0x435158
lea eax, [esp + 0x28]
jmp 0x411dd5
call fcn.00413e2f
push 2
pop esi
cmp eax, esi
jae 0x411cd0
push esi
call fcn.0041a976
pop ecx
test eax, eax
je 0x411cd0
push eax
mov byte [eax + 1], 0x35
call fcn.0040c4f8
pop ecx
call fcn.00413e2f
xor ebx, ebx
cmp eax, 3
jae 0x411ce9
push str.Local205
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
call fcn.00413e2f
cmp eax, esi
jae 0x411d08
push esi
call fcn.0041a976
pop ecx
test eax, eax
je 0x411d08
push eax
mov byte [eax + 1], 0x36
call fcn.0040c4f8
pop ecx
call fcn.00413e2f
cmp eax, esi
jae 0x411d20
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x18], ebx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov byte [esp + 0x4c], bl
cmp byte [esp + 0x4c], bl
je 0x411d3c
push ebx
push ebx
call dword [sym.imp.USER32.dll_IsDialogMessageA]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_SetDlgItemInt]
call fcn.00413e2f
cmp eax, esi
jae 0x411d5b
push str.635635
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
test eax, eax
je 0x411d5b
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edi, dword [sym.imp.USER32.dll_DialogBoxParamA]
mov ebp, dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [esp + 0x4c], bl
cmp byte [esp + 0x4c], bl
je 0x411d91
mov esi, 0x27e
push ebx
push ebx
push ebx
push ebx
push ebx
call edi
push 0x27e
call ebp
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
dec esi
jne 0x411d76
mov byte [esp + 0x4c], bl
cmp byte [esp + 0x4c], bl
je 0x411dbb
mov esi, 0x3e7
push ebx
push ebx
push ebx
push ebx
push ebx
call edi
push 0x3e7
call ebp
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
dec esi
jne 0x411da0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
lea ecx, [esp + 0x18]
call fcn.0041bbe7
push 0x435158
lea eax, [esp + 0x1c]
push eax
call fcn.0041bcde
int3