Function at 0x53ca80
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffac
push ebx
push esi
xor edx, edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x10], eax
mov esi, 0x5ae65c
xor eax, eax
push ebp
push 0x53d0a1
push dword fs:[eax]
mov dword fs:[eax], esp
push 1
lea eax, [ebp - 0x24]
push eax
call sub.advapi32.dll_InitializeSecurityDescriptor
push 0
push 0
push 0xffffffffffffffff
lea eax, [ebp - 0x24]
push eax
call sub.advapi32.dll_SetSecurityDescriptorDacl
mov dword [ebp - 0xc], 0xc
lea eax, [ebp - 0x24]
mov dword [ebp - 8], eax
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x28]
mov ecx, 0x53d0b8
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x28]
call fcn.00405140
push eax
push 0x800
push 0
push 4
lea eax, [ebp - 0xc]
push eax
push 0xffffffffffffffff
call sub.kernel32.dll_CreateFileMappingA
mov dword [0x5ae620], eax
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
cmp ebx, 0xb7
jne 0x53cb87
lea eax, [ebp - 0x2c]
mov ecx, 0x53d0b8
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x2c]
call fcn.00405140
push eax
push 0
push 0xf001f
call sub.kernel32.dll_OpenFileMappingA
mov dword [0x5ae620], eax
cmp dword [0x5ae620], 0
jne 0x53cbee
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, 0x53d0c4
call fcn.0053c650
jmp 0x53cbee
mov eax, dword [0x5a3b54]
call fcn.00405140
push eax
push 0
lea eax, [ebp - 0xc]
push eax
call fcn.004073a8
mov dword [0x5ae634], eax
push ebp
xor edx, edx
mov eax, 2
call fcn.0053c9ec
pop ecx
mov dword [0x5ae638], eax
push ebp
mov dl, 1
mov eax, 3
call fcn.0053c9ec
pop ecx
mov dword [0x5ae63c], eax
push ebp
xor edx, edx
mov eax, 4
call fcn.0053c9ec
pop ecx
mov dword [0x5ae640], eax
push ebp
xor edx, edx
mov eax, 5
call fcn.0053c9ec
pop ecx
mov dword [0x5ae644], eax
lea eax, [ebp - 0x38]
mov ecx, 0x53d100
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x38]
call fcn.00405140
push eax
push 0x800
push 0
push 4
lea eax, [ebp - 0xc]
push eax
push 0xffffffffffffffff
call sub.kernel32.dll_CreateFileMappingA
mov dword [0x5ae624], eax
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
cmp ebx, 0xb7
jne 0x53cc83
lea eax, [ebp - 0x3c]
mov ecx, 0x53d100
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x3c]
call fcn.00405140
push eax
push 0
push 0xf001f
call sub.kernel32.dll_OpenFileMappingA
mov dword [0x5ae624], eax
cmp dword [0x5ae624], 0
jne 0x53cc83
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, 0x53d0c4
call fcn.0053c650
lea eax, [ebp - 0x40]
mov ecx, 0x53d10c
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x40]
call fcn.00405140
push eax
push 0x800
push 0
push 4
lea eax, [ebp - 0xc]
push eax
push 0xffffffffffffffff
call sub.kernel32.dll_CreateFileMappingA
mov dword [0x5ae628], eax
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
cmp ebx, 0xb7
jne 0x53cd18
lea eax, [ebp - 0x44]
mov ecx, 0x53d10c
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x44]
call fcn.00405140
push eax
push 0
push 0xf001f
call sub.kernel32.dll_OpenFileMappingA
mov dword [0x5ae628], eax
cmp dword [0x5ae628], 0
jne 0x53cd18
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, 0x53d0c4
call fcn.0053c650
lea eax, [ebp - 0x48]
mov ecx, 0x53d118
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x48]
call fcn.00405140
push eax
push 0x800
push 0
push 4
lea eax, [ebp - 0xc]
push eax
push 0xffffffffffffffff
call sub.kernel32.dll_CreateFileMappingA
mov dword [0x5ae62c], eax
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
cmp ebx, 0xb7
jne 0x53cdad
lea eax, [ebp - 0x4c]
mov ecx, 0x53d118
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x4c]
call fcn.00405140
push eax
push 0
push 0xf001f
call sub.kernel32.dll_OpenFileMappingA
mov dword [0x5ae62c], eax
cmp dword [0x5ae62c], 0
jne 0x53cdad
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, 0x53d0c4
call fcn.0053c650
lea eax, [ebp - 0x50]
mov ecx, 0x53d124
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x50]
call fcn.00405140
push eax
push 0x800
push 0
push 4
lea eax, [ebp - 0xc]
push eax
push 0xffffffffffffffff
call sub.kernel32.dll_CreateFileMappingA
mov dword [0x5ae630], eax
call sub.kernel32.dll_GetLastError_1
mov ebx, eax
cmp ebx, 0xb7
jne 0x53ce42
lea eax, [ebp - 0x54]
mov ecx, 0x53d124
mov edx, dword [0x5a3b58]
call fcn.00404f8c
mov eax, dword [ebp - 0x54]
call fcn.00405140
push eax
push 0
push 0xf001f
call sub.kernel32.dll_OpenFileMappingA
mov dword [0x5ae630], eax
cmp dword [0x5ae630], 0
jne 0x53ce42
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, 0x53d0c4
call fcn.0053c650
push 0
push 0
push 0
push 0xf001f
mov eax, dword [0x5ae620]
push eax
call sub.kernel32.dll_MapViewOfFile
mov dword [0x5ae648], eax
push 0
push 0
push 0
push 0xf001f
mov eax, dword [0x5ae624]
push eax
call sub.kernel32.dll_MapViewOfFile
mov dword [0x5ae64c], eax
push 0
push 0
push 0
push 0xf001f
mov eax, dword [0x5ae628]
push eax
call sub.kernel32.dll_MapViewOfFile
mov dword [0x5ae650], eax
push 0
push 0
push 0
push 0xf001f
mov eax, dword [0x5ae62c]
push eax
call sub.kernel32.dll_MapViewOfFile
mov dword [0x5ae654], eax
push 0
push 0
push 0
push 0xf001f
mov eax, dword [0x5ae630]
push eax
call sub.kernel32.dll_MapViewOfFile
mov dword [0x5ae658], eax
cmp dword [0x5ae648], 0
jne 0x53ceed
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, 0x53d0c4
call fcn.0053c650
mov eax, dword [0x5ae648]
add eax, 0x800
sub eax, 4
mov dword [esi], eax
mov eax, dword [esi]
mov edx, eax
sub edx, 4
mov dword [0x5ae660], edx
mov edx, eax
sub edx, 8
mov dword [0x5ae664], edx
mov edx, eax
sub edx, 0xc
mov dword [0x5ae690], edx
mov edx, eax
sub edx, 0x10
mov dword [0x5ae67c], edx
mov edx, eax
sub edx, 0x14
mov dword [0x5ae680], edx
mov edx, eax
sub edx, 0x18
mov dword [0x5ae684], edx
mov edx, eax
sub edx, 0x1c
mov dword [0x5ae688], edx
mov edx, eax
sub edx, 0x20
mov dword [0x5ae68c], edx
mov edx, eax
sub edx, 0x24
mov dword [0x5ae668], edx
mov edx, eax
sub edx, 0x28
mov dword [0x5ae66c], edx
sub eax, 0x2c
mov dword [0x5ae670], eax
mov eax, dword [esi]
sub eax, 0x30
mov dword [0x5ae674], eax
mov eax, dword [esi]
sub eax, 0x34
mov dword [0x5ae678], eax
mov eax, dword [0x5ae678]
sub eax, 8
mov dword [0x5ae694], eax
mov eax, dword [0x5ae694]
dec eax
mov dword [0x5ae698], eax
mov eax, dword [0x5ae698]
dec eax
mov dword [0x5ae69c], eax
cmp ebx, 0xb7
jne 0x53d00d
mov eax, dword [0x5a3b54]
call fcn.00405140
push eax
push 0
push 0x1f0001
call sub.kernel32.dll_OpenMutexA
mov dword [0x5ae634], eax
mov eax, 2
call fcn.0053c964
mov dword [0x5ae638], eax
mov eax, 3
call fcn.0053c964
mov dword [0x5ae63c], eax
mov eax, 4
call fcn.0053c964
mov dword [0x5ae640], eax
mov eax, 5
call fcn.0053c964
mov dword [0x5ae644], eax
jmp 0x53d052
mov eax, dword [esi]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae660]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae684]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae668]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae66c]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae670]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae674]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae678]
xor edx, edx
mov dword [eax], edx
mov eax, dword [esi]
cmp dword [eax], 0
jge 0x53d05f
mov eax, dword [esi]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x5ae660]
cmp dword [eax], 0
jge 0x53d072
mov eax, dword [0x5ae660]
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 0x10]
mov byte [eax + 5], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53d0a8
lea eax, [ebp - 0x54]
mov edx, 8
call fcn.00404ca4
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.00404ca4
ret