Function at 0x40125a
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x8220
call fcn.004016b0
push ebx
push esi
push edi
xor esi, esi
mov ecx, 0x1fff
xor eax, eax
lea edi, [ebp - 0x821e]
mov word [ebp - 0x8220], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x21e]
mov word [ebp - 0x220], si
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
lea edi, [ebp - 0x16]
mov word [ebp - 0x18], si
push 2
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
call dword [sym.imp.KERNEL32.DLL_SetErrorMode]
push str.MUIWNCMD
push 1
push esi
call dword [sym.imp.KERNEL32.DLL_CreateMutexA]
mov esi, eax
call dword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0xb7
jne 0x4012e6
push esi
call dword [sym.imp.KERNEL32.DLL_ReleaseMutex]
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret 0x10
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.DLL_GetSystemTime]
lea eax, [ebp - 0x8220]
xor edi, edi
push eax
mov word [ebp - 0x8220], di
call fcn.0040106a
push 0x12c
mov esi, eax
call dword [sym.imp.KERNEL32.DLL_Sleep]
cmp esi, 0x19
jb 0x4012e6
cmp esi, 0x2000
ja 0x4012e6
push 0x10
push edi
push 0x4034e4
call sub.MSVCRT.dll_memset
add esp, 0xc
cmp word [ebp - 0x8220], di
lea esi, [ebp - 0x8220]
mov dword [ebp - 4], edi
je 0x4012e6
mov eax, esi
lea ecx, [ebp - 0x8220]
sub eax, ecx
sar eax, 1
cmp eax, 0x8000
jae 0x4012e6
mov ebx, esi
mov ax, word [esi]
cmp ax, 0x31
je 0x40137a
cmp ax, 0x33
je 0x40137a
cmp ax, 0x62
je 0x40137a
cmp ax, 0x30
je 0x40137a
test ax, ax
je 0x40137a
inc esi
inc esi
jmp 0x401356
cmp word [esi], 0
je 0x4012e6
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
cmp eax, 0x19
jle 0x4012e6
mov ax, word [esi]
cmp ax, 0x30
jne 0x401436
cmp word [esi + 2], 0x78
jne 0x401436
xor ecx, ecx
add esi, 4
mov ebx, esi
mov ax, word [ebx]
cmp ax, 0x61
jb 0x4013c2
cmp ax, 0x66
jbe 0x4013da
cmp ax, 0x41
jb 0x4013ce
cmp ax, 0x46
jbe 0x4013da
cmp ax, 0x30
jb 0x4013df
cmp ax, 0x39
ja 0x4013df
inc ecx
inc ebx
inc ebx
jmp 0x4013b3
cmp ecx, 0x28
jne 0x40142f
mov eax, ebx
sub eax, esi
sar eax, 1
inc eax
push eax
lea eax, [ebp - 0x220]
push esi
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpynW]
mov esi, str.e0bc231aCF6Ff44235cC98080C7D44Ac15d602e0
lea eax, [ebp - 0x220]
push esi
push eax
call fcn.00401021
test eax, eax
jne 0x40168d
push esi
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x8220]
push eax
call fcn.0040112d
test eax, eax
jmp 0x40167a
mov ebx, esi
jmp 0x40168d
cmp ax, 0x62
jne 0x4014ea
cmp word [esi + 2], 0x63
lea edx, [esi + 2]
jne 0x4014ea
cmp word [esi + 4], 0x31
jne 0x4014ea
cmp word [esi + 6], 0x71
jne 0x4014ea
mov ebx, esi
mov ax, word [ebx]
cmp ax, 0x61
jb 0x401475
cmp ax, 0x7a
jbe 0x40148d
cmp ax, 0x41
jb 0x401481
cmp ax, 0x5a
jbe 0x40148d
cmp ax, 0x30
jb 0x401491
cmp ax, 0x39
ja 0x401491
inc ebx
inc ebx
jmp 0x401466
mov eax, ebx
sub eax, esi
mov ecx, eax
and ecx, 0xfffffffe
cmp ecx, 0x32
jle 0x4014e3
cmp ecx, 0x8c
jge 0x4014e3
sar eax, 1
inc eax
push eax
lea eax, [ebp - 0x220]
push esi
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpynW]
lea eax, [ebp - 0x220]
push eax
call fcn.004011c5
test eax, eax
jne 0x40168d
movzx eax, word [ebp - 0x12]
push 3
cdq
pop ecx
idiv ecx
push dword [edx*4 + 0x403038]
jmp 0x401415
mov ebx, edx
jmp 0x40168d
cmp ax, 0x31
je 0x4014fa
cmp ax, 0x33
jne 0x40168d
push eax
xor edi, edi
mov ebx, esi
call section..text
test al, al
je 0x40168a
inc edi
inc ebx
inc ebx
mov ax, word [ebx]
push eax
call section..text
test al, al
jne 0x40150c
cmp edi, 0x19
jb 0x40168a
cmp edi, 0x32
ja 0x40168a
mov eax, ebx
sub eax, esi
sar eax, 1
inc eax
push eax
lea eax, [ebp - 0x220]
push esi
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpynW]
lea eax, [ebp - 0x220]
push eax
call fcn.00401229
test eax, eax
je 0x40168a
lea eax, [ebp - 0x220]
push eax
call fcn.004011c5
test eax, eax
jne 0x40168d
xor edi, edi
cmp dword [ebp - 4], edi
mov dword [ebp - 8], edi
jne 0x4015d4
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.DLL_GetSystemTime]
movzx eax, word [ebp - 0x12]
push 3
cdq
pop ecx
idiv ecx
push 1
pop esi
mov eax, edx
shl eax, 2
cmp word [ebp - 0x220], 0x31
mov dword [eax + 0x4034e4], esi
jne 0x4015aa
mov eax, dword [eax + 0x403024]
jmp 0x4015b0
mov eax, dword [eax + 0x403010]
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x8220]
push eax
call fcn.0040112d
test eax, eax
je 0x401673
mov dword [ebp - 8], esi
jmp 0x401673
call dword [sym.imp.MSVCRT.dll_rand]
push 3
cdq
pop ecx
idiv ecx
mov esi, edx
cmp dword [esi*4 + 0x4034e4], 0
lea eax, [esi*4 + 0x4034e4]
je 0x401603
call dword [sym.imp.MSVCRT.dll_rand]
push 3
cdq
pop ecx
idiv ecx
mov esi, edx
jmp 0x401609
mov dword [eax], 1
lea eax, [ebp - 0x220]
push eax
call fcn.004011c5
test eax, eax
je 0x40161e
cmp edi, 0x28
jb 0x401660
lea eax, [ebp - 0x220]
push eax
call fcn.00401229
test eax, eax
je 0x401660
cmp word [ebp - 0x220], 0x31
jne 0x401641
mov esi, dword [esi*4 + 0x403024]
jmp 0x401648
mov esi, dword [esi*4 + 0x403010]
lea eax, [ebp - 0x220]
push esi
push eax
lea eax, [ebp - 0x8220]
push eax
call fcn.0040112d
test eax, eax
jne 0x40166c
inc edi
cmp edi, 0x32
jb 0x4015d4
jmp 0x401673
mov dword [ebp - 8], 1
inc dword [ebp - 4]
cmp dword [ebp - 8], 0
je 0x40168d
lea eax, [ebp - 0x8220]
push eax
call fcn.004010c9
jmp 0x40168d
lea ebx, [esi + 2]
cmp word [ebx + 2], 0
lea esi, [ebx + 2]
jne 0x401341
jmp 0x4012e6