Function at 0x1401a70d0
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
mov rsi, rcx
mov rax, qword [0x1402cb038]
xor rax, rsp
mov qword [rsp + 0xd0], rax
movabs r15, 0xaaaaaaaaaaaaaaaa
movaps xmm0, xmmword [0x14029ca60]
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0xa0], r15
movaps xmmword [rsp + 0x90], xmm0
mov byte [rsp + 0x80], 0
mov byte [rsp + 0xa0], 0
movzx ebp, byte [0x1402d9860]
test bpl, 0x19
jne 0x1401a7b6b
xor edx, edx
mov r8, r15
mov r9, r15
movabs rdi, 0x8000000000000001
cmp byte [rsi + 0xe8], 0
jne 0x1401a718c
mov rax, qword [rsi + 0x80]
mov rcx, qword [rax + 0x248]
mov rax, qword [rcx + 0x10]
cmp rax, qword [rcx + 0x18]
je 0x1401a7390
cmp dword [rax + 0x14], 2
sete bl
cmp byte [rsi + 0x99], bl
jne 0x1401a739e
mov r13, qword [rsi + 0x80]
mov r12, qword [r13 + 0x240]
test r12, r12
jne 0x1401a7a04
cmp byte [r13 + 0x258], 0
jne 0x1401a75af
mov r15, qword [r13 + 0x320]
test r15, r15
jne 0x1401a780c
cmp byte [rsi + 0x148], 0
je 0x1401a727a
cmp byte [rsi + 0x130], 0
je 0x1401a7265
mov eax, dword [0x1402db110]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rbx, qword [rax + 0x170]
test rbx, rbx
je 0x1401a7265
mov rax, qword [rbx + 0x10]
test rax, rax
js 0x1401a7960
cmp dword [rbx + 0x24], 1
movabs r14, 0x4000000000000000
jne 0x1401a7983
cmp qword [rbx + 0x18], 0
jne 0x1401a7ae9
movabs rax, 0xbfffffffffffffff
lock and qword [rbx + 0x10], rax
mov r15, qword [rsi + 0x138]
cmp qword [rbx + 0x18], 0
jne 0x1401a7b28
mov rax, qword [rbx + 0x10]
and rax, r14
movabs rcx, 0xffffffffffffff
and r15, rcx
or r15, rax
mov qword [rbx + 0x10], r15
dec dword [rbx + 0x24]
mov byte [rsi + 0x148], 0
cmp byte [rsp + 0xa0], 0
jne 0x1401a7934
lea r15, [rsi - 0xb8]
mov rax, qword [rsi - 0xc0]
mov byte [rsp + 0x80], 0
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x90], rax
mov rax, qword [0x1402cbde0]
and rax, r15
cmp rax, qword [0x1402cbdc8]
je 0x1401a7371
mov qword [rsp + 0x98], r15
mov byte [rsp + 0xa0], 1
mov rax, qword [rsi + 0xb0]
add rdi, 0xfffffffffffffffe
cmp rax, rdi
jne 0x1401a78b8
mov rax, qword [rsi + 0x18]
cmp qword [rsi + 0x10], rax
je 0x1401a7908
mov rdi, qword [rax - 8]
cmp byte [rdi + 0xf], 0
jne 0x1401a7685
test bpl, 0x19
jne 0x1401a785e
cmp byte [rsp + 0xa0], 0
je 0x1401a7344
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x1401a785b
lea rdx, [rsp + 0x80]
call fcn.1401511a0
mov rcx, qword [rsp + 0x98]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x1401a736a
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1401ce5b0
xor eax, eax
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1401509f0
jmp 0x1401a7344
mov rcx, r15
mov rbx, rdx
mov r14, r8
mov r12, r9
call fcn.1401508a0
mov r9, r12
mov r8, r14
mov rdx, rbx
jmp 0x1401a72b7
xor ebx, ebx
cmp byte [rsi + 0x99], bl
je 0x1401a718c
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x50], rdx
mov byte [rsi + 0x99], bl
mov eax, dword [0x1402e3ff0]
mov ecx, dword [0x1402db110]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1401a7643
mov r12, qword [0x1402e3fe8]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401a76bd
movzx ebx, bl
dec ebx
or ebx, 1
add ebx, dword [0x1402e3f9c]
mov dword [0x1402e3f9c], ebx
cmp byte [0x1402e3f98], 0
je 0x1401a75a4
mov r14d, 1
test ebx, ebx
cmove r14d, ebx
mov eax, dword [0x1402e3fa0]
cmp r14d, eax
je 0x1401a7566
test eax, eax
je 0x1401a74f5
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
lea r13, [rsp + 0xa8]
cmp rax, rcx
jne 0x1401a7592
mov qword [r13], 0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r13]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1401a76e6
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rsp + 0xa8], rax
mov rcx, qword [0x1402e3ff8]
xor edx, edx
cmp rax, rcx
setns dl
movabs r8, 0x7fffffffffffffff
add r8, rdx
sub rax, rcx
cmovo rax, r8
lea rdx, [rax + rdi]
mov rcx, qword [0x1402e3fa8]
cmp rdx, 2
jb 0x1401a76cb
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov rax, rcx
mov qword [0x1402e3fa8], rax
mov ecx, dword [0x1402e3fa0]
call qword [sym.imp.WINMM.dll_timeEndPeriod]
mov dword [0x1402e3fa0], r14d
test ebx, ebx
je 0x1401a7566
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
lea r13, [rsp + 0xa8]
cmp rax, rcx
jne 0x1401a7583
mov qword [r13], 0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r13]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1401a770d
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [0x1402e3ff8], rax
mov ecx, dword [0x1402e3fa0]
call qword [sym.imp.WINMM.dll_timeBeginPeriod]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401a718c
mov rcx, r13
call qword [0x1402f5008]
mov rax, qword [r13]
jmp 0x1401a7553
mov rcx, r13
call qword [0x1402f5008]
mov rax, qword [r13]
jmp 0x1401a7493
mov r14d, 8
jmp 0x1401a7417
lea r12, [r13 - 8]
mov bl, byte [0x1402d9860]
test bl, 0x19
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x58], r9
mov r14, rdx
jne 0x1401a7734
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x68], r15
mov rcx, r12
call fcn.1400325f0
mov rax, qword [r13 + 0x328]
mov rax, qword [fcn.1401c9410]
lea r12, [rsp + 0xc8]
mov rcx, r12
call qword [0x1402f5008]
mov eax, 0x1c9c380
add rax, qword [r12]
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [r13 + 0x260], rcx
mov byte [r13 + 0x258], 0
test bl, 0x19
mov rdx, r14
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
je 0x1401a71b1
jmp 0x1401a7bce
lea rcx, [0x1402e3ff0]
call fcn.1401cc16c
cmp dword [0x1402e3ff0], 0xffffffff
jne 0x1401a73d8
mov ecx, 8
call fcn.1401cbbc4
mov qword [rax], 0
mov qword [0x1402e3fe8], rax
lea rcx, [0x1402e3ff0]
call fcn.1401cc1d4
jmp 0x1401a73d8
mov r12, r9
mov r14, r8
mov rbx, rdx
add rsi, 8
test byte [0x1402d9950], 0x19
jne 0x1401a7795
mov rax, qword [rsi]
mov rax, qword [rax + 0x10]
mov rcx, rsi
call qword [0x1402f5008]
mov rdx, rbx
mov r8, r14
mov r9, r12
jmp 0x1401a72f7
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401a73f0
cmp rcx, rax
je 0x1401a74e2
add rcx, rdi
cmp rcx, 1
ja 0x1401a74e2
jmp 0x1401a7c05
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401a748b
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401a7553
lea r15, [rsp + 0xc8]
mov rcx, r15
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], r15
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, [0x1402d9860]
lea r8, str.SequenceManagerImpl::MaybeReclaimMemory
mov cl, 0x58
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x68], r8
xor r9d, r9d
call fcn.1402331d0
mov r15, rax
jmp 0x1401a75db
lea r15, [rsp + 0xa8]
mov rcx, r15
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
xor ecx, ecx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rcx
mov dword [rsp + 0x48], 0x880
lea rdx, [0x1402d9950]
lea r8, str.RunLoop_ExitedOnIdle
mov cl, 0x58
xor r9d, r9d
call fcn.1402331d0
cmp byte [0x1402d9950], 0
je 0x1401a769f
lea rcx, [0x1402d9950]
lea rdx, str.RunLoop_ExitedOnIdle
mov r8, rax
call fcn.1402332a0
jmp 0x1401a769f
mov qword [r13 + 0x320], 0
mov rax, qword [r15 + 8]
mov rcx, r15
mov rbx, rdx
mov r14, r8
mov r12, r9
call qword [0x1402f5008]
mov r9, r12
mov r8, r14
mov rdx, rbx
lock dec dword [r15]
jne 0x1401a71c1
mov rax, qword [r15 + 0x10]
mov rcx, r15
call qword [0x1402f5008]
mov r9, r12
mov r8, r14
mov rdx, rbx
jmp 0x1401a71c1
int3
cmp byte [rdx], 0
je 0x1401a7301
mov rcx, rdx
mov rdx, r8
mov r8, r9
call fcn.1402332a0
jmp 0x1401a7301
mov rax, qword [fcn.1401c9410]
lea r15, [rsp + 0xa8]
mov rcx, r15
call qword [0x1402f5008]
cmp byte [rsp + 0x88], 0
mov rcx, qword [r15]
jne 0x1401a78a7
mov byte [rsp + 0x88], 1
mov qword [rsp + 0x80], rcx
mov rax, qword [rsi + 0xb0]
jmp 0x1401a78d3
mov r14, r9
mov rbx, r8
mov rdi, rdx
cmp byte [rsp + 0x88], 0
je 0x1401a787a
mov rcx, qword [rsp + 0x80]
cmp rax, rcx
mov rdx, rdi
mov r8, rbx
mov r9, r14
jg 0x1401a72db
mov rax, qword [rsi + 8]
add rsi, 8
mov rax, qword [rax + 0x10]
mov rcx, rsi
call qword [0x1402f5008]
mov r9, r14
mov r8, rbx
mov rdx, rdi
jmp 0x1401a72f7
lea rax, str.back___called_on_an_empty_vector
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, str._empty__
mov r8d, 0x278
call fcn.140207060
lea r15, [rsp + 0x80]
mov rcx, r15
mov rbx, rdx
mov r14, r8
mov r12, r9
call fcn.140252b10
mov r9, r12
mov r8, r14
mov rdx, rbx
mov byte [r15 + 0x20], 0
jmp 0x1401a727a
mov rcx, qword [0x1402e5bf8]
mov r14, rdx
mov r15, r8
mov r12, r9
call fcn.1402481a0
mov r9, r12
mov r8, r15
mov rdx, r14
jmp 0x1401a7207
cmp byte [rsi + 0x140], 0
je 0x1401a7235
mov r15, r9
mov r13, r8
mov r12, rdx
cmp qword [rbx + 0x18], 0
jne 0x1401a79b3
lock or qword [rbx + 0x10], r14
mov rdx, r12
mov r8, r13
mov r9, r15
jmp 0x1401a7235
lea rcx, [rbx + 0x18]
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x50], rax
call fcn.140206550
movabs rcx, 0xff00000000000000
and rcx, qword [rsp + 0x50]
or rcx, rax
mov qword [rbx + 0x10], rcx
jmp 0x1401a79a0
mov rax, r15
add rax, 0xffffffffffffff56
xor ecx, ecx
mov qword [rsp + 0x78], rcx
xor ebx, ebx
mov qword [rsp + 0x68], r15
mov r14d, 0xaaaaaaaa
mov dword [rsp + 0x74], 0xaaaaaaaa
jmp 0x1401a7a4d
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x50], rdx
mov rcx, qword [r13 + 0x248]
mov rax, qword [rcx + 0x10]
xor r14d, r14d
cmp rax, qword [rcx + 0x18]
je 0x1401a79dd
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov qword [rsp + 0x68], rdx
mov eax, dword [rax + 0x14]
mov dword [rsp + 0x74], eax
movzx ebx, cl
mov rax, rcx
and rax, 0xffffffffffffff00
mov cl, 1
mov qword [rsp + 0x78], rcx
or rbx, rax
mov rcx, qword [r13 + 0x28]
mov rax, qword [rcx]
mov rax, qword [rax + 0x50]
call qword [0x1402f5008]
lea rdx, [rsp + 0xa8]
mov qword [rdx], rbx
mov rcx, qword [rsp + 0x68]
mov qword [rdx + 8], rcx
mov dword [rdx + 0x10], r14d
mov ecx, dword [rsp + 0x74]
mov dword [rdx + 0x14], ecx
mov rcx, qword [rsp + 0x78]
mov byte [rdx + 0x18], cl
mov ecx, 0xaaaaaaaa
mov dword [rdx + 0x19], ecx
mov dword [rdx + 0x1c], ecx
mov rcx, qword [r12]
mov r9, qword [rcx + 0x10]
mov rcx, r12
mov r8d, eax
mov rax, r9
call qword [0x1402f5008]
test al, al
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
je 0x1401a71a3
mov rcx, qword [rsi + 0x150]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x1402f5008]
mov r9, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x50]
jmp 0x1401a72f7
lea rcx, [rbx + 0x18]
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x50], rax
mov r12, rdx
mov r13, r8
mov r15, r9
call fcn.140206550
mov r9, r15
mov r8, r13
mov rdx, r12
movabs rcx, 0xff00000000000000
and rcx, qword [rsp + 0x50]
or rcx, rax
mov qword [rbx + 0x10], rcx
jmp 0x1401a7226
lea rcx, [rbx + 0x18]
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x50], rax
mov r13, rdx
mov r12, r8
mov qword [rsp + 0x58], r9
call fcn.140206550
mov r9, qword [rsp + 0x58]
mov r8, r12
mov rdx, r13
movabs rcx, 0xff00000000000000
and rcx, qword [rsp + 0x50]
or rcx, rax
mov qword [rbx + 0x10], rcx
jmp 0x1401a7247
lea rdi, [rsp + 0xa8]
mov rcx, rdi
call fcn.1401c9410
call sub.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 rdi, [0x1402d9860]
lea rbx, str.SequenceManager::DoIdleWork
mov cl, 0x58
mov rdx, rdi
mov r8, rbx
xor r9d, r9d
call fcn.1402331d0
mov r8, rbx
mov rdx, rdi
mov r9, rax
jmp 0x1401a714a
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
je 0x1401a71b1
mov rcx, qword [rsp + 0x50]
mov rbx, rdx
mov rdx, qword [rsp + 0x68]
mov r14, r8
mov r8, r15
mov r15, r9
call fcn.1402332a0
mov r9, r15
mov r8, r14
mov rdx, rbx
jmp 0x1401a71b1
int3