Function at 0x41195f
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x56a552
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.00439b35
mov ecx, dword [eax + 8]
call fcn.004128b6
push 0x2f
mov edi, str.EEventManager.cpp
push edi
call fcn.00538be0
pop ecx
pop ecx
test eax, eax
je 0x4119c7
push 0x2f
jmp 0x4119d7
push 0x5c
push edi
call fcn.00538be0
pop ecx
pop ecx
test eax, eax
je 0x4119e2
push 0x5c
push edi
call fcn.00538be0
pop ecx
pop ecx
inc eax
jmp 0x4119e4
mov eax, edi
push 1
push 0xa0
push eax
lea esi, [esp + 0x28]
call fcn.00404b6f
xor ebx, ebx
push str.Starting_Event_Manager__
push ebx
mov ecx, eax
mov dword [esp + 0xd8], ebx
call fcn.00404c4d
mov esi, eax
call fcn.0040279b
or dword [esp + 0xd4], 0xffffffff
pop ecx
lea ecx, [esp + 0x1c]
call fcn.00404bdb
push 0x2f
push edi
call fcn.00538be0
pop ecx
pop ecx
test eax, eax
je 0x411a36
push 0x2f
jmp 0x411a46
push 0x5c
push edi
call fcn.00538be0
pop ecx
pop ecx
test eax, eax
je 0x411a51
push 0x5c
push edi
call fcn.00538be0
pop ecx
pop ecx
inc eax
jmp 0x411a53
mov eax, edi
push 1
push 0xa1
push eax
lea esi, [esp + 0x28]
call fcn.00404b6f
push str.CEEventManagerApp::InitInstance
push ebx
mov ecx, eax
mov dword [esp + 0xd8], 1
call fcn.00404c4d
mov esi, eax
call fcn.0040279b
or dword [esp + 0xd4], 0xffffffff
pop ecx
lea ecx, [esp + 0x1c]
call fcn.00404bdb
push 0x598bdd
call fcn.00411936
mov dword [esp], str.EPSON_Event_Manager
push 1
push ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x5d1678], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x411b64
push str.Epson_Event_Manager_Background
push 0x59ae54
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 edi
call fcn.00538be0
pop ecx
pop ecx
test eax, eax
je 0x411aff
push 0x2f
jmp 0x411b0f
push 0x5c
push edi
call fcn.00538be0
pop ecx
pop ecx
test eax, eax
je 0x411b1a
push 0x5c
push edi
call fcn.00538be0
pop ecx
pop ecx
inc eax
jmp 0x411b1c
mov eax, edi
push 1
push 0xac
push eax
lea esi, [esp + 0x78]
call fcn.00404b6f
push str.This_is_second_instance_of_Event_Manager__
push ebx
mov ecx, eax
mov dword [esp + 0xd8], 2
call fcn.00404c4d
mov esi, eax
call fcn.0040279b
or dword [esp + 0xd4], 0xffffffff
pop ecx
lea ecx, [esp + 0x6c]
call fcn.00404bdb
mov edi, dword [esp + 0x14]
jmp 0x411bcb
mov edi, dword [esp + 0x14]
call fcn.00411c2e
push 0xe28
call fcn.00437ebf
pop ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xd0], 3
cmp eax, ebx
je 0x411b95
push eax
call fcn.00418220
mov esi, eax
jmp 0x411b97
xor esi, esi
or dword [esp + 0xd0], 0xffffffff
mov edi, dword [esp + 0x14]
push ebx
push ebx
push ebx
mov dword [edi + 0x20], esi
mov eax, dword [esi]
push 0x80
mov ecx, esi
mov dword [esp + 0x20], esi
call dword [eax + 0x164]
push ebx
mov ecx, esi
call fcn.0043ba71
push ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [esp + 0x18]
push edi
call fcn.00410f04
cmp dword [edi + 0x20], ebx
je 0x411c07
push ebx
call fcn.0043cbf1
pop ecx
push 4
mov ecx, edi
call fcn.0043a9bd
push ebx
call fcn.005396b5
pop ecx
push eax
call fcn.0053c343
pop ecx
push dword [esp + 0x10]
lea ebx, [edi + 0xb8]
call fcn.004156ab
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.00537e11
mov esp, ebp
pop ebp
ret