Function at 0x411b21
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x56adf1
mov eax, dword fs:[0]
push eax
sub esp, 0xb8
mov eax, dword [0x5c9030]
xor eax, esp
mov dword [esp + 0xb0], eax
push ebx
push esi
push edi
mov eax, dword [0x5c9030]
xor eax, esp
push eax
lea eax, [esp + 0xc8]
mov dword fs:[0], eax
mov dword [esp + 0x14], ecx
call fcn.0043a21e
mov ecx, dword [eax + 8]
call fcn.00412a75
push 0x2f
mov ebx, str.EEventManager.cpp
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x411b89
push 0x2f
jmp 0x411b99
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x411ba4
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x411ba6
mov eax, ebx
push 1
push 0xa0
push eax
lea esi, [esp + 0x28]
call fcn.00404b01
and dword [esp + 0xd0], 0
push str.Starting_Event_Manager__
push 0
mov ecx, eax
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0xd4], 0xffffffff
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x411bf6
push 0x2f
jmp 0x411c06
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x411c11
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x411c13
mov eax, ebx
xor edi, edi
inc edi
push edi
push 0xa1
push eax
lea esi, [esp + 0x28]
call fcn.00404b01
push str.CEEventManagerApp::InitInstance
xor esi, esi
push esi
mov ecx, eax
mov dword [esp + 0xd8], edi
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0xd4], 0xffffffff
pop ecx
lea ecx, [esp + 0x1c]
call fcn.00404b6d
push 0x598bdd
call fcn.00411af8
mov dword [esp], str.EPSON_Event_Manager
push 1
push esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x24], esi
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x5d1678], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x411d25
push str.Epson_Event_Manager_Background
push 0x59ae0c
call dword [sym.imp.USER32.dll_FindWindowW]
push dword [0x5d1678]
mov dword [esp + 0x1c], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x411cbf
push 0x2f
jmp 0x411ccf
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x411cda
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x411cdc
mov eax, ebx
push 1
push 0xac
push eax
lea esi, [esp + 0x78]
call fcn.00404b01
push str.This_is_second_instance_of_Event_Manager__
push 0
mov ecx, eax
mov dword [esp + 0xd8], 2
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0xd4], 0xffffffff
pop ecx
mov ecx, esi
call fcn.00404b6d
mov edi, dword [esp + 0x14]
xor esi, esi
jmp 0x411d88
mov edi, dword [esp + 0x14]
call fcn.00411dec
push 0xe28
call fcn.004385a6
pop ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xd0], 3
cmp eax, esi
je 0x411d56
push eax
call fcn.004184d7
mov ebx, eax
jmp 0x411d58
xor ebx, ebx
or dword [esp + 0xd0], 0xffffffff
push esi
push esi
push esi
mov dword [edi + 0x20], ebx
mov eax, dword [ebx]
push 0x80
mov ecx, ebx
mov dword [esp + 0x20], ebx
call dword [eax + 0x164]
push esi
mov ecx, ebx
call fcn.0043c106
push esi
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [esp + 0x18]
push edi
call fcn.004110d7
cmp dword [edi + 0x20], esi
je 0x411dc5
push esi
call fcn.0043d2d0
pop ecx
push 4
mov ecx, edi
call fcn.0043b04c
push esi
call fcn.00539d95
pop ecx
push eax
call fcn.0053ca23
pop ecx
push dword [esp + 0x10]
add edi, 0xb8
push edi
call fcn.0041593a
xor eax, eax
inc eax
mov ecx, dword [esp + 0xc8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xb0]
xor ecx, esp
call fcn.005384ff
mov esp, ebp
pop ebp
ret