Function at 0x1400622b0
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 [0x14010c040]
xor rax, rsp
mov qword [rsp + 0xb8], rax
lea r12, [rcx + 8]
test rdx, rdx
jle 0x140062b19
mov rsi, rdx
mov rdi, rcx
movapd xmm0, xmmword [0x1400efde0]
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 0x14006271b
movabs rax, 0x7fffffffffffffff
movabs r14, 0x8637bd05af7
cmp rsi, rax
je 0x140062485
mov rax, qword [0x14010e128]
lea rcx, [0x14008d470]
cmp rax, rcx
jne 0x140062a07
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 [0x14011d660]
cmp rax, r14
jge 0x140062b3a
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 0x14006247e
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 0x1400628e1
mov sil, 1
cmp byte [rdi + 0x10], 0
je 0x140062494
cmp byte [rsp + 0x90], 0
jne 0x1400624d3
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.1400909a0
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 0x14006242a
movabs rbp, 0x7fffffffffffffff
jmp 0x1400623c8
mov qword [rsp + 0xa8], 0x9b
mov al, byte [0x14011d70b]
test al, al
je 0x140062442
jmp 0x140062b77
movzx ecx, al
lea r8, [rsp + 0x30]
mov qword [r8], 0
lea rdx, [rsp + 0xb0]
mov r9d, 2
call fcn.140055680
jmp 0x1400624e9
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14011d67a]
test al, al
jne 0x1400624af
call fcn.14008eed8
mov ebp, dword [rax]
call fcn.14008eed8
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 0x1400625e3
cmp qword [rsp + 0x58], 0
jne 0x1400625e3
cmp byte [r14 + 0x19], 0
je 0x1400625e3
mov rbx, qword [r14 + 0x28]
add rbx, 0x68
mov rax, qword [0x14010e5a0]
and rax, rbx
cmp rax, qword [0x14010e588]
jne 0x140062553
mov rcx, rbx
call fcn.140053a20
test rbx, rbx
je 0x140062b71
mov rcx, rbx
call qword [sym.imp.progwrp.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400629b0
mov qword [r14 + 0x20], 0
cmp byte [r14 + 0x3a], 0
jne 0x1400625b8
cmp byte [r14 + 0x38], 0
mov rax, qword [r14 + 0x28]
jne 0x140062968
dec dword [rax + 0x130]
cmp byte [r14 + 0x19], 0
je 0x140062b74
cmp byte [r14 + 0x18], 0
jne 0x1400625b8
cmp byte [r14 + 0x39], 0
mov rax, qword [r14 + 0x28]
jne 0x140062bca
dec dword [rax + 0x134]
mov word [r14 + 0x38], 0
mov rcx, rbx
call qword [sym.imp.progwrp.dll_ReleaseSRWLockExclusive]
mov rax, qword [0x14010e5a0]
and rax, rbx
cmp rax, qword [0x14010e588]
jne 0x1400625e3
mov rcx, rbx
call fcn.140053ce0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.14008eed8
mov dword [rax], ebp
cmp byte [rsp + 0x88], 0
je 0x140062609
mov rdi, qword [rsp + 0x80]
test rdi, rdi
jne 0x140062666
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14006261b
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x58]
mov rax, qword [0x14010e5a0]
and rax, rcx
cmp rax, qword [0x14010e588]
je 0x140062b30
mov qword [rsp + 0x58], 0
mov rcx, qword [rsp + 0x50]
mov rax, qword [0x14010e5a0]
and rax, rcx
cmp rax, qword [0x14010e588]
jne 0x140062450
call fcn.1400540d0
jmp 0x140062450
mov rax, qword [fcn.140072ec0]
lea rcx, [0x14008d470]
cmp rax, rcx
jne 0x140062b06
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 [0x14011d660]
movabs rdx, 0x8637bd05af7
cmp rax, rdx
jge 0x140062c0f
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 0x140062a1a
mov rdi, qword [rsp + 0x80]
test rdi, rdi
je 0x140062609
lock dec dword [rdi]
jne 0x140062609
jmp 0x140062bb5
lea rdx, str.TimedWait
lea r8, str....._base_synchronizationwaitable_event.cc
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov r9d, 0x24
call fcn.140055660
cmp byte [rsp + 0x90], 0
jne 0x140062b5a
mov eax, dword [0x14011a6f8]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14, qword [rax + 0x138]
mov rax, qword [0x14010e5a0]
and rax, r14
cmp rax, qword [0x14010e588]
jne 0x14006277f
mov rcx, r14
call fcn.140053b80
mov qword [rsp + 0x50], r14
mov eax, dword [0x14011a6f8]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea r15, [rax + 0x140]
mov r14, qword [r15]
mov rax, qword [0x14010e5a0]
and rax, r14
cmp rax, qword [0x14010e588]
jne 0x1400627bc
mov rcx, r14
call fcn.140053b80
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 0x140062844
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 [0x14011a6f8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp byte [rcx + 0x170], al
je 0x140062848
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140062876
cmp byte [rax + 0x38], 0
je 0x140062876
mov r14, qword [rax + 0x30]
mov qword [rax + 0x30], 0
test r14, r14
je 0x140062876
lock dec dword [r14]
jne 0x140062876
mov rcx, r14
call fcn.14000e5d0
mov rcx, r14
call fcn.14008ed54
jmp 0x140062876
xor eax, eax
jmp 0x1400627df
mov eax, dword [0x140120270]
mov ecx, dword [0x14011a6f8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400629be
cmp byte [0x14012026c], 0
je 0x14006280b
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14006288f
cmp qword [rsp + 0x58], 0
jne 0x14006288f
xor edx, edx
call fcn.140057ca0
mov qword [rsp + 0xa0], 0xa
mov al, byte [0x14011d67a]
test al, al
jne 0x1400628b2
mov byte [rsp + 0x90], 1
jmp 0x14006233c
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.14000dc60
jmp 0x1400628a5
mov rax, qword [0x14010e128]
lea rcx, [0x14008d470]
cmp rax, rcx
jne 0x140062af6
mov qword [rsp + 0x30], 0
mov rcx, rbx
call r15
mov rax, qword [rsp + 0x30]
mov rcx, qword [0x14011d660]
movabs rdx, 0x8637bd05af7
cmp rax, rdx
jge 0x140062c2f
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 0x1400623e5
xor esi, esi
jmp 0x140062442
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x110]
dec rdx
mov qword [rax + 0x110], rdx
cmp rcx, qword [rax + 0x88]
je 0x140062992
cmp qword [rax + 0x120], rdx
jae 0x1400629a0
mov word [rax + 0xb8], 0
jmp 0x140062591
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x140062591
mov rcx, rbx
call qword [sym.imp.progwrp.dll_AcquireSRWLockExclusive]
jmp 0x14006256d
lea rcx, [0x140120270]
call fcn.14008ee04
cmp dword [0x140120270], 0xffffffff
jne 0x14006286d
mov rcx, qword [0x14011d648]
test rcx, rcx
je 0x1400629ef
lea rdx, str.enable_background_thread_pool
call fcn.14000e690
mov byte [0x14012026c], 1
lea rcx, [0x140120270]
call fcn.14008ed98
jmp 0x14006286d
lea rcx, [rsp + 0xb0]
call qword [0x140102bb8]
jmp 0x1400623ac
mov eax, 0x3938700
add rax, qword [rdi + 0x1f0]
cmovo rax, r12
cmp rax, rdx
jle 0x140062c98
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 0x140062c7f
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x1400f2008]
call fcn.1400bc608
movsd xmm6, qword [0x1400f6f40]
ucomisd xmm6, xmm0
jb 0x140062c4f
maxsd xmm0, qword [0x1400f6f48]
cvttsd2si ebx, xmm0
movabs rax, 0x7fffffffffffffff
add rax, r14
add rax, 2
cmp rax, 2
jae 0x140062abb
movsd xmm0, qword [0x1400f6f50]
jmp 0x140062acb
xorps xmm0, xmm0
cvtsi2sd xmm0, r14
divsd xmm0, qword [0x1400f2008]
call fcn.1400bc6b8
ucomisd xmm6, xmm0
jb 0x140062c66
maxsd xmm0, qword [0x1400f6f48]
cvttsd2si r8d, xmm0
mov rcx, rdi
mov edx, ebx
call fcn.140003610
jmp 0x1400626fc
lea rcx, [rsp + 0x30]
call qword [0x140102bb8]
jmp 0x140062937
lea rcx, [rsp + 0xb0]
call qword [0x140102bb8]
jmp 0x1400626c3
mov rcx, qword [r12]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete sil
jmp 0x140062450
call fcn.1400540d0
jmp 0x140062637
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400623a4
lea r14, [rsp + 0x50]
mov rcx, r14
call fcn.140077360
mov byte [r14 + 0x40], 0
jmp 0x14006274a
int3
int3
movzx ecx, al
xor r12, qword [0x14011bb98]
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.140068a10
jmp 0x140062442
mov rcx, rdi
call fcn.14000e5d0
mov rcx, rdi
call fcn.14008ed54
jmp 0x140062609
dec qword [rax + 0x118]
mov rcx, qword [rax + 0x80]
cmp rcx, qword [rax + 0x88]
je 0x140062bf1
mov rdx, qword [rax + 0x120]
cmp rdx, qword [rax + 0x110]
jae 0x140062bff
mov word [rax + 0xb8], 0
jmp 0x1400625b8
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x1400625b8
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400626bb
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140062932
xor eax, eax
ucomisd xmm0, qword [0x1400f6f48]
mov ebx, 0x7fffffff
cmovb ebx, eax
jmp 0x140062a9a
xor eax, eax
ucomisd xmm0, qword [0x1400f6f48]
mov r8d, 0x7fffffff
cmovb r8d, eax
jmp 0x140062ae7
xor ecx, ecx
cmp rax, r15
setg cl
lea rax, [0x1400f6f30]
movsd xmm0, qword [rax + rcx*8]
jmp 0x140062a6f
lea rbx, [rsp + 0x30]
mov rcx, rbx
call fcn.1400229f0
mov rbx, qword [rbx]
test rbx, rbx
je 0x140062a33
lock dec dword [rbx]
jne 0x140062a33
mov rcx, rbx
call fcn.14000e5d0
mov rcx, rbx
call fcn.14008ed54
jmp 0x140062a33