Function at 0x1400ecef0
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
movaps xmmword [rsp + 0xc0], xmm6
mov r14, rcx
mov rax, qword [0x140219028]
xor rax, rsp
mov qword [rsp + 0xb8], rax
mov bl, byte [0x1402270d0]
test bl, 0x19
jne 0x1400ed5fe
movabs r15, 0xaaaaaaaaaaaaaaaa
xor eax, eax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], r15
mov rax, qword [r14 + 0x1f8]
mov byte [rax + 4], 1
mov ecx, 8
call fcn.14012cd5c
mov dword [rax], 0
mov byte [rax + 4], 0
test rax, rax
je 0x1400ecf7e
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x1400ed6f3
mov rcx, qword [r14 + 0x1f8]
mov qword [r14 + 0x1f8], rax
test rcx, rcx
je 0x1400ecf9a
lock dec dword [rcx]
je 0x1400ed301
lea rsi, [rsp + 0xa0]
mov byte [rsi], 0xaa
lea rdx, str.UnregisterTaskQueue
lea r8, str....._base_task_sequence_manager_task_queue_impl.cc
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov r9d, 0x125
call fcn.1400bab70
mov rcx, rsi
mov rdx, rdi
call fcn.1400ed940
mov rsi, qword [r14 + 0x20]
mov eax, dword [rsi + 8]
nop dword [rax + rax]
mov ecx, eax
or ecx, 0x80000000
lock cmpxchg dword [rsi + 8], ecx
jne 0x1400ecfe0
mov edx, eax
shr edx, 0x1e
and edx, 1
test eax, eax
mov ecx, 2
cmovns ecx, edx
cmp ecx, 1
jne 0x1400ed6bb
test eax, 0x3fffffff
jne 0x1400ed6ad
movabs r13, 0xfffffffc00000000
mov rcx, qword [rsi + 0x20]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed037
call fcn.1400ad190
mov qword [rsi + 0x20], 0
test byte [0x1402270d0], 0x19
jne 0x1400ed3ae
mov qword [rsp + 0x78], r15
mov byte [rsp + 0x5f], bl
lea rsi, [r14 + 0x28]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400ed73b
mov byte [r14 + 0x5a], 1
mov r15, qword [r14 + 0x30]
mov r12, qword [r14 + 0x68]
lea rdi, [r14 + 0x68]
xorps xmm6, xmm6
movups xmmword [r14 + 0x40], xmm6
movups xmmword [r14 + 0x30], xmm6
mov qword [r14 + 0x50], 0
mov rbx, qword [r14 + 0x70]
cmp r12, rbx
jne 0x1400ed757
mov qword [rsp + 0x60], r12
movups xmmword [rdi], xmm6
mov qword [rdi + 0x10], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [r14 + 0xa0]
test rcx, rcx
je 0x1400ed129
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [0x140126430]
cmp rax, rdx
jne 0x1400ed749
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r8, [rsp + 0xa0]
mov qword [r8 + 0x10], rax
movaps xmm0, xmmword [0x1401ee3a0]
movaps xmmword [r8], xmm0
mov rax, qword [rcx + 0x38]
mov rax, qword [rax + 0x300]
xor edx, edx
mov byte [r8], dl
mov byte [r8 + 8], dl
mov qword [r8 + 0x10], rax
lea r9, [rsp + 0x80]
mov byte [r9], dl
mov byte [r9 + 0x18], dl
mov rdx, r14
call fcn.1400f9c70
mov rsi, qword [r14 + 0x170]
mov qword [r14 + 0x170], 0
test rsi, rsi
jne 0x1400ed477
mov rsi, qword [r14 + 0x178]
mov qword [r14 + 0x178], 0
test rsi, rsi
jne 0x1400ed450
mov rcx, qword [r14 + 0xa0]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed17a
call fcn.1400ad190
mov qword [r14 + 0xa0], 0
mov rcx, qword [r14 + 0xa8]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
je 0x1400ed6f6
xor esi, esi
mov qword [r14 + 0xa8], rsi
lea rcx, [r14 + 0x1d0]
call fcn.1400ed7a0
mov dword [r14 + 0xe0], 0
mov rbp, qword [r14 + 0xc8]
mov rdi, qword [r14 + 0xd0]
mov qword [r14 + 0xd8], rsi
xorps xmm0, xmm0
movups xmmword [r14 + 0xc8], xmm0
mov rsi, qword [r14 + 0xb0]
mov rbx, qword [r14 + 0xb8]
movups xmmword [r14 + 0xb0], xmm0
test rsi, rsi
je 0x1400ed24d
mov rcx, qword [rsi + 0x30]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed212
call fcn.1400ad190
mov qword [rsi + 0x30], 0
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
je 0x1400ed700
mov qword [rsi + 0x28], 0
mov rcx, qword [rsi]
test rcx, rcx
jne 0x1400ed369
mov rcx, rsi
call fcn.14012cd4c
test rbx, rbx
je 0x1400ed2a2
mov rcx, qword [rbx + 0x30]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed26a
call fcn.1400ad190
mov qword [rbx + 0x30], 0
mov rcx, qword [rbx + 0x28]
and r13, rcx
cmp r13, qword [0x140219dc8]
je 0x1400ed70a
mov qword [rbx + 0x28], 0
mov rcx, qword [rbx]
test rcx, rcx
jne 0x1400ed331
mov rcx, rbx
call fcn.14012cd4c
mov rcx, rdi
sub rcx, rbp
jne 0x1400ed50f
test rbp, rbp
jne 0x1400ed3a1
mov rax, qword [rsp + 0x60]
test rax, rax
jne 0x1400ed714
test r15, r15
jne 0x1400ed30b
test byte [rsp + 0x5f], 0x19
jne 0x1400ed4e8
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.14012f6f0
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
call fcn.14012cd4c
jmp 0x1400ecf9a
mov rsi, qword [r15 + 0x20]
mov qword [r15 + 0x20], 0
mov rcx, r15
call fcn.1400c80e0
mov rcx, r15
call fcn.14012cd4c
mov r15, rsi
test rsi, rsi
je 0x1400ed2ca
jmp 0x1400ed30b
mov rax, qword [rcx + 0x20]
mov qword [rcx + 0x20], 0
mov rsi, qword [rbx]
mov qword [rbx], rax
test rsi, rsi
je 0x1400ed35b
mov rcx, rsi
call fcn.1400c80e0
mov rcx, rsi
call fcn.14012cd4c
mov rax, qword [rbx]
mov rcx, rax
test rax, rax
je 0x1400ed29a
jmp 0x1400ed331
mov rax, qword [rcx + 0x20]
mov qword [rcx + 0x20], 0
mov r14, qword [rsi]
mov qword [rsi], rax
test r14, r14
je 0x1400ed393
mov rcx, r14
call fcn.1400c80e0
mov rcx, r14
call fcn.14012cd4c
mov rax, qword [rsi]
mov rcx, rax
test rax, rax
je 0x1400ed245
jmp 0x1400ed369
mov rcx, rbp
call fcn.14012cd4c
jmp 0x1400ed2b7
mov rax, qword [0x140228618]
lea rcx, [0x14012b780]
cmp rax, rcx
jne 0x1400ed58d
lea rsi, [rsp + 0x80]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400ed5a0
imul rax, rax, 0xf4240
cqo
idiv qword [0x140231a18]
mov qword [rsp + 0x80], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402270d0]
lea r8, str.ScopedAllowBaseSyncPrimitivesOutsideBlockingScope
mov cl, 0x45
xor r9d, r9d
call fcn.140106570
jmp 0x1400ed04c
lock dec dword [rsi]
jne 0x1400ed15f
mov rax, qword [rsi + 0x10]
lea rcx, [0x140191160]
cmp rax, rcx
je 0x1400ed4c3
mov rcx, rsi
call qword [0x140243008]
jmp 0x1400ed15f
lock dec dword [rsi]
jne 0x1400ed144
mov rax, qword [rsi + 0x10]
lea rcx, [0x140191160]
cmp rax, rcx
je 0x1400ed49e
mov rcx, rsi
call qword [0x140243008]
jmp 0x1400ed144
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed4b6
call fcn.1400b23f0
mov rcx, rsi
call fcn.14012cd4c
jmp 0x1400ed144
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed4db
call fcn.1400b23f0
mov rcx, rsi
call fcn.14012cd4c
jmp 0x1400ed15f
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0
je 0x1400ed2d5
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
call fcn.1400efa90
jmp 0x1400ed2d5
sar rcx, 3
movabs rax, 0xcf3cf3cf3cf3cf3d
imul rax, rcx
cmp rax, 1
adc rax, 0
lea rcx, [rbp + 0xa0]
mov rdx, qword [rcx - 8]
test rdx, rdx
je 0x1400ed561
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1400ed561
cmp qword [rcx], 0
je 0x1400ed561
mov rdx, qword [rcx - 8]
test rdx, rdx
je 0x1400ed5c7
mov dl, byte [rdx + 4]
test dl, dl
jne 0x1400ed5c7
mov rdx, qword [rcx]
mov qword [rdx + 0x10], 0xffffffffffffffff
add rcx, 0xa8
dec rax
jne 0x1400ed530
add rdi, 0xffffffffffffff58
je 0x1400ed796
mov rcx, rdi
call fcn.1400c25b0
cmp rdi, rbp
je 0x1400ed2ae
jmp 0x1400ed56d
lea rcx, [rsp + 0x80]
call qword [0x140243008]
jmp 0x1400ed40b
mov rcx, qword [0x140231a18]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400ed403
int3
mov rcx, qword [0x140231a18]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400ed64b
lea rcx, [rsp + 0x80]
call qword [0x140243008]
jmp 0x1400ed653
mov rax, qword [0x140228618]
lea rcx, [0x14012b780]
cmp rax, rcx
jne 0x1400ed5ee
lea rsi, [rsp + 0x80]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400ed5ca
imul rax, rax, 0xf4240
cqo
idiv qword [0x140231a18]
mov qword [rsp + 0x80], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402270d0]
lea r15, str.TaskQueueImpl::UnregisterTaskQueue
mov cl, 0x58
mov qword [rsp + 0x68], rdx
mov r8, r15
xor r9d, r9d
call fcn.140106570
mov qword [rsp + 0x70], rax
jmp 0x1400ecf45
lea rcx, [rsi + 0x10]
call fcn.1400f5f10
jmp 0x1400ed015
test ecx, ecx
jne 0x1400ed015
mov ecx, 0x3fffffff
and eax, ecx
mov edx, eax
neg edx
lock xadd dword [rsi + 8], edx
test edx, edx
jns 0x1400ed015
and edx, ecx
cmp edx, eax
jne 0x1400ed015
lea rcx, [rsi + 0x10]
call fcn.1400d8c10
jmp 0x1400ed015
int3
call fcn.1400ad190
jmp 0x1400ed19f
call fcn.1400ad190
jmp 0x1400ed231
call fcn.1400ad190
jmp 0x1400ed286
cmp r12, rax
je 0x1400ed72c
add r12, 0xfffffffffffffff0
mov rcx, r12
call fcn.1401a31c0
cmp r12, qword [rsp + 0x60]
jne 0x1400ed719
mov rcx, qword [rsp + 0x60]
call fcn.14012cd4c
jmp 0x1400ed2c5
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400ed06a
mov rdx, r14
call qword [0x140243008]
jmp 0x1400ed129
mov rbp, qword [r12]
mov rcx, qword [rbp + 8]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140219dc8]
jne 0x1400ed773
call fcn.1400ad190
mov qword [rbp + 8], 0
add r12, 0x10
cmp r12, rbx
jne 0x1400ed757
mov rax, qword [r14 + 0x68]
mov qword [rsp + 0x60], rax
mov r12, qword [r14 + 0x70]
jmp 0x1400ed0a2
int3