Function at 0x140061f48
Capabilities:
Check mutex on windows

Disassembly:
push rdi
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x68
xor r13d, r13d
mov r14, r8
mov qword [rsp + 0x60], r13
mov r15, rdx
mov qword [rsp + 0x58], r13
mov ebp, ecx
mov dword [rsp + 0x4c], 0
cmp r9d, 7
jne 0x140061ede
mov r12d, 1
mov edi, 6
jmp 0x140061ef7
mov edi, 9
mov eax, 1
xor r12d, r12d
cmp r9d, 0xa
cmovne edi, r9d
cmove r12d, eax
cmp dword [0x1400f48a4], 0
je 0x14006320b
cmp dword [0x1400ce448], 2
jge 0x140061f16
cmp edi, 6
je 0x140062775
cmp ebp, 0xfffffffb
je 0x140062ffc
cmp ebp, 0xfffffffa
jle 0x140061f4e
mov ecx, ebp
add ecx, 5
mov edx, ecx
js 0x140061f32
cmp ecx, 0x68
jle 0x140061f48
mov qword [rsp + 0x30], rbx
lea rbx, [0x140000000]
mov qword [rsp + 0x38], rsi
jmp 0x14006214b
mov dword [rsp + 0x48], ecx
jmp 0x140061f5f
mov edx, ebp
mov ecx, ebp
test ebp, ebp
jl 0x140061f32
cmp ebp, 0x68
jg 0x140061f32
mov dword [rsp + 0x48], ebp
mov qword [rsp + 0x30], rbx
lea rbx, [0x140000000]
mov qword [rsp + 0x38], rsi
movsxd rcx, ecx
lea rax, [rcx + rcx*2]
shl rax, 4
cmp dword [rbx + rax + 0xe5050], 0
je 0x140061fc3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edx, dword [rsp + 0x48]
mov ecx, edx
movsxd rdx, edx
lea rsi, [rdx + rdx*2]
shl rsi, 4
cmp eax, dword [rbx + rsi + 0xe504c]
jne 0x140061fc3
mov rbx, qword [rsp + 0x30]
mov eax, Ordinal_43
mov rsi, qword [rsp + 0x38]
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
cmp dword [0x1400ce448], 2
jge 0x140062009
movsxd rcx, ecx
lea rax, [rcx + rcx*2]
shl rax, 4
mov esi, dword [rbx + rax + 0xe5048]
test esi, esi
je 0x140061fec
mov eax, 0x98
jmp 0x14006208b
movsxd rdx, edx
lea rax, [rdx + rdx*2]
shl rax, 4
mov dword [rbx + rax + 0xe5048], 1
xor eax, eax
jmp 0x14006208b
movsxd rdx, edx
lea rsi, [0x1400e5040]
lea rax, [rdx + rdx*2]
shl rax, 4
lea rcx, [rsi + rax + 8]
call fcn.14007a450
test eax, eax
je 0x140062030
mov eax, 0x98
jmp 0x14006208b
movsxd rcx, dword [rsp + 0x48]
lea rdx, [rcx + rcx*2]
shl rdx, 4
mov rax, qword [rbx + rdx + 0xe5040]
test rax, rax
je 0x140062fca
mov dword [rbx + rdx + 0xe5048], 0
mov edx, 0xffffffff
lea rax, [rcx + rcx*2]
shl rax, 4
mov rcx, qword [rbx + rax + 0xe5040]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movsxd rax, dword [rsp + 0x48]
lea rdx, [rax + rax*2]
shl rdx, 4
lea rcx, [rsi + rdx + 8]
call fcn.14007a450
test eax, eax
je 0x140062096
mov eax, 0x98
jmp 0x1400620bd
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
movsxd rdx, dword [rsp + 0x48]
lea rcx, [rdx + rdx*2]
shl rcx, 4
mov dword [rbx + rcx + 0xe504c], eax
xor eax, eax
mov dword [rbx + rcx + 0xe5050], 1
test eax, eax
jne 0x140062fbb
movsxd rax, dword [rsp + 0x48]
lea rcx, [rax + rax*2]
shl rcx, 4
mov rax, qword [rbx + rcx + 0xe5068]
test rax, rax
je 0x140062102
movzx edx, byte [rax + 0x245]
test dl, 0x20
jne 0x1400620f5
test dl, 0x18
je 0x1400620f5
cmp edi, 6
je 0x140062102
mov rdx, qword [rax + 0x30]
test rdx, rdx
je 0x140062f9a
lea rax, [0x1400e5040]
lea rdx, [rsp + 0x60]
mov r8d, edi
lea r9, [rsp + 0x4c]
lea rsi, [rax + rcx]
mov ecx, ebp
mov qword [rsp + 0x20], rsi
call fcn.140064e50
cmp eax, 0xfffffffd
jne 0x140062e18
mov edx, dword [rsp + 0x48]
mov ecx, edx
test edx, edx
jl 0x140062142
cmp edx, 0x68
jle 0x140061f70
cmp ebp, 0xfffffffa
lea ecx, [rbp + 5]
cmovle ecx, ebp
mov eax, 0xfb93e673
mul ecx
shr edx, 9
imul esi, edx, 0x209
sub ecx, esi
mov r8d, dword [0x1400ce448]
add ecx, 0x69
mov dword [rsp + 0x48], ecx
cmp r8d, 2
jge 0x1400621a0
lea rax, [rsp + 0x48]
movsxd rdx, dword [rax]
lea rax, [rdx + rdx*2]
shl rax, 4
mov esi, dword [rbx + rax + 0xe5048]
test esi, esi
jne 0x140062237
mov dword [rbx + rax + 0xe5048], 1
jmp 0x140062237
movsxd rcx, ecx
lea rsi, [0x1400e5040]
lea rax, [rcx + rcx*2]
shl rax, 4
lea rcx, [rsi + rax + 8]
call fcn.14007a450
test eax, eax
jne 0x14006222c
movsxd rdx, dword [rsp + 0x48]
lea rax, [rdx + rdx*2]
shl rax, 4
mov rcx, qword [rbx + rax + 0xe5040]
test rcx, rcx
je 0x140062dd5
lea rax, [rsp + 0x48]
movsxd rcx, dword [rax]
lea r8, [rcx + rcx*2]
shl r8, 4
mov dword [rbx + r8 + 0xe5048], 0
lea rax, [rdx + rdx*2]
mov edx, 0xffffffff
shl rax, 4
mov rcx, qword [rbx + rax + 0xe5040]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movsxd rax, dword [rsp + 0x48]
lea rdx, [rax + rax*2]
shl rdx, 4
lea rcx, [rsi + rdx + 8]
call fcn.14007a450
mov r8d, dword [0x1400ce448]
mov ecx, dword [rsp + 0x48]
cmp r8d, 1
je 0x140062db0
movsxd rcx, ecx
mov rsi, r13
lea rax, [rcx + rcx*2]
shl rax, 4
mov rcx, qword [rbx + rax + 0xe5068]
test rcx, rcx
mov qword [rsp + 0x60], rcx
je 0x14006227e
cmp ebp, dword [rcx + 0x1b0]
jbe 0x140062d93
mov rsi, rcx
mov rcx, qword [rcx + 0x48]
test rcx, rcx
mov qword [rsp + 0x60], rcx
jne 0x140062261
lea r10, [0x1400e5040]
mov ecx, ebp
mov r8d, edi
lea rdx, [rsp + 0x58]
lea r9, [rsp + 0x4c]
add rax, r10
mov qword [rsp + 0x20], rax
call fcn.140064e50
cmp eax, 0xfffffffd
je 0x14006212f
mov rbx, qword [rsp + 0x30]
mov r13, rsi
mov rsi, qword [rsp + 0x38]
test eax, eax
jne 0x140061fb4
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140062bb8
mov qword [rsp + 0x60], rcx
mov rax, qword [rcx + 0x30]
test rax, rax
je 0x140062a19
mov eax, dword [0x1400ce448]
cmp eax, 1
je 0x1400629d9
cmp eax, 2
jge 0x140062319
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x60]
shl rcx, 4
mov dword [rdx + rcx + 0xe5048], 0
jmp 0x14006234c
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea r8, [rax + rax*2]
shl r8, 4
mov dword [rdx + r8 + 0xe5048], 0
mov rcx, qword [rdx + r8 + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rax, qword [rsp + 0x60]
mov edx, 9
cmp edi, 6
mov qword [r15], rax
cmovne edx, edi
test r14, r14
je 0x140062363
mov qword [r14 + 8], rax
mov qword [rax + 0xc0], r14
cmp edx, 0xf
je 0x140062393
cmp edx, 0x12
je 0x140062393
cmp edx, 0xc
jne 0x140062387
mov rax, qword [rsp + 0x60]
or byte [rax + 0x24e], 2
jmp 0x140062393
mov rax, qword [rsp + 0x60]
and byte [rax + 0x24e], 0xfd
mov rax, qword [rsp + 0x60]
mov byte [rax + 0x238], dl
mov rcx, qword [rsp + 0x60]
and byte [rcx + 0x24e], 0xf7
mov rdi, qword [rsp + 0x60]
and byte [rdi + 0x24e], 0xef
cmp dword [rsp + 0x4c], 0
je 0x140062764
mov rcx, qword [rsp + 0x60]
call fcn.140063d90
mov r12d, eax
test r12d, r12d
je 0x140062764
cmp ebp, 0xfffffffa
jle 0x1400623e6
lea eax, [rbp + 5]
mov r8d, eax
mov edi, eax
jmp 0x1400623ed
mov eax, ebp
mov r8d, ebp
mov edi, ebp
test eax, eax
jl 0x1400625b0
cmp eax, 0x68
jg 0x1400625b0
movsxd rax, eax
lea rdx, [0x140000000]
lea rcx, [rax + rax*2]
shl rcx, 4
mov rdx, qword [rdx + rcx + 0xe5068]
test rdx, rdx
je 0x140062426
mov rax, qword [rdx + 0x30]
test rax, rax
je 0x14006242f
mov dword [rsp + 0x48], edi
jmp 0x140062742
movzx eax, byte [rdx + 0x24f]
test al, 1
mov rbp, qword [rdx + 0xc0]
mov qword [rdx + 0xc0], 0
je 0x14006247a
movzx r9d, byte [rdx + 0x247]
mov r10d, r9d
shr r9d, 6
and r10d, 0xffffffdf
and r9d, 1
and eax, 0xfffffffe
shl r9d, 5
or r10d, r9d
mov byte [rdx + 0x247], r10b
mov byte [rdx + 0x24f], al
test al, 2
je 0x140062496
movzx r9d, byte [rdx + 0x23e]
and eax, 0xfffffffd
mov byte [rdx + 0x23d], r9b
mov byte [rdx + 0x24f], al
test al, 4
je 0x1400624b2
movzx r9d, byte [rdx + 0x236]
and eax, 0xfffffffb
mov byte [rdx + 0x235], r9b
mov byte [rdx + 0x24f], al
test al, 8
je 0x1400624e3
movzx r9d, byte [rdx + 0x24a]
mov r10d, r9d
shr r9d, 2
and r10d, 0xfffffffd
and r9d, 1
and eax, 0xfffffff7
add r9d, r9d
or r10d, r9d
mov byte [rdx + 0x24a], r10b
mov byte [rdx + 0x24f], al
test al, 0x10
je 0x1400624ff
movzx r9d, byte [rdx + 0x23c]
and eax, 0xffffffef
mov byte [rdx + 0x23b], r9b
mov byte [rdx + 0x24f], al
test al, 0x20
je 0x14006251b
movzx r9d, byte [rdx + 0x240]
and eax, 0xffffffdf
mov byte [rdx + 0x23f], r9b
mov byte [rdx + 0x24f], al
lea rax, [0x140000000]
cmp dword [0x1400ce448], 2
mov dword [rax + rcx + 0xe5050], 0
mov dword [rax + rcx + 0xe504c], 0xffffffff
jge 0x140062560
movsxd r8, r8d
lea rax, [0x140000000]
lea rdx, [r8 + r8*2]
shl rdx, 4
mov dword [rax + rdx + 0xe5048], 0
jmp 0x14006259a
movsxd r8, r8d
lea rdx, [0x140000000]
mov dword [rsp + 0x48], edi
movsxd rdi, edi
lea rax, [r8 + r8*2]
shl rax, 4
lea r9, [rdi + rdi*2]
shl r9, 4
mov dword [rdx + rax + 0xe5048], 0
mov rcx, qword [rdx + r9 + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
test rbp, rbp
je 0x14006274b
mov qword [rbp + 8], 0
jmp 0x14006274b
cmp ebp, 0xfffffffa
lea ecx, [rbp + 5]
cmovle ecx, ebp
mov eax, 0xfb93e673
mul ecx
shr edx, 9
imul edi, edx, 0x209
sub ecx, edi
add ecx, 0x69
mov edx, dword [0x1400ce448]
cmp edx, 2
mov dword [rsp + 0x48], ecx
movsxd rax, ecx
jge 0x140062617
lea r8, [rax + rax*2]
lea rax, [0x140000000]
shl r8, 4
mov edi, dword [rax + r8 + 0xe5048]
test edi, edi
jne 0x1400626b6
lea rax, [0x140000000]
mov dword [rax + r8 + 0xe5048], 1
jmp 0x1400626b6
lea rdi, [0x1400e5040]
lea rax, [rax + rax*2]
shl rax, 4
lea rcx, [rdi + rax + 8]
call fcn.14007a450
test eax, eax
jne 0x1400626ac
movsxd r8, dword [rsp + 0x48]
lea rax, [0x140000000]
lea rdx, [r8 + r8*2]
shl rdx, 4
mov rcx, qword [rax + rdx + 0xe5040]
test rcx, rcx
je 0x1400629a0
lea rax, [0x140000000]
lea rdx, [r8 + r8*2]
shl rdx, 4
mov dword [rax + rdx + 0xe5048], 0
lea rax, [0x140000000]
lea r8, [r8 + r8*2]
shl r8, 4
mov edx, 0xffffffff
mov rcx, qword [rax + r8 + 0xe5040]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movsxd rax, dword [rsp + 0x48]
lea rdx, [rax + rax*2]
shl rdx, 4
lea rcx, [rdi + rdx + 8]
call fcn.14007a450
mov edx, dword [0x1400ce448]
mov ecx, dword [rsp + 0x48]
cmp edx, 1
je 0x140062975
movsxd rcx, ecx
lea rdi, [0x140000000]
lea rax, [rcx + rcx*2]
shl rax, 4
mov rdi, qword [rdi + rax + 0xe5068]
test rdi, rdi
je 0x1400626f3
cmp ebp, dword [rdi + 0x1b0]
jbe 0x1400627cd
mov rdi, qword [rdi + 0x48]
test rdi, rdi
jne 0x1400626de
cmp edx, 1
je 0x14006278d
cmp edx, 2
jge 0x140062715
lea rdx, [0x140000000]
mov dword [rdx + rax + 0xe5048], 0
jmp 0x140062742
lea rdx, [0x140000000]
mov dword [rdx + rax + 0xe5048], 0
movsxd rax, dword [rsp + 0x48]
lea rdi, [rax + rax*2]
shl rdi, 4
mov rcx, qword [rdx + rdi + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov ecx, ebp
xor edx, edx
call fcn.140064640
mov qword [r15], 0
mov eax, r12d
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
xor eax, eax
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov dword [rsp + 0x50], 2
lea rcx, [rsp + 0x50]
call fcn.140079c50
nop
jmp 0x140061f16
lea rdi, [0x140000000]
lea rcx, [rsp + 0x30]
mov rdx, qword [rdi + rax + 0xe5058]
mov rax, qword [rdi + rax + 0xe5060]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
call fcn.14007a420
movsxd rax, dword [rsp + 0x48]
mov edx, dword [0x1400ce448]
lea rax, [rax + rax*2]
shl rax, 4
jmp 0x1400626fc
jne 0x1400626f3
cmp edx, 1
je 0x140062935
cmp edx, 2
jge 0x1400627f5
lea rdx, [0x140000000]
mov dword [rdx + rax + 0xe5048], 0
jmp 0x140062822
lea rdx, [0x140000000]
mov dword [rdx + rax + 0xe5048], 0
movsxd rax, dword [rsp + 0x48]
lea rbp, [rax + rax*2]
shl rbp, 4
mov rcx, qword [rdx + rbp + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
movzx ecx, byte [rdi + 0x24f]
test cl, 1
mov rbp, qword [rdi + 0xc0]
mov qword [rdi + 0xc0], 0
je 0x140062866
movzx eax, byte [rdi + 0x247]
mov edx, eax
shr eax, 6
and edx, 0xffffffdf
and eax, 1
and ecx, 0xfffffffe
shl eax, 5
or edx, eax
mov byte [rdi + 0x247], dl
mov byte [rdi + 0x24f], cl
test cl, 2
je 0x140062881
movzx eax, byte [rdi + 0x23e]
and ecx, 0xfffffffd
mov byte [rdi + 0x23d], al
mov byte [rdi + 0x24f], cl
test cl, 4
je 0x14006289c
movzx eax, byte [rdi + 0x236]
and ecx, 0xfffffffb
mov byte [rdi + 0x235], al
mov byte [rdi + 0x24f], cl
test cl, 8
je 0x1400628c6
movzx eax, byte [rdi + 0x24a]
mov edx, eax
shr eax, 2
and edx, 0xfffffffd
and eax, 1
and ecx, 0xfffffff7
add eax, eax
or edx, eax
mov byte [rdi + 0x24a], dl
mov byte [rdi + 0x24f], cl
test cl, 0x10
je 0x1400628e1
movzx eax, byte [rdi + 0x23c]
and ecx, 0xffffffef
mov byte [rdi + 0x23b], al
mov byte [rdi + 0x24f], cl
test cl, 0x20
je 0x1400628fc
movzx eax, byte [rdi + 0x240]
and ecx, 0xffffffdf
mov byte [rdi + 0x23f], al
mov byte [rdi + 0x24f], cl
mov dword [rdi + 0x10], 0
mov dword [rdi + 0xc], 0xffffffff
cmp dword [0x1400ce448], 2
jge 0x14006291f
mov dword [rdi + 8], 0
jmp 0x14006259a
mov rcx, qword [rdi]
mov dword [rdi + 8], 0
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
nop
jmp 0x14006259a
lea rbp, [0x140000000]
lea rcx, [rsp + 0x30]
mov rdx, qword [rbp + rax + 0xe5058]
mov rax, qword [rbp + rax + 0xe5060]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
call fcn.14007a420
movsxd rax, dword [rsp + 0x48]
mov edx, dword [0x1400ce448]
lea rax, [rax + rax*2]
shl rax, 4
jmp 0x1400627dc
movsxd rcx, ecx
lea rax, [0x1400e5040]
lea rdx, [rcx + rcx*2]
shl rdx, 4
lea rcx, [rax + rdx + 0x18]
call fcn.14007a3e0
mov edx, dword [0x1400ce448]
mov ecx, dword [rsp + 0x48]
jmp 0x1400626bf
xor ecx, ecx
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
movsxd r8, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rcx, [r8 + r8*2]
shl rcx, 4
mov qword [rdx + rcx + 0xe5040], rax
mov dword [rdx + rcx + 0xe5048], 0
jmp 0x140062673
movsxd rax, dword [rsp + 0x48]
lea r8, [0x140000000]
lea rcx, [rsp + 0x30]
lea r9, [rax + rax*2]
shl r9, 4
mov rdx, qword [r8 + r9 + 0xe5058]
mov r10, qword [r8 + r9 + 0xe5060]
mov qword [rcx], rdx
mov qword [rcx + 8], r10
call fcn.14007a420
mov eax, dword [0x1400ce448]
jmp 0x1400622ee
cmp dword [rcx + 0x10], 0
je 0x140062a3a
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov rcx, qword [rsp + 0x60]
cmp eax, dword [rcx + 0xc]
jne 0x140062a3a
mov r12d, Ordinal_45
jmp 0x140062adb
cmp dword [0x1400ce448], 2
jge 0x140062a5c
mov eax, dword [rcx + 8]
test eax, eax
je 0x140062a51
mov eax, 0x98
jmp 0x140062aa9
mov dword [rcx + 8], 1
xor eax, eax
jmp 0x140062aa9
add rcx, 8
call fcn.14007a450
test eax, eax
je 0x140062a70
mov eax, 0x98
jmp 0x140062aa9
mov rdx, qword [rsp + 0x60]
mov rax, qword [rdx]
test rax, rax
je 0x140062b92
mov dword [rdx + 8], 0
mov rax, qword [rsp + 0x60]
mov edx, 0xffffffff
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x60]
add rcx, 8
call fcn.14007a450
test eax, eax
je 0x140062ab5
mov r12d, 0x98
jmp 0x140062ad2
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov rdx, qword [rsp + 0x60]
xor r12d, r12d
mov dword [rdx + 0xc], eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x10], 1
test r12d, r12d
je 0x1400622df
mov eax, dword [0x1400ce448]
cmp eax, 1
je 0x140062b52
cmp eax, 2
jge 0x140062b0c
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rcx, [rax + rax*2]
shl rcx, 4
mov dword [rdx + rcx + 0xe5048], 0
jmp 0x140062b39
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rbp, [rax + rax*2]
shl rbp, 4
mov dword [rdx + rbp + 0xe5048], 0
mov rcx, qword [rdx + rbp + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov qword [r15], 0
mov eax, r12d
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
movsxd rax, dword [rsp + 0x48]
lea rbp, [0x140000000]
lea rcx, [rsp + 0x30]
lea rdi, [rax + rax*2]
shl rdi, 4
mov rdx, qword [rbp + rdi + 0xe5058]
mov r8, qword [rbp + rdi + 0xe5060]
mov qword [rcx], rdx
mov qword [rcx + 8], r8
call fcn.14007a420
mov eax, dword [0x1400ce448]
jmp 0x140062ae6
xor ecx, ecx
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov rdx, qword [rsp + 0x60]
mov qword [rdx], rax
mov rax, qword [rsp + 0x60]
mov dword [rax + 8], 0
jmp 0x140062a88
mov dword [rsp + 0x4c], 0
cmp ebp, 0xfffffffb
jge 0x140062bd5
test r12d, r12d
jne 0x140062bd5
mov r12d, reloc.LMGR10.dll_Ordinal_32
jmp 0x140062c80
mov ecx, 0x258
mov edx, 1
lea r8, [rsp + 0x40]
call fcn.140071900
mov r12d, eax
test r12d, r12d
jne 0x140062c7b
mov rcx, qword [rsp + 0x40]
movabs rdx, 0
mov eax, 0x258
mov qword [rcx + rax - 8], rdx
mov qword [rcx + rax - 0x10], rdx
mov qword [rcx + rax - 0x18], rdx
mov qword [rcx + rax - 0x20], rdx
mov qword [rcx + rax - 0x28], rdx
sub rax, 0x28
jne 0x140062c09
mov rax, qword [rsp + 0x40]
cmp ebp, 0xfffffffa
mov dword [rax + 0x1b0], ebp
lea eax, [rbp + 5]
cmovle eax, ebp
cmp eax, 0x69
jge 0x140062c4a
test eax, eax
jl 0x140062c4a
xor r12d, r12d
jmp 0x140062c7b
mov rax, qword [rsp + 0x40]
lea rdx, [rsp + 0x40]
xor r12d, r12d
mov qword [rax], 0
mov rcx, qword [rdx]
mov dword [rcx + 8], r12d
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], 0xffffffff
mov r9, qword [rsp + 0x40]
mov dword [r9 + 0x10], r12d
test r12d, r12d
je 0x140062cfb
mov eax, dword [0x1400ce448]
cmp eax, 1
je 0x140062d30
cmp eax, 2
jge 0x140062cb5
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rcx, [rax + rax*2]
shl rcx, 4
mov dword [rdx + rcx + 0xe5048], 0
jmp 0x140062ce2
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rbp, [rax + rax*2]
shl rbp, 4
mov dword [rdx + rbp + 0xe5048], 0
mov rcx, qword [rdx + rbp + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov qword [r15], 0
mov eax, r12d
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rdx, qword [rsp + 0x40]
test r13, r13
mov rax, qword [rsp + 0x60]
mov qword [rdx + 0x48], rax
je 0x140062d70
mov rax, qword [rsp + 0x40]
mov qword [r13 + 0x48], rax
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x60], rcx
mov dword [0x1400e4fc0], 1
jmp 0x1400622d2
movsxd rax, dword [rsp + 0x48]
lea rbp, [0x140000000]
lea rcx, [rsp + 0x30]
lea rdi, [rax + rax*2]
shl rdi, 4
mov rdx, qword [rbp + rdi + 0xe5058]
mov r8, qword [rbp + rdi + 0xe5060]
mov qword [rcx], rdx
mov qword [rcx + 8], r8
call fcn.14007a420
mov eax, dword [0x1400ce448]
jmp 0x140062c8f
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
mov rcx, qword [rsp + 0x40]
lea r8, [rax + rax*2]
shl r8, 4
mov qword [rdx + r8 + 0xe5068], rcx
jmp 0x140062d1c
jne 0x14006227e
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov dword [rsp + 0x4c], 1
jmp 0x1400622d2
movsxd rcx, ecx
lea rax, [0x1400e5040]
lea rdx, [rcx + rcx*2]
shl rdx, 4
lea rcx, [rax + rdx + 0x18]
call fcn.14007a3e0
mov ecx, dword [rsp + 0x48]
jmp 0x140062241
xor ecx, ecx
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
movsxd rdx, dword [rsp + 0x48]
lea rcx, [rdx + rdx*2]
shl rcx, 4
mov qword [rbx + rcx + 0xe5040], rax
lea rax, [rsp + 0x48]
movsxd r8, dword [rax]
lea r9, [r8 + r8*2]
shl r9, 4
mov dword [rbx + r9 + 0xe5048], 0
jmp 0x1400621fa
mov rbx, qword [rsp + 0x30]
test eax, eax
mov rsi, qword [rsp + 0x38]
jne 0x140061fb4
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x140062e43
mov dword [0x1400e4fc0], 1
jmp 0x14006234c
mov ecx, 0x258
mov edx, 1
mov dword [rsp + 0x4c], 0
lea r8, [rsp + 0x60]
call fcn.140071900
mov r12d, eax
test r12d, r12d
je 0x140062ef3
movsxd rcx, dword [rsp + 0x48]
lea rax, [0x140000000]
lea rdx, [rcx + rcx*2]
shl rdx, 4
cmp dword [0x1400ce448], 2
mov dword [rax + rdx + 0xe5050], 0
mov dword [rax + rdx + 0xe504c], 0xffffffff
jge 0x140062eb2
lea rax, [0x140000000]
mov dword [rax + rdx + 0xe5048], 0
jmp 0x140062eda
lea rax, [0x140000000]
mov dword [rax + rdx + 0xe5048], 0
lea rdx, [rcx + rcx*2]
shl rdx, 4
mov rcx, qword [rax + rdx + 0xe5040]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov qword [r15], 0
mov eax, r12d
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rcx, qword [rsp + 0x60]
movabs rdx, 0
mov eax, 0x258
mov qword [rcx + rax - 8], rdx
mov qword [rcx + rax - 0x10], rdx
mov qword [rcx + rax - 0x18], rdx
mov qword [rcx + rax - 0x20], rdx
mov qword [rcx + rax - 0x28], rdx
sub rax, 0x28
jne 0x140062f07
mov rax, qword [rsp + 0x60]
cmp ebp, 0xfffffffa
mov dword [rax + 0x1b0], ebp
lea eax, [rbp + 5]
cmovle eax, ebp
cmp eax, 0x69
jge 0x140062f43
test eax, eax
jge 0x140062f74
mov rax, qword [rsp + 0x60]
lea rdx, [rsp + 0x60]
xor r9d, r9d
mov qword [rax], 0
mov rcx, qword [rdx]
mov dword [rcx + 8], r9d
mov r8, qword [rsp + 0x60]
mov dword [r8 + 0xc], 0xffffffff
mov r10, qword [rsp + 0x60]
mov dword [r10 + 0x10], r9d
movsxd rax, dword [rsp + 0x48]
lea rdx, [0x140000000]
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x60]
shl rcx, 4
mov qword [rdx + rcx + 0xe5068], rax
jmp 0x140062e34
mov qword [rsp + 0x60], rax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rax, qword [rsp + 0x60]
mov dword [rsp + 0x4c], 1
jmp 0x140062e34
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
jmp 0x140061fb4
xor ecx, ecx
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
movsxd rcx, dword [rsp + 0x48]
lea rdx, [rcx + rcx*2]
shl rdx, 4
mov qword [rbx + rdx + 0xe5040], rax
mov dword [rbx + rdx + 0xe5048], 0
jmp 0x140062059
mov ecx, 0x258
mov edx, 1
lea r8, [rsp + 0x60]
call fcn.140071900
mov r13d, eax
test r13d, r13d
jne 0x140063082
mov rdx, qword [rsp + 0x60]
movabs r12, 0
mov eax, 0x258
mov qword [rdx + rax - 8], r12
mov qword [rdx + rax - 0x10], r12
mov qword [rdx + rax - 0x18], r12
mov qword [rdx + rax - 0x20], r12
mov qword [rdx + rax - 0x28], r12
sub rax, 0x28
jne 0x14006302c
mov rax, qword [rsp + 0x60]
mov ecx, 0x68
xor edx, edx
lea r8, [rsp + 0x40]
mov dword [rax + 0x1b0], ebp
call fcn.140071900
mov r13d, eax
test r13d, r13d
je 0x1400630a0
mov rcx, qword [rsp + 0x60]
call fcn.1400719c0
mov qword [rsp + 0x60], 0
test r13d, r13d
je 0x1400630f7
mov qword [r15], 0
mov eax, r13d
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rdx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x40]
mov qword [rdx + 0xa8], rax
mov eax, 0x60
mov rbp, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0xb0], rcx
mov rdx, qword [rsp + 0x40]
mov qword [rdx + 0x60], r12
mov qword [rdx + rax - 8], r12
mov qword [rdx + rax - 0x10], r12
mov qword [rdx + rax - 0x18], r12
mov qword [rdx + rax - 0x20], r12
sub rax, 0x20
jne 0x1400630d0
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x60]
mov qword [rdx], rax
mov r8d, dword [0x1400ce448]
cmp r8d, 2
jge 0x14006311c
cmp r8d, 1
je 0x1400631ae
lea rax, [0x1400ce380]
mov qword [rsp + 0x48], rax
jmp 0x14006313c
lea rcx, [rsp + 0x48]
call fcn.14007a150
mov ebp, eax
test ebp, ebp
jne 0x1400631e9
mov r8d, dword [0x1400ce448]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x60]
cmp r8d, 1
mov rax, qword [rax]
mov qword [rdx + 0x48], rax
mov rbp, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov qword [rbp], rcx
je 0x1400631c6
mov rax, qword [rsp + 0x60]
test r14, r14
mov byte [rax + 0x238], dil
mov rax, qword [rsp + 0x60]
je 0x140063176
mov qword [r14 + 8], rax
mov qword [rax + 0xc0], r14
xor eax, eax
mov rdx, qword [rsp + 0x60]
and byte [rdx + 0x24e], 0xf7
mov rcx, qword [rsp + 0x60]
and byte [rcx + 0x24e], 0xef
mov r8, qword [rsp + 0x60]
mov qword [r15], r8
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
lea rcx, [0x1400ce3e8]
call fcn.14007a3e0
mov r8d, dword [0x1400ce448]
jmp 0x14006310e
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x30]
mov rax, qword [rdx + 0x68]
mov rbp, qword [rdx + 0x70]
mov qword [rcx], rax
mov qword [rcx + 8], rbp
call fcn.14007a420
jmp 0x14006315c
mov rcx, qword [rsp + 0x60]
call fcn.1400719c0
mov qword [r15], 0
mov eax, ebp
add rsp, 0x68
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.14007a510
nop
jmp 0x140061f04