Function at 0x403bec
Capabilities:
Check mutex on windows
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 3
and esp, 0xfffffff8
add esp, 4
push edi
push esi
call fcn.0046ce9c
xor eax, eax
push 0x878d2c
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [0x87297c], eax
test eax, eax
je 0x403f21
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x403c3b
push dword [0x87297c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
jmp 0x403c3d
xor eax, eax
test eax, eax
je 0x403c4b
xor eax, eax
pop ecx
pop edi
mov esp, ebp
pop ebp
ret 0x10
call fcn.00410ee0
xor eax, eax
push 0x660a00
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [0x872980], eax
test eax, eax
je 0x403f17
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x403c8c
push dword [0x872980]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
jmp 0x403c8e
xor eax, eax
test eax, eax
je 0x403cab
mov eax, 0x660a00
call fcn.004110c4
call fcn.00411474
xor eax, eax
pop ecx
pop edi
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x87297c]
test eax, eax
je 0x403cc7
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push dword [0x87297c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 8]
mov dword [0x872260], eax
mov edx, dword [ebp + 0x14]
mov dword [0x872264], edx
push 0x660c40
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
call fcn.0041111c
movsx eax, al
test eax, eax
jl 0x403f08
movsx eax, byte [0x872230]
test eax, eax
je 0x403d19
call fcn.00411304
movsx eax, al
test eax, eax
je 0x403d19
call fcn.00411474
xor eax, eax
pop ecx
pop edi
mov esp, ebp
pop ebp
ret 0x10
call fcn.0046c2d4
push 2
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jl 0x403f01
mov edi, 1
call fcn.00467584
movsx eax, al
test eax, eax
jne 0x403ead
xor eax, eax
push eax
push eax
push eax
push eax
push 0x872960
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x403dcc
movsx eax, byte [0x8722c4]
test eax, eax
je 0x403d89
cmp dword [0x8726ec], 0
je 0x403dcc
cmp dword [0x8726f0], 0
je 0x403dcc
cmp dword [0x8726f4], 0
je 0x403dcc
cmp dword [0x8726f8], 0
je 0x403dcc
xor eax, eax
push eax
push eax
push eax
push 0x872960
call dword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x403ef3
push 0x872960
call dword [sym.imp.USER32.dll_TranslateMessage]
push 0x872960
call dword [sym.imp.USER32.dll_DispatchMessageA]
xor eax, eax
push eax
push eax
push eax
push eax
push 0x872960
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x403d5a
movsx eax, byte [0x59b75c]
test eax, eax
je 0x403ead
movsx eax, byte [0x8725bc]
test eax, eax
je 0x403df0
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x403e1b
call fcn.00403f2c
movsx eax, byte [0x8722c4]
test eax, eax
je 0x403e0a
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x403e1b
call fcn.00404164
movsx eax, al
test eax, eax
je 0x403e1b
call fcn.00410ebc
xor eax, eax
push eax
push eax
push eax
push eax
push 0x872960
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x403e9e
movsx eax, byte [0x8722c4]
test eax, eax
je 0x403e5f
cmp dword [0x8726ec], 0
je 0x403e9e
cmp dword [0x8726f0], 0
je 0x403e9e
cmp dword [0x8726f4], 0
je 0x403e9e
cmp dword [0x8726f8], 0
je 0x403e9e
xor eax, eax
push eax
push eax
push eax
push 0x872960
call dword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x403ee8
push 0x872960
call dword [sym.imp.USER32.dll_TranslateMessage]
push 0x872960
call dword [sym.imp.USER32.dll_DispatchMessageA]
xor eax, eax
push eax
push eax
push eax
push eax
push 0x872960
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x403e30
movsx eax, byte [0x59b75c]
test eax, eax
jne 0x403ddb
call fcn.0041158c
test edi, edi
je 0x403ebc
call dword [sym.imp.ole32.dll_CoUninitialize]
call fcn.00412d48
call fcn.00411474
movsx eax, byte [0x872208]
test eax, eax
je 0x403edb
mov eax, 0x6608e0
call fcn.00412d84
mov eax, dword [0x872968]
pop ecx
pop edi
mov esp, ebp
pop ebp
ret 0x10
mov byte [0x59b75c], 0
xor eax, eax
jmp 0x403ea5
mov byte [0x59b75c], 0
xor eax, eax
jmp 0x403dd3
xor edi, edi
jmp 0x403d35
call fcn.00411474
xor eax, eax
pop ecx
pop edi
mov esp, ebp
pop ebp
ret 0x10
mov eax, 0xffffffff
jmp 0x403c8e
mov eax, 0xffffffff
jmp 0x403c3d