Function at 0x140064ab0
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
movapd xmmword [rsp + 0xc0], xmm6
mov rax, qword [0x140113040]
xor rax, rsp
mov qword [rsp + 0xb8], rax
lea r12, [rcx + 8]
test rdx, rdx
jle 0x140065319
mov rsi, rdx
mov rdi, rcx
movapd xmm0, xmmword [0x1400f2c30]
movapd xmmword [rsp + 0x50], xmm0
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movapd xmmword [rsp + 0x80], xmm0
movapd xmmword [rsp + 0x70], xmm0
movapd xmmword [rsp + 0x60], xmm0
xor eax, eax
mov byte [rsp + 0x50], al
mov byte [rsp + 0x90], al
cmp byte [rcx + 0x10], al
je 0x140064f1b
movabs rax, 0x7fffffffffffffff
movabs r14, 0x8637bd05af7
cmp rsi, rax
je 0x140064c85
mov rax, qword [0x140115510]
lea rcx, [0x14008fa40]
cmp rax, rcx
jne 0x140065207
lea rbx, [rsp + 0x30]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
mov rcx, qword [0x140124770]
cmp rax, r14
jge 0x14006533a
imul rax, rax, 0xf4240
cqo
idiv rcx
mov qword [rsp + 0xb0], rax
mov rbp, qword [rsp + 0xb0]
lea rax, [rsi + rbp]
sar rax, 0x3f
btc rax, 0x3f
add rbp, rsi
cmovo rbp, rax
mov r13, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rbx, [rsp + 0x30]
mov r15, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movabs r14, 0x20c49ba5e353f7cf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
je 0x140064c7e
mov rax, rsi
shr rax, 3
mul r14
mov rax, rdx
shr rax, 4
imul rcx, rax, 0x3e8
cmp rcx, rsi
adc rax, 0
mov rcx, rax
shr rcx, 0x20
neg rcx
mov edx, 0
sbb edx, edx
or edx, eax
mov rcx, qword [r12]
call r13
test eax, eax
jne 0x1400650e1
mov sil, 1
cmp byte [rdi + 0x10], 0
je 0x140064c94
cmp byte [rsp + 0x90], 0
jne 0x140064cd3
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.1400935c0
mov eax, esi
movaps xmm6, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov edx, 0xffffffff
jmp 0x140064c2a
movabs rbp, 0x7fffffffffffffff
jmp 0x140064bc8
mov qword [rsp + 0xa8], 0x9b
mov al, byte [0x14012469b]
test al, al
je 0x140064c42
jmp 0x140065377
movzx ecx, al
lea r8, [rsp + 0x30]
mov qword [r8], 0
lea rdx, [rsp + 0xb0]
mov r9d, 2
call fcn.140058350
jmp 0x140064ce9
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14012460a]
test al, al
jne 0x140064caf
call fcn.140091628
mov ebp, dword [rax]
call fcn.140091628
mov dword [rax], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r14, qword [rsp + 0x50]
test r14, r14
je 0x140064de3
cmp qword [rsp + 0x58], 0
jne 0x140064de3
cmp byte [r14 + 0x19], 0
je 0x140064de3
mov rbx, qword [r14 + 0x28]
add rbx, 0x68
mov rax, qword [0x1401155a0]
and rax, rbx
cmp rax, qword [0x140115588]
jne 0x140064d53
mov rcx, rbx
call fcn.1400566f0
test rbx, rbx
je 0x140065371
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400651b0
mov qword [r14 + 0x20], 0
cmp byte [r14 + 0x3a], 0
jne 0x140064db8
cmp byte [r14 + 0x38], 0
mov rax, qword [r14 + 0x28]
jne 0x140065168
dec dword [rax + 0x130]
cmp byte [r14 + 0x19], 0
je 0x140065374
cmp byte [r14 + 0x18], 0
jne 0x140064db8
cmp byte [r14 + 0x39], 0
mov rax, qword [r14 + 0x28]
jne 0x1400653ca
dec dword [rax + 0x134]
mov word [r14 + 0x38], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [0x1401155a0]
and rax, rbx
cmp rax, qword [0x140115588]
jne 0x140064de3
mov rcx, rbx
call fcn.1400569b0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.140091628
mov dword [rax], ebp
cmp byte [rsp + 0x88], 0
je 0x140064e09
mov rdi, qword [rsp + 0x80]
test rdi, rdi
jne 0x140064e66
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x140064e1b
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x58]
mov rax, qword [0x1401155a0]
and rax, rcx
cmp rax, qword [0x140115588]
je 0x140065330
mov qword [rsp + 0x58], 0
mov rcx, qword [rsp + 0x50]
mov rax, qword [0x1401155a0]
and rax, rcx
cmp rax, qword [0x140115588]
jne 0x140064c50
call fcn.140056da0
jmp 0x140064c50
mov rax, qword [fcn.1400756c0]
lea rcx, [0x14008fa40]
cmp rax, rcx
jne 0x140065306
lea rbx, [rsp + 0x30]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
mov rcx, qword [0x140124770]
movabs rdx, 0x8637bd05af7
cmp rax, rdx
jge 0x14006540f
imul rax, rax, 0xf4240
cqo
idiv rcx
mov qword [rsp + 0xb0], rax
mov r15, qword [rsp + 0x78]
mov rdx, qword [rsp + 0xb0]
xor eax, eax
cmp rdx, r15
setns al
movabs r12, 0x7fffffffffffffff
add rax, r12
mov r14, rdx
sub r14, r15
cmovo r14, rax
cmp r14, 0xf4240
jge 0x14006521a
mov rdi, qword [rsp + 0x80]
test rdi, rdi
je 0x140064e09
lock dec dword [rdi]
jne 0x140064e09
jmp 0x1400653b5
lea rdx, str.TimedWait
lea r8, str....._base_synchronizationwaitable_event.cc
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov r9d, 0x24
call fcn.140058330
cmp byte [rsp + 0x90], 0
jne 0x14006535a
mov eax, dword [0x140121718]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14, qword [rax + 0x168]
mov rax, qword [0x1401155a0]
and rax, r14
cmp rax, qword [0x140115588]
jne 0x140064f7f
mov rcx, r14
call fcn.140056850
mov qword [rsp + 0x50], r14
mov eax, dword [0x140121718]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea r15, [rax + 0x170]
mov r14, qword [r15]
mov rax, qword [0x1401155a0]
and rax, r14
cmp rax, qword [0x140115588]
jne 0x140064fbc
mov rcx, r14
call fcn.140056850
lea rax, [rsp + 0x50]
mov qword [rax + 8], r14
mov qword [rax + 0x10], r15
mov rcx, qword [r15]
mov qword [r15], rax
mov qword [rax + 0x18], rcx
mov rax, qword [rax + 8]
test rax, rax
je 0x140065044
mov al, byte [rax + 0x20]
mov byte [rsp + 0x70], al
xor eax, eax
mov byte [rsp + 0x78], al
mov byte [rsp + 0x88], al
mov ecx, dword [0x140121718]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp byte [rcx + 0x180], al
je 0x140065048
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140065076
cmp byte [rax + 0x38], 0
je 0x140065076
mov r14, qword [rax + 0x30]
mov qword [rax + 0x30], 0
test r14, r14
je 0x140065076
lock dec dword [r14]
jne 0x140065076
mov rcx, r14
call fcn.14000dfe0
mov rcx, r14
call fcn.1400914a4
jmp 0x140065076
xor eax, eax
jmp 0x140064fdf
mov eax, dword [0x14012ac24]
mov ecx, dword [0x140121718]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400651be
cmp byte [0x14012ac20], 0
je 0x14006500b
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14006508f
cmp qword [rsp + 0x58], 0
jne 0x14006508f
xor edx, edx
call fcn.14005a970
mov qword [rsp + 0xa0], 0xa
mov al, byte [0x14012460a]
test al, al
jne 0x1400650b2
mov byte [rsp + 0x90], 1
jmp 0x140064b3c
movzx ecx, al
lea r9, [rsp + 0xb0]
mov qword [r9], rbx
lea rax, str.ScopedBlockingCallWithBaseSyncPrimitives
lea r8, [rsp + 0xa8]
mov qword [r8], rax
lea rdx, [rsp + 0xa0]
call fcn.14000e6e0
jmp 0x1400650a5
mov rax, qword [0x140115510]
lea rcx, [0x14008fa40]
cmp rax, rcx
jne 0x1400652f6
mov qword [rsp + 0x30], 0
mov rcx, rbx
call r15
mov rax, qword [rsp + 0x30]
mov rcx, qword [0x140124770]
movabs rdx, 0x8637bd05af7
cmp rax, rdx
jge 0x14006542f
imul rax, rax, 0xf4240
cqo
idiv rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
xor ecx, ecx
cmp rbp, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rcx, rdx
mov rsi, rbp
sub rsi, rax
cmovo rsi, rcx
jg 0x140064be5
xor esi, esi
jmp 0x140064c42
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x110]
dec rdx
mov qword [rax + 0x110], rdx
cmp rcx, qword [rax + 0x88]
je 0x140065192
cmp qword [rax + 0x120], rdx
jae 0x1400651a0
mov word [rax + 0xb8], 0
jmp 0x140064d91
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x140064d91
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140064d6d
lea rcx, [0x14012ac24]
call fcn.140091554
cmp dword [0x14012ac24], 0xffffffff
jne 0x14006506d
mov rcx, qword [0x140124838]
test rcx, rcx
je 0x1400651ef
lea rdx, str.enable_background_thread_pool
call fcn.14000e0a0
mov byte [0x14012ac20], 1
lea rcx, [0x14012ac24]
call fcn.1400914e8
jmp 0x14006506d
lea rcx, [rsp + 0xb0]
call qword [0x140109830]
jmp 0x140064bac
mov eax, 0x3938700
add rax, qword [rdi + 0x1f0]
cmovo rax, r12
cmp rax, rdx
jle 0x140065498
mov rax, qword [rdi + 0x1f0]
xor edx, edx
cmp r15, rax
setns dl
add rdx, r12
mov rcx, r15
sub rcx, rax
cmovo rcx, rdx
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
add rdx, 2
cmp rdx, 2
jb 0x14006547f
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x1400fc880]
call fcn.1400c1800
movsd xmm6, qword [0x1400fcb30]
ucomisd xmm6, xmm0
jb 0x14006544f
maxsd xmm0, qword [0x1400fcb38]
cvttsd2si ebx, xmm0
movabs rax, 0x7fffffffffffffff
add rax, r14
add rax, 2
cmp rax, 2
jae 0x1400652bb
movsd xmm0, qword [0x1400fcb40]
jmp 0x1400652cb
xorps xmm0, xmm0
cvtsi2sd xmm0, r14
divsd xmm0, qword [0x1400fc880]
call fcn.1400c1798
ucomisd xmm6, xmm0
jb 0x140065466
maxsd xmm0, qword [0x1400fcb38]
cvttsd2si r8d, xmm0
mov rcx, rdi
mov edx, ebx
call fcn.140003810
jmp 0x140064efc
lea rcx, [rsp + 0x30]
call qword [0x140109830]
jmp 0x140065137
lea rcx, [rsp + 0xb0]
call qword [0x140109830]
jmp 0x140064ec3
mov rcx, qword [r12]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete sil
jmp 0x140064c50
call fcn.140056da0
jmp 0x140064e37
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140064ba4
lea r14, [rsp + 0x50]
mov rcx, r14
call fcn.140079b60
mov byte [r14 + 0x40], 0
jmp 0x140064f4a
int3
int3
movzx ecx, al
xor r12, qword [0x140122bb8]
mov qword [rsp + 0x30], r12
lea rax, str.WaitableEvent::Wait_Complete
lea r8, [rsp + 0xb0]
mov qword [r8], rax
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0xa8]
mov r9d, 3
call fcn.14006b210
jmp 0x140064c42
mov rcx, rdi
call fcn.14000dfe0
mov rcx, rdi
call fcn.1400914a4
jmp 0x140064e09
dec qword [rax + 0x118]
mov rcx, qword [rax + 0x80]
cmp rcx, qword [rax + 0x88]
je 0x1400653f1
mov rdx, qword [rax + 0x120]
cmp rdx, qword [rax + 0x110]
jae 0x1400653ff
mov word [rax + 0xb8], 0
jmp 0x140064db8
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x140064db8
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140064ebb
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140065132
xor eax, eax
ucomisd xmm0, qword [0x1400fcb38]
mov ebx, 0x7fffffff
cmovb ebx, eax
jmp 0x14006529a
xor eax, eax
ucomisd xmm0, qword [0x1400fcb38]
mov r8d, 0x7fffffff
cmovb r8d, eax
jmp 0x1400652e7
xor ecx, ecx
cmp rax, r15
setg cl
lea rax, [0x1400fcb20]
movsd xmm0, qword [rax + rcx*8]
jmp 0x14006526f
lea rbx, [rsp + 0x30]
mov rcx, rbx
call fcn.140024790
mov rbx, qword [rbx]
test rbx, rbx
je 0x140065233
lock dec dword [rbx]
jne 0x140065233
mov rcx, rbx
call fcn.14000dfe0
mov rcx, rbx
call fcn.1400914a4
jmp 0x140065233