Function at 0x4375ac
Capabilities:
Check mutex on windows

Disassembly:
push 0x50
mov eax, 0x65dd57
call fcn.00469b60
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp + 0x20]
mov ebx, ecx
mov dword [ebp - 0x58], eax
mov al, byte [ebp + 0x10]
mov byte [ebx], al
mov eax, dword [ebp + 0x14]
lea ecx, [ebx + 0xc]
mov dword [ebp - 0x5c], ebx
mov dword [ebx + 4], 1
mov dword [ebx + 8], eax
call fcn.004371ad
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], eax
mov byte [ebp - 4], 1
lea eax, [ebx + 0x2c]
push eax
call fcn.00434df3
mov byte [ebp - 4], 2
lea eax, [ebx + 0x48]
push eax
call fcn.00435989
mov byte [ebp - 4], 3
lea eax, [ebp - 0x3c]
push eax
call fcn.00437489
mov esi, eax
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x64]
lea esi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor esi, esi
mov dword [ebx + 0x74], esi
mov dword [ebx + 0x78], esi
mov byte [ebx + 0x7c], 0
mov byte [ebp - 4], 4
push dword [ebp - 0x58]
lea eax, [ebp - 0x48]
push eax
call fcn.004358f1
add esp, 0x14
mov byte [ebp - 4], 5
cmp dword [eax + 0x14], 0x10
jb 0x43765c
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], esi
mov byte [ebp - 0x2c], 0
call fcn.00408f00
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], 0x10
mov eax, dword [ebp - 0x2c]
jae 0x437683
lea eax, [ebp - 0x2c]
push eax
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [ebx + 0x80], eax
mov byte [ebp - 4], 8
push esi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00408fa0
mov byte [ebp - 4], 9
push esi
push 1
lea ecx, [ebp - 0x48]
call fcn.00408fa0
lea ecx, [ebx + 0x84]
call fcn.00437279
mov byte [ebp - 4], 0xa
lea ecx, [ebx + 0x94]
call fcn.004406b8
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x50]
cmp dword [ecx + 0x10], esi
jbe 0x4376e4
push 0xffffffffffffffff
push esi
push ecx
mov ecx, 0x700b34
call fcn.0042d942
push dword [ebp + 8]
lea ecx, [ebx + 0x1c]
call fcn.004081b0
xor edi, edi
cmp dword [ebp + 8], esi
jle 0x437738
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + edi*4]
push eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], esi
mov byte [ebp - 0x2c], 0
call fcn.00408f00
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebx + 0x1c]
call fcn.00426130
mov byte [ebp - 4], 0xb
push esi
push 1
lea ecx, [ebp - 0x2c]
call fcn.00408fa0
inc edi
cmp edi, dword [ebp + 8]
jl 0x4376f6
cmp byte [ebp + 0x18], 0
je 0x4377d5
lea edi, [ebx + 0x80]
push esi
mov dword [ebp - 0x54], edi
push dword [edi]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
neg eax
sbb eax, eax
lea ecx, [eax + 1]
mov byte [ebp - 0x50], cl
mov byte [ebp - 4], 0xd
test cl, cl
je 0x43777a
mov eax, dword [ebx + 0x78]
mov dword [ebx + 0x78], edi
mov dword [ebp - 0x54], eax
mov al, byte [ebx + 0x7c]
mov byte [ebx + 0x7c], cl
mov byte [ebp - 0x50], al
jmp 0x4377c9
push str.IERD_TGP_31F73356_9B60_ABCD_9FF0_F27E3A9BBEC2
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
push str.31F73356_9B60_4B52_9FF0_F27E3A9BBEC2
push esi
push 0x1f0003
mov dword [ebp - 0x4c], eax
call dword [sym.imp.KERNEL32.dll_OpenEventA]
mov edi, eax
cmp edi, esi
je 0x4377b0
push edi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x1388
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, esi
je 0x437808
cmp eax, 0x102
je 0x4377e3
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x54]
call fcn.0043335b
or dword [ebp - 4], 0xffffffff
mov eax, ebx
call fcn.00469be3
ret 0x1c
lea ecx, [ebp - 0x38]
call fcn.004693d9
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x38], vtable.ierd_tgp::common::Exception_pre_instance_zombie.0
mov byte [ebp - 4], 0xd
push 0x6e6f60
lea eax, [ebp - 0x38]
push eax
call fcn.0046abf2
lea ecx, [ebp - 0x1c]
call fcn.004693d9
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x1c], vtable.ierd_tgp::common::Exception_more_one_instance.0
mov byte [ebp - 4], 0xd
push 0x6e6f50
lea eax, [ebp - 0x1c]
jmp 0x437802