Function at 0x140146ed0
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, 0xe8
movaps xmmword [rsp + 0xd0], xmm6
mov r14, rcx
mov rax, qword [0x140297028]
xor rax, rsp
mov qword [rsp + 0xc8], rax
mov bl, byte [0x140299870]
test bl, 0x19
jne 0x140147636
movabs r15, 0xaaaaaaaaaaaaaaaa
xor eax, eax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], r15
mov rax, qword [r14 + 0x210]
mov byte [rax + 4], 1
mov ecx, 8
call fcn.1401803a4
mov dword [rax], 0
mov byte [rax + 4], 0
test rax, rax
je 0x140146f5e
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x1401476ea
mov rcx, qword [r14 + 0x210]
mov qword [r14 + 0x210], rax
test rcx, rcx
je 0x140146f7a
lock dec dword [rcx]
je 0x1401472ed
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 + 0x78]
mov rcx, rdi
mov r9d, 0x11a
call fcn.1400e92c0
mov rcx, rsi
mov rdx, rdi
call fcn.140147a60
mov rsi, qword [r14 + 0x18]
mov eax, dword [rsi + 8]
nop dword [rax + rax]
mov ecx, eax
or ecx, 0x80000000
lock cmpxchg dword [rsi + 8], ecx
jne 0x140146fc0
mov edx, eax
shr edx, 0x1e
and edx, 1
test eax, eax
mov ecx, 2
cmovns ecx, edx
cmp ecx, 1
jne 0x14014778d
test eax, 0x3fffffff
jne 0x1401476dc
movabs r13, 0xfffffffc00000000
mov rcx, qword [rsi + 0x20]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401475fb
mov qword [rsi + 0x20], 0
test byte [0x140299870], 0x19
jne 0x1401473ca
mov qword [rsp + 0x70], r15
mov byte [rsp + 0x57], bl
lea rsi, [r14 + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140147732
mov byte [r14 + 0x52], 1
mov r15, qword [r14 + 0x28]
mov r12, qword [r14 + 0x60]
lea rdi, [r14 + 0x60]
xorps xmm6, xmm6
movups xmmword [r14 + 0x38], xmm6
movups xmmword [r14 + 0x28], xmm6
mov qword [r14 + 0x48], 0
mov rbx, qword [r14 + 0x68]
cmp r12, rbx
jne 0x14014774e
mov qword [rsp + 0x58], 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 0x140147104
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [0x14017a1d0]
cmp rax, rdx
jne 0x140147740
movaps xmm0, xmmword [0x140268c70]
lea r8, [rsp + 0xa0]
movaps xmmword [r8 + 0x10], xmm0
movaps xmmword [r8], xmm0
mov rax, qword [rcx + 0x38]
mov rax, qword [rax + 0x308]
xor edx, edx
mov byte [r8], dl
mov qword [r8 + 0x18], rax
lea r9, [rsp + 0x78]
mov byte [r9], dl
xorps xmm0, xmm0
movups xmmword [r9 + 8], xmm0
mov qword [r9 + 0x18], 0
mov rdx, r14
call fcn.14014ea80
mov rsi, qword [r14 + 0x180]
mov qword [r14 + 0x180], 0
test rsi, rsi
jne 0x14014748d
mov rsi, qword [r14 + 0x188]
mov qword [r14 + 0x188], 0
test rsi, rsi
jne 0x140147466
mov rcx, qword [r14 + 0xa0]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401473ac
mov qword [r14 + 0xa0], 0
mov rcx, qword [r14 + 0xa8]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401476ed
xor esi, esi
mov qword [r14 + 0xa8], rsi
lea rcx, [r14 + 0x1f0]
call fcn.1401478a0
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 0x140147230
cmp byte [rsi + 0x50], 0
jne 0x1401472f7
mov rcx, qword [rsi + 0x30]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401473b6
mov qword [rsi + 0x30], 0
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401476f7
mov qword [rsi + 0x28], 0
mov rcx, qword [rsi]
test rcx, rcx
jne 0x140147367
mov rcx, rsi
call fcn.14018039c
test rbx, rbx
je 0x14014728e
cmp byte [rbx + 0x50], 0
jne 0x140147300
mov rcx, qword [rbx + 0x30]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401473c0
mov qword [rbx + 0x30], 0
mov rcx, qword [rbx + 0x28]
and r13, rcx
cmp r13, qword [0x1402a6e88]
je 0x140147701
mov qword [rbx + 0x28], 0
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14014732f
mov rcx, rbx
call fcn.14018039c
mov rcx, rdi
sub rcx, rbp
jne 0x140147523
test rbp, rbp
jne 0x14014739f
mov rax, qword [rsp + 0x58]
test rax, rax
jne 0x14014770b
test r15, r15
jne 0x140147309
test byte [rsp + 0x57], 0x19
jne 0x1401474fc
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.1401830b0
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14018039c
jmp 0x140146f7a
mov byte [rsi + 0x50], 0
jmp 0x1401471de
mov byte [rbx + 0x50], 0
jmp 0x14014723f
mov rsi, qword [r15 + 0x20]
mov qword [r15 + 0x20], 0
mov rcx, r15
call fcn.1401477d0
mov rcx, r15
call fcn.14018039c
mov r15, rsi
test rsi, rsi
je 0x1401472b6
jmp 0x140147309
mov rax, qword [rcx + 0x20]
mov qword [rcx + 0x20], 0
mov rsi, qword [rbx]
mov qword [rbx], rax
test rsi, rsi
je 0x140147359
mov rcx, rsi
call fcn.1401477d0
mov rcx, rsi
call fcn.14018039c
mov rax, qword [rbx]
mov rcx, rax
test rax, rax
je 0x140147286
jmp 0x14014732f
mov rax, qword [rcx + 0x20]
mov qword [rcx + 0x20], 0
mov r14, qword [rsi]
mov qword [rsi], rax
test r14, r14
je 0x140147391
mov rcx, r14
call fcn.1401477d0
mov rcx, r14
call fcn.14018039c
mov rax, qword [rsi]
mov rcx, rax
test rax, rax
je 0x140147228
jmp 0x140147367
mov rcx, rbp
call fcn.14018039c
jmp 0x1401472a3
call fcn.1400d83a0
jmp 0x140147154
call fcn.1400d83a0
jmp 0x1401471f5
call fcn.1400d83a0
jmp 0x140147256
mov rax, qword [0x14029adc8]
lea rcx, [0x14017e8a0]
cmp rax, rcx
jne 0x1401475c1
lea rsi, [rsp + 0x78]
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 0x1401475d1
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402ac9c8]
mov qword [rsp + 0x78], 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, [0x140299870]
lea r8, [0x140276d70]
mov cl, 0x45
xor r9d, r9d
call fcn.140131640
jmp 0x14014702b
lock dec dword [rsi]
jne 0x14014713a
mov rax, qword [rsi + 0x10]
lea rcx, [0x1401f5780]
cmp rax, rcx
je 0x1401474d8
mov rcx, rsi
call qword [case.0x1401e9be0.0]
jmp 0x14014713a
lock dec dword [rsi]
jne 0x14014711f
mov rax, qword [rsi + 0x10]
lea rcx, [0x1401f5780]
cmp rax, rcx
je 0x1401474b4
mov rcx, rsi
call qword [case.0x1401e9be0.0]
jmp 0x14014711f
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401475ad
mov rcx, rsi
call fcn.14018039c
jmp 0x14014711f
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
je 0x1401475b7
mov rcx, rsi
call fcn.14018039c
jmp 0x14014713a
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
je 0x1401472c1
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
call fcn.140149db0
jmp 0x1401472c1
movabs rdx, 0xc30c30c30c30c30d
mov rax, rcx
imul rdx
add rdx, rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 7
lea rcx, [rdx + rax]
cmp rcx, 1
adc rdx, rax
lea rax, [rbp + 0xa0]
mov rcx, qword [rax - 8]
test rcx, rcx
je 0x140147588
mov cl, byte [rcx + 4]
test cl, cl
jne 0x140147588
cmp qword [rax], 0
je 0x140147588
mov rcx, qword [rax - 8]
test rcx, rcx
je 0x1401475f8
mov cl, byte [rcx + 4]
test cl, cl
jne 0x1401475f8
mov rcx, qword [rax]
mov qword [rcx + 0x10], 0xffffffffffffffff
add rax, 0xa8
dec rdx
jne 0x140147553
add rdi, 0xffffffffffffff58
mov rcx, rdi
call fcn.1400f6d70
cmp rdi, rbp
je 0x14014729a
jmp 0x140147593
call fcn.1400db1b0
jmp 0x1401474cb
call fcn.1400db1b0
jmp 0x1401474ef
lea rcx, [rsp + 0x78]
call qword [case.0x1401e9be0.0]
jmp 0x140147421
mov rcx, qword [0x1402ac9c8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14014741c
int3
call fcn.1400d83a0
jmp 0x140147016
mov rcx, qword [0x1402ac9c8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140147680
lea rcx, [rsp + 0x78]
call qword [case.0x1401e9be0.0]
jmp 0x140147685
mov rax, qword [0x14029adc8]
lea rcx, [0x14017e8a0]
cmp rax, rcx
jne 0x140147629
lea rsi, [rsp + 0x78]
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 0x140147605
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402ac9c8]
mov qword [rsp + 0x78], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rcx, [rsp + 0x78]
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, [0x140299870]
lea r15, str.TaskQueueImpl::UnregisterTaskQueue
mov cl, 0x58
mov qword [rsp + 0x60], rdx
mov r8, r15
xor r9d, r9d
call fcn.140131640
mov qword [rsp + 0x68], rax
jmp 0x140146f25
lea rcx, [rsi + 0x10]
call fcn.140143040
jmp 0x140146ff5
int3
call fcn.1400d83a0
jmp 0x140147179
call fcn.1400d83a0
jmp 0x140147214
call fcn.1400d83a0
jmp 0x140147272
cmp r12, rax
je 0x140147723
add r12, 0xfffffffffffffff0
mov rcx, r12
call fcn.140204200
cmp r12, qword [rsp + 0x58]
jne 0x140147710
mov rcx, qword [rsp + 0x58]
call fcn.14018039c
jmp 0x1401472b1
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140147049
mov rdx, r14
call qword [case.0x1401e9be0.0]
jmp 0x140147104
mov rbp, qword [r12]
mov rcx, qword [rbp + 8]
mov rax, rcx
and rax, r13
cmp rax, qword [0x1402a6e88]
jne 0x14014776a
call fcn.1400d83a0
mov qword [rbp + 8], 0
add r12, 0x10
cmp r12, rbx
jne 0x14014774e
mov rax, qword [r14 + 0x60]
mov qword [rsp + 0x58], rax
mov r12, qword [r14 + 0x68]
jmp 0x140147081
test ecx, ecx
jne 0x140146ff5
mov ecx, 0x3fffffff
and eax, ecx
mov edx, eax
neg edx
lock xadd dword [rsi + 8], edx
test edx, edx
jns 0x140146ff5
and edx, ecx
cmp edx, eax
jne 0x140146ff5
lea rcx, [rsi + 0x10]
call fcn.140122de0
jmp 0x140146ff5