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

Disassembly:
sub rsp, 0x28
mov rcx, qword [rcx]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete al
add rsp, 0x28
ret
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 [0x14022d028]
xor rax, rsp
mov qword [rsp + 0xb8], rax
lea rdi, [rcx + 8]
test rdx, rdx
jle 0x1400f1712
mov rsi, rdx
mov rbx, rcx
movapd xmm0, xmmword [0x1401fa0c0]
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 0x1400f11ed
movabs rax, 0x7fffffffffffffff
movabs r15, 0x8637bd05af7
cmp rsi, rax
je 0x1400f11c3
mov rax, qword [0x14022f6c0]
lea rcx, [0x140142f90]
cmp rax, rcx
jne 0x1400f15ba
lea r14, [rsp + 0x30]
mov qword [r14], 0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r14]
cmp rax, r15
jge 0x1400f16e8
imul rax, rax, 0xf4240
cqo
idiv qword [0x14023f400]
mov r14, rax
lea rax, [r14 + rsi]
sar rax, 0x3f
btc rax, 0x3f
add r14, rsi
cmovo r14, rax
mov rbp, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea r15, [rsp + 0x30]
mov r13, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movabs r12, 0x20c49ba5e353f7cf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
je 0x1400f11bc
mov rax, rsi
shr rax, 3
mul r12
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 [rdi]
call rbp
test eax, eax
jne 0x1400f14ea
mov sil, 1
cmp byte [rbx + 0x10], 0
je 0x1400f11d2
cmp byte [rsp + 0x90], 0
jne 0x1400f1279
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.140146540
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 0x1400f116a
movabs r14, 0x7fffffffffffffff
jmp 0x1400f1108
mov qword [rsp + 0xa8], 0x9b
mov al, byte [0x14023f05b]
test al, al
je 0x1400f1180
jmp 0x1400f1772
lea rdx, str.TimedWait
lea r8, str....._base_synchronizationwaitable_event.cc
lea r14, [rsp + 0x30]
mov rcx, r14
mov r9d, 0x24
call fcn.1400ce6a0
cmp byte [rsp + 0x90], 0
jne 0x1400f1745
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8d, 1
call fcn.1400f43b0
mov qword [rsp + 0xa0], 0xa
mov al, byte [0x14023efca]
test al, al
jne 0x1400f140e
mov byte [rsp + 0x90], 1
jmp 0x1400f108c
movzx ecx, al
lea r8, [rsp + 0x30]
mov qword [r8], 0
lea rdx, [rsp + 0xb0]
mov r9d, 2
call fcn.1400bf990
jmp 0x1400f128f
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14023efca]
test al, al
jne 0x1400f1255
movabs r14, 0xfffffffc00000000
call fcn.140143d20
mov r15d, dword [rax]
call fcn.140143d20
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 r12, qword [rsp + 0x50]
test r12, r12
je 0x1400f1391
cmp qword [rsp + 0x58], 0
jne 0x1400f1391
cmp byte [r12 + 0x19], 0
je 0x1400f1391
mov rbx, qword [r12 + 0x28]
add rbx, 0x68
mov r13, rbx
and r13, r14
cmp r13, qword [0x14022f688]
jne 0x1400f1302
mov rcx, rbx
call fcn.1400b3f20
test rbx, rbx
je 0x1400f175c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400f15ac
mov qword [r12 + 0x20], 0
cmp byte [r12 + 0x3a], 0
jne 0x1400f136f
cmp byte [r12 + 0x38], 0
mov rax, qword [r12 + 0x28]
jne 0x1400f1564
dec dword [rax + 0x130]
cmp byte [r12 + 0x19], 0
je 0x1400f175f
cmp byte [r12 + 0x18], 0
jne 0x1400f136f
cmp byte [r12 + 0x39], 0
mov rcx, qword [r12 + 0x28]
jne 0x1400f17b0
dec dword [rcx + 0x134]
mov word [r12 + 0x38], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp r13, qword [0x14022f688]
jne 0x1400f1391
mov rcx, rbx
call fcn.1400b4080
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.140143d20
mov dword [rax], r15d
cmp byte [rsp + 0x88], 0
je 0x1400f13bc
mov rdi, qword [rsp + 0x80]
test rdi, rdi
jne 0x1400f1440
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1400f13ce
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
and rax, r14
cmp rax, qword [0x14022f688]
je 0x1400f16de
mov qword [rsp + 0x58], 0
mov rcx, qword [rsp + 0x50]
and r14, rcx
cmp r14, qword [0x14022f688]
jne 0x1400f118e
call fcn.1400c5e10
jmp 0x1400f118e
movzx ecx, al
lea r9, [rsp + 0xb0]
mov qword [r9], r14
lea rax, str.ScopedBlockingCallWithBaseSyncPrimitives
lea r8, [rsp + 0xa8]
mov qword [r8], rax
lea rdx, [rsp + 0xa0]
call fcn.140015c10
jmp 0x1400f1248
mov rax, qword [fcn.1400fc780]
lea rcx, [0x140142f90]
cmp rax, rcx
jne 0x1400f16c5
lea rbx, [rsp + 0x30]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400f17cf
imul rax, rax, 0xf4240
cqo
idiv qword [0x14023f400]
mov qword [rsp + 0xb0], rax
mov r12, qword [rsp + 0x78]
xor ecx, ecx
cmp rax, r12
setns cl
movabs r13, 0x7fffffffffffffff
add rcx, r13
mov r15, rax
sub r15, r12
cmovo r15, rcx
cmp r15, 0xf4240
jge 0x1400f15d3
mov rdi, qword [rsp + 0x80]
test rdi, rdi
je 0x1400f13bc
lock dec dword [rdi]
jne 0x1400f13bc
jmp 0x1400f17ba
mov rax, qword [0x14022f6c0]
lea rcx, [0x140142f90]
cmp rax, rcx
jne 0x1400f16af
mov qword [rsp + 0x30], 0
mov rcx, r15
call r13
mov rax, qword [rsp + 0x30]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400f17f6
imul rax, rax, 0xf4240
cqo
idiv qword [0x14023f400]
xor ecx, ecx
cmp r14, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rcx, rdx
mov rsi, r14
sub rsi, rax
cmovo rsi, rcx
jg 0x1400f1125
xor esi, esi
jmp 0x1400f1180
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x110]
dec rdx
mov qword [rax + 0x110], rdx
cmp rcx, qword [rax + 0x88]
je 0x1400f158e
cmp qword [rax + 0x120], rdx
jae 0x1400f159c
mov word [rax + 0xb8], 0
jmp 0x1400f1344
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x1400f1344
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400f131c
lea r14, [rsp + 0xb0]
mov rcx, r14
call qword [0x14021f820]
mov r14, qword [r14]
jmp 0x1400f10f4
mov ecx, 0x3938700
add rcx, qword [rdi + 0x1f0]
cmovo rcx, r13
cmp rcx, rax
jle 0x1400f1866
mov rax, qword [rdi + 0x1f0]
xor edx, edx
cmp r12, rax
setns dl
add rdx, r13
mov rcx, r12
sub rcx, rax
cmovo rcx, rdx
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
add rdx, 2
cmp rdx, 2
jb 0x1400f184d
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x14020c1a0]
call fcn.14017ad80
movsd xmm6, qword [0x14020c1a8]
ucomisd xmm6, xmm0
jb 0x1400f181d
maxsd xmm0, qword [0x14020c1b0]
cvttsd2si ebx, xmm0
movabs rax, 0x7fffffffffffffff
add rax, r15
add rax, 2
cmp rax, 2
jae 0x1400f1674
movsd xmm0, qword [0x14020c1b8]
jmp 0x1400f1684
xorps xmm0, xmm0
cvtsi2sd xmm0, r15
divsd xmm0, qword [0x14020c1a0]
call fcn.14017ae30
ucomisd xmm6, xmm0
jb 0x1400f1834
maxsd xmm0, qword [0x14020c1b0]
cvttsd2si r8d, xmm0
mov rcx, rdi
mov edx, ebx
call fcn.140005f30
jmp 0x1400f14cb
lea rsi, [rsp + 0x30]
mov rcx, rsi
call qword [0x14021f820]
mov rax, qword [rsi]
jmp 0x1400f1538
lea rbx, [rsp + 0xb0]
mov rcx, rbx
call qword [0x14021f820]
mov rax, qword [rbx]
jmp 0x1400f149a
call fcn.1400c5e10
jmp 0x1400f13e6
mov rcx, qword [0x14023f400]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov r14, rax
add r14, r8
jmp 0x1400f10f4
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.140146540
mov rcx, rdi
movaps xmm6, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x140090960
lea r15, [rsp + 0x50]
mov rcx, r15
call fcn.140107b40
mov byte [r15 + 0x40], 0
jmp 0x1400f121c
int3
lea rcx, [0x1401fff03]
lea rdx, str....._third_partylibc_srcincludeoptional:801:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.140180910
movzx ecx, al
xor rdi, qword [0x14023d560]
mov qword [rsp + 0x30], rdi
lea rax, str.WaitableEvent::Wait_Complete
lea r8, [rsp + 0xb0]
mov qword [r8], rax
mov qword [rsp + 0x20], r15
lea rdx, [rsp + 0xa8]
mov r9d, 3
call fcn.1400c9a30
jmp 0x1400f1180
call fcn.1401b2930
jmp 0x1400f136f
mov rcx, rdi
call fcn.1400581d0
mov rcx, rdi
call fcn.140143bb0
jmp 0x1400f13bc
mov rcx, qword [0x14023f400]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400f1492
mov rcx, qword [0x14023f400]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400f1538
xor eax, eax
ucomisd xmm0, qword [0x14020c1b0]
mov ebx, 0x7fffffff
cmovb ebx, eax
jmp 0x1400f1653
xor eax, eax
ucomisd xmm0, qword [0x14020c1b0]
mov r8d, 0x7fffffff
cmovb r8d, eax
jmp 0x1400f16a0
xor ecx, ecx
cmp rax, r12
setg cl
lea rax, [0x14020c190]
movsd xmm0, qword [rax + rcx*8]
jmp 0x1400f1628
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov rdx, rax
call fcn.1400629c0
mov rbx, qword [rbx]
test rbx, rbx
je 0x1400f15ec
lock dec dword [rbx]
jne 0x1400f15ec
mov rcx, rbx
call fcn.1400581d0
mov rcx, rbx
call fcn.140143bb0
jmp 0x1400f15ec