Function at 0x433670
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50cc67
mov eax, dword fs:[0]
push eax
sub esp, 0x550
mov eax, dword [0x5655bc]
xor eax, ebp
mov dword [ebp - 0x50], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x554], ecx
mov eax, dword [ebp - 0x554]
movzx ecx, byte [eax + 0x6d5]
test ecx, ecx
jne 0x4336b7
jmp 0x433d9b
mov dword [ebp - 0x10], 0
jmp 0x4336c9
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x554]
mov ecx, dword [eax + 0x6b0]
mov edx, dword [ebp - 0x554]
mov eax, dword [edx + 0x6b0]
add eax, 0x4a0
mov edx, dword [ecx + 0x4a0]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
cmp dword [ebp - 0x10], eax
jge 0x433d9b
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x554]
mov eax, dword [edx + 0x6b0]
mov ecx, dword [ebp - 0x554]
mov ecx, dword [ecx + 0x6b0]
add ecx, 0x4a0
mov edx, dword [eax + 0x4a0]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x14], eax
push 0x51713c
mov ecx, dword [ebp - 0x14]
call dword [0x53b058]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x433d96
mov dword [ebp - 0x1c], 0
jmp 0x433758
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0x4a0
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x4a0]
mov edx, dword [eax + 0xc]
call edx
cmp dword [ebp - 0x1c], eax
jge 0x433d96
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x4a0
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x4a0]
mov edx, dword [eax]
call edx
mov dword [ebp - 0x28], eax
push 0x517150
mov ecx, dword [ebp - 0x28]
call dword [0x53b058]
mov dword [ebp - 0x40], eax
push 0x51716c
mov ecx, dword [ebp - 0x28]
call dword [0x53b058]
mov dword [ebp - 0x3c], eax
push 0x517180
mov ecx, dword [ebp - 0x28]
call dword [0x53b058]
mov dword [ebp - 0x34], eax
push 0x517194
mov ecx, dword [ebp - 0x28]
call dword [0x53b058]
mov dword [ebp - 0x24], eax
push str.InstallTip
mov ecx, dword [ebp - 0x28]
call dword [0x53b058]
mov dword [ebp - 0x44], eax
push 0x5171c0
mov ecx, dword [ebp - 0x28]
call dword [0x53b058]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x3c], 0
jne 0x433806
jmp 0x43374f
lea eax, [ebp - 0x518]
push eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [edx + 0x28]
call eax
mov dword [ebp - 0x558], eax
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x55c], ecx
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x55c]
call dword [0x53b008]
push eax
lea ecx, [ebp - 0x6c]
call fcn.00401c80
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x518]
call dword [0x53b010]
cmp dword [ebp - 0x40], 0
jne 0x433872
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6c]
call fcn.00401cc0
jmp 0x43374f
mov dword [ebp - 0x38], 1
lea edx, [ebp - 0x30]
push edx
mov ecx, dword [ebp - 0x554]
add ecx, 0x6b4
call fcn.004588b0
lea ecx, [ebp - 0x4c]
call fcn.00435530
lea eax, [ebp - 0x520]
push eax
mov ecx, dword [ebp - 0x554]
add ecx, 0x6b4
call fcn.00421c10
push eax
lea ecx, [ebp - 0x30]
call fcn.0044bcc0
movzx ecx, al
test ecx, ecx
je 0x43396d
mov byte [ebp - 0x6d], 0
lea edx, [ebp - 0x528]
push edx
lea ecx, [ebp - 0x30]
call fcn.00415e30
add eax, 0x1c
mov ecx, eax
call fcn.00421c90
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], edx
jmp 0x4338fd
push 0
lea eax, [ebp - 0x530]
push eax
lea ecx, [ebp - 0x4c]
call fcn.00421d00
lea ecx, [ebp - 0x538]
push ecx
lea ecx, [ebp - 0x30]
call fcn.00415e30
add eax, 0x1c
mov ecx, eax
call fcn.00407740
push eax
lea ecx, [ebp - 0x4c]
call fcn.0044bcc0
movzx edx, al
test edx, edx
je 0x43394d
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x7c
push eax
call fcn.00411150
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x43394b
mov byte [ebp - 0x6d], 1
jmp 0x43394d
jmp 0x4338ec
movzx edx, byte [ebp - 0x6d]
test edx, edx
je 0x433957
jmp 0x43396d
push 0
lea eax, [ebp - 0x540]
push eax
lea ecx, [ebp - 0x30]
call fcn.00421cc0
jmp 0x433896
lea ecx, [ebp - 0x548]
push ecx
mov ecx, dword [ebp - 0x554]
add ecx, 0x6b4
call fcn.00421c10
push eax
lea ecx, [ebp - 0x30]
call fcn.0044bcc0
movzx edx, al
test edx, edx
je 0x433d82
lea eax, [ebp - 0x550]
push eax
lea ecx, [ebp - 0x30]
call fcn.00415e30
add eax, 0x1c
mov ecx, eax
call fcn.00407740
push eax
lea ecx, [ebp - 0x4c]
call fcn.0044bcc0
movzx ecx, al
test ecx, ecx
je 0x433d82
mov word [ebp - 0x27c], 0
push 0x206
push 0
lea edx, [ebp - 0x27a]
push edx
call fcn.00463a20
add esp, 0xc
push str.my_mutex
push 0x5171e8
lea eax, [ebp - 0x27c]
push eax
call fcn.00466a1b
add esp, 0xc
lea ecx, [ebp - 0x27c]
push ecx
push 1
push 0x1f0001
call dword [sym.imp.KERNEL32.dll_OpenMutexW]
mov dword [ebp - 0x280], eax
push 0xffffffffffffffff
mov edx, dword [ebp - 0x280]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0x102
je 0x433d82
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x7c
push eax
call fcn.00411150
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x433d75
push 0x5171f0
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x5c
push eax
call fcn.00408570
add esp, 8
movzx edx, al
test edx, edx
je 0x433b22
lea ecx, [ebp - 0x4c]
call fcn.004077e0
movzx eax, byte [eax + 0x58]
test eax, eax
jne 0x433a9f
mov ecx, dword [ebp - 0x554]
movzx edx, byte [ecx + 0x6d4]
test edx, edx
je 0x433ae8
push 1
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0xcc]
call eax
push 0x5171f4
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0x2c]
call eax
mov ecx, dword [ebp - 0x554]
movzx edx, byte [ecx + 0x6d4]
test edx, edx
je 0x433ae6
push 0
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x20]
mov eax, dword [edx + 0xcc]
call eax
jmp 0x433b1d
mov ecx, dword [ebp - 0x554]
movzx edx, byte [ecx + 0x6d4]
test edx, edx
jne 0x433b0b
push 0
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x20]
mov eax, dword [edx + 0xcc]
call eax
push 0
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0xcc]
call eax
jmp 0x433d75
push 0x517200
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x5c
push eax
call fcn.00408570
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x433bee
push 1
mov edx, dword [ebp - 0x20]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x20]
mov edx, dword [eax + 0xcc]
call edx
push 1
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0xcc]
call eax
push str.ck_W
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0x2c]
call eax
cmp dword [ebp - 0x20], 0
je 0x433be9
call fcn.004684c2
mov dword [ebp - 0x284], eax
call fcn.004684c2
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x20]
call dword [0x53b064]
mov dword [ebp - 0x288], eax
cmp dword [ebp - 0x288], 0x55
jge 0x433be9
mov eax, dword [ebp - 0x284]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
jne 0x433be9
mov eax, dword [ebp - 0x28c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
jne 0x433be9
mov edx, dword [ebp - 0x288]
add edx, 1
push edx
mov ecx, dword [ebp - 0x20]
call dword [0x53b060]
jmp 0x433d75
push 0x517210
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x5c
push eax
call fcn.00408570
add esp, 8
movzx eax, al
test eax, eax
je 0x433cd9
call fcn.00411050
mov ecx, eax
call fcn.0040a240
mov ecx, dword [ebp - 0x554]
mov dword [ecx + 0x6d8], eax
mov word [ebp - 0x494], 0
push 0x206
push 0
lea edx, [ebp - 0x492]
push edx
call fcn.00463a20
add esp, 0xc
push 0xa
lea eax, [ebp - 0x494]
push eax
mov ecx, dword [ebp - 0x554]
mov edx, dword [ecx + 0x6d8]
push edx
call fcn.00436ad0
add esp, 0xc
lea eax, [ebp - 0x494]
push eax
mov ecx, dword [ebp - 0x554]
mov edx, dword [ecx + 0x69c]
mov eax, dword [ebp - 0x554]
mov ecx, dword [eax + 0x69c]
mov edx, dword [edx]
mov eax, dword [edx + 0x2c]
call eax
push 1
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0xcc]
call eax
push 0x517214
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0x2c]
call eax
cmp dword [ebp - 0x20], 0
je 0x433cd4
push 1
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x20]
mov eax, dword [edx + 0xcc]
call eax
push 0x64
mov ecx, dword [ebp - 0x20]
call dword [0x53b060]
jmp 0x433d75
push 0x517220
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x5c
push eax
call fcn.00408570
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x433d31
push 1
mov edx, dword [ebp - 0x44]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x44]
mov edx, dword [eax + 0xcc]
call edx
push 0
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x20]
mov eax, dword [edx + 0xcc]
call eax
push 0x517224
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x44]
mov eax, dword [edx + 0x2c]
call eax
jmp 0x433d75
push 0x517230
lea ecx, [ebp - 0x4c]
call fcn.004077e0
add eax, 0x5c
push eax
call fcn.00408570
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x433d75
push 0x517234
mov edx, dword [ebp - 0x44]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x44]
mov edx, dword [eax + 0x2c]
call edx
push 0
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x20]
mov eax, dword [edx + 0xcc]
call eax
mov ecx, dword [ebp - 0x280]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6c]
call fcn.00401cc0
jmp 0x43374f
jmp 0x4336c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x50]
xor ecx, ebp
call fcn.00463a0b
mov esp, ebp
pop ebp
ret