Function at 0x1000a7c0
Capabilities:
Check mutex on windows
Link many functions at runtime

Disassembly:
mov eax, 0x10012f96
call fcn.10011cd0
mov eax, 0xa07c
call fcn.10011d30
push esi
xor esi, esi
push str.FSDLL
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
cmp eax, esi
je 0x1000a7fc
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x1000a7fc
xor eax, eax
jmp 0x1000aaca
and byte [ebp - 0x1e], 0
lea eax, [ebp - 0x24]
push eax
mov byte [ebp - 0x24], 0x4c
push dword [0x1001a938]
mov byte [ebp - 0x23], 0x48
mov byte [ebp - 0x22], 0x4e
mov byte [ebp - 0x21], 0x41
mov byte [ebp - 0x20], 0x41
mov byte [ebp - 0x1f], 0x41
call fcn.100041c3
push esi
push esi
push esi
push esi
push 0x1000ab7e
push esi
push esi
mov dword [ebp - 0x18], eax
call fcn.1000b2f7
add esp, 0x24
cmp dword [ebp - 0x18], esi
jne 0x1000a84a
or eax, 0xffffffff
jmp 0x1000aaca
call dword [0x10019b58]
push 0x2000000
push esi
push str.winsta0
call dword [0x10019b5c]
cmp eax, esi
je 0x1000a86c
push eax
call dword [0x10019b60]
push ebx
push edi
push 1
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], 0x50
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x3c], esi
call fcn.100022ed
lea eax, [ebp - 0x12c]
lea ecx, [ebp - 0xa088]
push eax
mov dword [ebp - 4], esi
call fcn.100073ff
lea ecx, [ebp - 0xa088]
mov byte [ebp - 4], 1
call fcn.1000741e
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
and byte [ebp - 0xd], 0
mov ebx, str.KERNEL32.dll
push str.Sleep
push ebx
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call edi
cmp byte [ebp - 0xd], 0
je 0x1000a930
cmp byte [ebp - 0xd], 3
je 0x1000a930
and dword [ebp - 0x14], 0
lea eax, [ebp - 0x70]
push eax
push 0
push 0x1f0003
call dword [sym.imp.KERNEL32.dll_OpenEventA]
test eax, eax
mov dword [ebp - 0x1c], eax
jne 0x1000a911
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x1f4
jl 0x1000a8eb
jmp 0x1000a930
push str.CloseHandle
push ebx
call esi
push eax
call edi
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x14], eax
call fcn.1000205e
push dword [ebp - 0x1c]
call dword [ebp - 0x14]
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x18]
add eax, 6
push eax
call fcn.1000a176
pop ecx
push eax
call fcn.1000a2d9
add esp, 0x1c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [ebp - 0x28]
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x2c]
call fcn.10002474
test al, al
jne 0x1000a985
mov byte [ebp - 0xd], 2
jmp 0x1000a8db
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x14]
push eax
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x22c]
push eax
call fcn.1000a586
add esp, 0xc
lea eax, [ebp - 0x70]
lea ecx, [ebp - 0xa088]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push eax
lea eax, [ebp - 0x22c]
push dword [0x1001a948]
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.10006d26
lea eax, [ebp - 0xa088]
lea ecx, [ebp - 0x12c]
push eax
call fcn.100022e0
and dword [ebp - 0x14], 0
lea ecx, [ebp - 0xa088]
call fcn.10007013
test al, al
jne 0x1000aa0e
push str.Sleep
push ebx
call esi
push eax
call edi
push 0x3e8
call eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 5
jl 0x1000a9e4
lea ecx, [ebp - 0xa088]
call fcn.10007013
test al, al
je 0x1000a8db
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x70]
push eax
push 0
push 0x1f0003
call dword [sym.imp.KERNEL32.dll_OpenEventA]
push 0x64
mov dword [ebp - 0x1c], eax
push dword [ebp - 0x80]
call dword [0x1001aa5c]
push str.Sleep
push ebx
mov dword [ebp - 0x14], eax
call esi
push eax
call edi
push 0x1f4
call eax
cmp dword [ebp - 0x1c], 0
jne 0x1000aa6c
cmp dword [ebp - 0x14], 0
jne 0x1000aa27
jmp 0x1000a8db
push str.CloseHandle
push ebx
call esi
push eax
call edi
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x18], eax
call fcn.1000205e
push dword [ebp - 0x1c]
call dword [ebp - 0x18]
push 0
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 0
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push str.CloseHandle
push ebx
call esi
push eax
call edi
push 0
call eax
and byte [ebp - 4], 0
lea ecx, [ebp - 0xa088]
call fcn.10006dbd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x12c]
call fcn.100023a9
pop edi
pop ebx
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret