Function at 0x140199300
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, 0x1b8
movaps xmmword [rsp + 0x1a0], xmm7
movaps xmmword [rsp + 0x190], xmm6
mov rbp, r8
mov qword [rsp + 0x58], rdx
mov r12, rcx
mov rax, qword [0x1402cb038]
xor rax, rsp
mov qword [rsp + 0x188], rax
mov r15, qword [rcx + 0x30]
xorps xmm6, xmm6
movaps xmmword [rsp + 0x90], xmm6
mov qword [rsp + 0xa0], 0
mov rax, qword [0x1402cbde0]
and rax, r15
mov rbx, r15
cmp rax, qword [0x1402cbdc8]
je 0x14019b45b
movabs rsi, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xa8], r15
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
mov byte [rsp + 0xf0], 0
add rbx, 0x28
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14019a6a4
mov r15, qword [r12 + 0x30]
mov rax, qword [r15]
mov rax, qword [rax + 0x38]
lea rcx, [fcn.14019db00]
cmp rax, rcx
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], rbp
jne 0x14019a201
cmp qword [r15 + 0x120], 0
je 0x1401995fe
cmp byte [r15 + 0x180], 0
jne 0x1401995fe
mov rdi, qword [r15 + 0x58]
mov r14, qword [r15 + 0x138]
test rdi, rdi
jne 0x14019a1b3
xor edi, edi
add rdi, r14
mov rax, qword [r15 + 0x128]
cmp rax, rdi
cmovb rdi, rax
mov r14, qword [r15 + 0x138]
cmp rdi, r14
cmovbe rdi, r14
mov r13, qword [r15 + 0x68]
mov r12, qword [r15 + 0x130]
add r13, qword [r15 + 0x60]
je 0x140199fff
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x140199fff
mov rax, qword [r15 + 0x40]
cmp rax, qword [r15 + 0x48]
je 0x14019b419
movzx ecx, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x1401994a3
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402f5008]
lea rcx, [rax + r13]
dec rcx
add r13, rax
cmp rcx, 1
adc r13, 0xffffffffffffffff
sub r12, r14
add r12, rdi
add r12, r13
mov r13, qword [r15 + 0x100]
mov rax, qword [r15 + 0x120]
cmp rax, r12
cmovb r12, rax
cmp r12, 0x100
mov edi, 0x100
cmovb rdi, r12
sub r13, qword [r15 + 0xf8]
sar r13, 3
sub r13, qword [r15 + 0x158]
cmp rdi, r13
ja 0x14019a0b2
cmp rdi, r13
mov rbp, qword [rsp + 0x50]
jne 0x14019951a
mov rax, qword [r15 + 0x100]
sub rax, qword [r15 + 0xf8]
cmp rax, 0x800
je 0x14019951a
cmp qword [r15 + 0x158], 0
je 0x14019ad71
mov rax, qword [r15 + 0x40]
cmp rax, qword [r15 + 0x48]
je 0x140199538
mov rcx, qword [r15 + 0x130]
cmp rcx, qword [r15 + 0x120]
jae 0x14019a663
mov word [r15 + 0x78], 0
mov r12, qword [rsp + 0x48]
cmp byte [r15 + 0x168], 0
jne 0x1401995fe
mov rdi, qword [r15 + 0x58]
mov rsi, qword [r15 + 0x138]
test rdi, rdi
jne 0x14019a217
xor edi, edi
add rdi, rsi
cmp rdi, qword [r15 + 0x128]
ja 0x14019a671
mov rdi, qword [r15 + 0x58]
mov rsi, qword [r15 + 0x130]
test rdi, rdi
jne 0x14019a265
xor edi, edi
mov r14, qword [r15 + 0x68]
add r14, qword [r15 + 0x60]
je 0x140199845
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x140199845
mov rax, qword [r15 + 0x40]
cmp rax, qword [r15 + 0x48]
je 0x14019b419
movzx ecx, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x1401995e7
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402f5008]
lea rcx, [r14 + rax]
dec rcx
add r14, rax
cmp rcx, 1
adc r14, 0xffffffffffffffff
add rsi, rdi
lea rax, [r14 + rsi]
inc rax
cmp rax, qword [r15 + 0x120]
ja 0x14019a681
mov rax, qword [rsp + 0xb0]
or rax, qword [rsp + 0xd0]
jne 0x14019afd3
mov rax, qword [r12 + 0x30]
cmp qword [rax + 0x158], 0
je 0x14019a1ac
mov rax, qword [rax + 0x148]
mov rax, qword [rax + 0x20]
cmp rax, rbp
je 0x14019b1d4
lea r15, [rbp + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14019b445
mov rsi, qword [rbp + 0x30]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rsi, rsi
jne 0x14019b1d4
mov rcx, qword [r12 + 0x30]
mov rax, qword [rcx + 0x100]
sub rax, qword [rcx + 0xf8]
sar rax, 3
sub rax, qword [rcx + 0x158]
cmp rax, qword [rcx + 0x120]
ja 0x14019b166
xorps xmm6, xmm6
lea r15, [0x14029f188]
movaps xmm7, xmmword [0x14029ca60]
mov r13, qword [r12 + 0x30]
mov rax, qword [r13 + 0x40]
cmp rax, qword [r13 + 0x48]
je 0x140199890
movzx r14d, byte [rax + 0x10]
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x14019987d
mov r13, qword [r12 + 0x30]
test r14b, r14b
je 0x14019a924
mov rax, qword [r13 + 0x40]
cmp rax, qword [r13 + 0x48]
je 0x14019b419
lea rdi, [r13 + 0x38]
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
call qword [0x1402f5008]
cmp eax, 2
jne 0x14019a732
mov rax, qword [r13 + 0x40]
cmp rax, qword [r13 + 0x48]
je 0x14019b419
movzx ecx, byte [rax + 0x10]
cmp rcx, 3
jae 0x14019b4ec
dec qword [r13 + rcx*8 + 0x58]
mov rcx, qword [rax]
mov qword [rcx + 0x20], 0xffffffffffffffff
mov rcx, qword [rax]
mov qword [rsp + 0x80], rcx
mov rcx, qword [rax + 8]
movups xmmword [rax], xmm6
mov qword [rsp + 0x88], rcx
mov rcx, qword [r13 + 0x40]
mov rax, qword [r13 + 0x48]
mov rdx, rax
sub rdx, rcx
je 0x14019b4c0
mov r8, qword [rcx]
test r8, r8
jne 0x14019984d
sar rdx, 5
dec rdx
jne 0x14019a376
cmp rcx, rax
je 0x14019b494
mov rsi, rax
add rsi, 0xffffffffffffffe0
je 0x14019a95a
mov rbp, qword [rsi]
test rbp, rbp
jne 0x14019ab2f
mov qword [rsi], 0
test rbp, rbp
jne 0x14019ab56
mov rcx, qword [rsi]
test rcx, rcx
jne 0x14019b46d
mov qword [r13 + 0x48], rsi
mov rbp, qword [rsp + 0x50]
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x1401996a2
mov rcx, qword [rsp + 0x88]
mov rdx, qword [r12 + 0x30]
mov r8, qword [rdx + 0x130]
inc r8
mov qword [rdx + 0x130], r8
test r14b, r14b
je 0x14019a918
mov r9, qword [rdx + 0x40]
cmp r9, qword [rdx + 0x48]
mov r15, qword [rsp + 0x58]
je 0x140199810
cmp r8, qword [rdx + 0x120]
jae 0x14019a93d
mov word [rdx + 0x78], 0
movzx edx, r14w
mov r8d, 0x100
or edx, r8d
mov word [r12 + 0x20], dx
movzx edx, byte [rax + 0xd]
and edx, 0x7f
or edx, r8d
mov word [r12 + 0x22], dx
mov qword [r15], rax
mov qword [r15 + 8], rcx
jmp 0x140199af5
xor r14d, r14d
jmp 0x1401995e7
mov qword [r8 + 0x20], 0xffffffffffffffff
mov rcx, qword [r13 + 0x40]
mov rax, qword [r13 + 0x48]
mov rdx, rax
sub rdx, rcx
jmp 0x140199768
jbe 0x14019b453
mov rcx, qword [rdi + 8]
test rcx, rcx
jne 0x1401998b7
lea r14, [rdi + 8]
jmp 0x1401998d5
mov r13, qword [r12 + 0x30]
test r14b, r14b
je 0x140199890
cmp eax, 1
je 0x1401996d7
mov rsi, qword [r13 + 0x148]
mov rcx, qword [r13 + 0x150]
lea r15, [r13 + 0x150]
mov r14, r15
mov rdi, r15
test rcx, rcx
je 0x1401998d5
mov rax, qword [rbp + 0x80]
mov rdi, rcx
mov rcx, qword [rcx + 0x20]
mov rcx, qword [rcx + 0x80]
cmp rax, rcx
jae 0x140199868
mov rcx, qword [rdi]
mov r14, rdi
test rcx, rcx
jne 0x1401998b7
mov ecx, 0x28
call fcn.1401cbbc4
cmp rax, 0xffffffffffffffe0
je 0x14019a007
mov qword [rax + 0x20], rbp
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rdi
mov qword [r14], rax
mov rcx, qword [r13 + 0x148]
mov rcx, qword [rcx]
test rcx, rcx
je 0x140199913
mov qword [r13 + 0x148], rcx
mov rax, qword [r14]
mov r8, qword [r15]
cmp rax, r8
sete byte [rax + 0x18]
je 0x140199a38
mov r9b, 1
mov rdx, qword [rax + 0x10]
cmp byte [rdx + 0x18], 0
jne 0x140199a38
mov rcx, qword [rdx + 0x10]
mov r10, qword [rcx]
cmp r10, rdx
je 0x140199970
test r10, r10
je 0x1401999f3
cmp byte [r10 + 0x18], 0
jne 0x1401999f3
add r10, 0x18
mov byte [rdx + 0x18], r9b
mov rax, rcx
cmp rcx, r8
sete byte [rcx + 0x18]
mov byte [r10], r9b
jne 0x140199926
jmp 0x140199a38
mov r10, qword [rcx + 8]
test r10, r10
je 0x140199980
cmp byte [r10 + 0x18], 0
je 0x140199954
cmp qword [rdx], rax
je 0x140199d15
mov rax, qword [rdx + 8]
mov r8, qword [rax]
mov qword [rdx + 8], r8
test r8, r8
jne 0x140199d26
mov qword [rax + 0x10], rcx
mov rcx, qword [rdx + 0x10]
cmp qword [rcx], rdx
jne 0x14019b55a
mov qword [rcx], rax
mov qword [rax], rdx
mov qword [rdx + 0x10], rax
mov rcx, qword [rax + 0x10]
mov byte [rax + 0x18], 1
mov byte [rcx + 0x18], 0
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov qword [rcx], rdx
test rdx, rdx
jne 0x140199d1d
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
xor r8d, r8d
cmp qword [rdx], rcx
setne r8b
mov qword [rdx + r8*8], rax
mov qword [rax + 8], rcx
jmp 0x140199a34
cmp qword [rdx], rax
je 0x140199ce2
mov rax, rdx
mov byte [rax + 0x18], 1
mov byte [rcx + 0x18], 0
mov rax, qword [rcx + 8]
mov rdx, qword [rax]
mov qword [rcx + 8], rdx
test rdx, rdx
je 0x140199a1b
mov qword [rdx + 0x10], rcx
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
xor r8d, r8d
cmp qword [rdx], rcx
setne r8b
mov qword [rdx + r8*8], rax
mov qword [rax], rcx
mov qword [rcx + 0x10], rax
inc qword [r13 + 0x158]
mov rax, qword [r13 + 0x148]
cmp qword [rax + 0x20], rbp
jne 0x140199a59
cmp rsi, r15
je 0x140199ad7
mov rbp, qword [rsi + 0x20]
lea r15, [rbp + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14019b486
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x140199c66
mov qword [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x160]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14019b51e
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rbp + 0x30], rax
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r12 + 0x30]
mov rcx, qword [rax + 0x160]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
xorps xmm0, xmm0
mov r15, qword [rsp + 0x58]
movups xmmword [r15], xmm0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rsi, qword [rsp + 0xb0]
test rsi, rsi
jne 0x140199bec
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
jne 0x140199ddd
cmp byte [rsp + 0xf0], 0
jne 0x140199e54
mov rsi, qword [rsp + 0xd8]
test rsi, rsi
jne 0x140199d88
mov rdi, qword [rsp + 0xd0]
test rdi, rdi
jne 0x140199e45
mov rsi, qword [rsp + 0xb8]
test rsi, rsi
jne 0x140199d33
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
jne 0x140199be1
mov rcx, qword [rsp + 0xa8]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14019b3e5
mov qword [rsp + 0xa8], 0
mov rsi, qword [rsp + 0x90]
test rsi, rsi
jne 0x140199c85
mov rcx, qword [rsp + 0x188]
xor rcx, rsp
call fcn.1401ce5b0
mov rax, r15
movaps xmm6, xmmword [rsp + 0x190]
movaps xmm7, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lock dec dword [rdi + 8]
jne 0x140199b6e
jmp 0x14019b545
test byte [0x1402d99f0], 0x19
jne 0x14019b563
lea r14, [rsi + 0x38]
cmp byte [rsi + 0x40], 0
je 0x140199cc6
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rsi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
cmp rsi, rbx
je 0x140199b0f
mov rdi, qword [rsi]
test rdi, rdi
je 0x14019b6f0
mov eax, 1
lock xadd dword [rdi + 8], eax
cmp eax, 0x7fffffff
je 0x14019b51b
lea r14, [rdi + 8]
mov rcx, rdi
call fcn.14019c220
lock dec dword [r14]
je 0x14019b6fc
add rsi, 8
jmp 0x140199c20
lea r12, [rsp + 0x160]
mov rcx, r12
call qword [0x1402f5008]
mov rax, qword [r12]
mov r12, qword [rsp + 0x48]
jmp 0x140199aca
mov rdi, qword [rsp + 0x98]
mov rcx, rsi
cmp rdi, rsi
je 0x140199cb4
add rdi, 0xfffffffffffffff0
je 0x14019a95a
mov rcx, rdi
call fcn.140171db0
cmp rdi, rsi
jne 0x140199c95
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x98], rsi
call fcn.1401cbbbc
jmp 0x140199baa
test byte [0x1402d99f0], 0x19
je 0x140199c07
jmp 0x14019b62a
mov qword [r8 + 0x10], rdx
mov rcx, qword [rdx + 0x10]
jmp 0x140199cee
mov r8, qword [rax + 8]
mov qword [rdx], r8
test r8, r8
jne 0x140199cd8
mov qword [rax + 0x10], rcx
mov rcx, qword [rdx + 0x10]
xor r8d, r8d
cmp qword [rcx], rdx
setne r8b
mov qword [rcx + r8*8], rax
mov qword [rax + 8], rdx
mov qword [rdx + 0x10], rax
mov rcx, qword [rax + 0x10]
jmp 0x1401999ff
mov rax, rdx
jmp 0x1401999bc
mov qword [rdx + 0x10], rcx
jmp 0x1401999d7
mov qword [r8 + 0x10], rdx
mov rcx, qword [rdx + 0x10]
jmp 0x14019999d
mov rbx, qword [rsp + 0xc0]
mov rcx, rsi
cmp rbx, rsi
je 0x140199d76
add rbx, 0xfffffffffffffff8
test rbx, rbx
je 0x14019a95a
mov rdi, qword [rbx]
test rdi, rdi
je 0x140199d62
lock dec dword [rdi + 8]
je 0x140199fbd
lea rax, [rbx - 8]
cmp rbx, rsi
mov rbx, rax
jne 0x140199d47
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0xc0], rsi
call fcn.1401cbbbc
jmp 0x140199b61
mov rbx, qword [rsp + 0xe0]
mov rcx, rsi
cmp rbx, rsi
je 0x140199dcb
add rbx, 0xfffffffffffffff8
test rbx, rbx
je 0x14019a95a
mov rdi, qword [rbx]
test rdi, rdi
je 0x140199db7
lock dec dword [rdi + 8]
je 0x140199fa8
lea rax, [rbx - 8]
cmp rbx, rsi
mov rbx, rax
jne 0x140199d9c
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0xe0], rsi
call fcn.1401cbbbc
jmp 0x140199b3f
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rax + 0xa0]
mov r8, qword [rax + 0xa8]
test rdx, rdx
je 0x140199e0d
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x14019b711
call fcn.14001cb00
mov rcx, qword [rsp + 0xa8]
cmp byte [rcx + 0x198], 0
jne 0x140199f97
mov rsi, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xe0]
cmp rsi, rbx
je 0x140199b20
jmp 0x140199f12
lock dec dword [rdi + 8]
jne 0x140199b50
jmp 0x14019b714
mov r14, qword [rsp + 0xa8]
mov rbx, qword [r14 + 0xa0]
mov rdi, qword [r14 + 0xb8]
mov rax, qword [0x1402cbde0]
and rax, r14
cmp rax, qword [0x1402cbdc8]
je 0x140199fd2
mov ecx, 0x30
call fcn.1401cbbc4
mov dword [rax], 1
lea rcx, [0x14005ddc0]
mov qword [rax + 8], rcx
lea rcx, [0x1400099e0]
mov qword [rax + 0x10], rcx
lea rcx, [0x1401ca7d0]
mov qword [rax + 0x18], rcx
lea rcx, [0x140050050]
mov qword [rax + 0x20], rcx
mov qword [rax + 0x28], r14
lea r14, [rsp + 0x110]
mov qword [r14], rax
lea rdx, str.ScheduleAdjustMaxTasks
lea r8, str.thread_group_impl.cc
lea r15, [rsp + 0x160]
mov rcx, r15
mov r9d, 0x473
call fcn.140158eb0
mov rax, qword [rbx]
mov rax, qword [rax]
mov rcx, rbx
mov rdx, r15
mov r8, r14
mov r9, rdi
call qword [0x1402f5008]
mov r15, qword [rsp + 0x58]
jmp 0x140199b2e
mov r15, qword [rsp + 0x58]
mov rdi, qword [rsi]
test rdi, rdi
je 0x140199f34
mov eax, 1
lock xadd dword [rdi + 8], eax
cmp eax, 0x7fffffff
je 0x14019b75b
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rax + 0xa0]
mov r8, qword [rax + 0xa8]
test rdx, rdx
je 0x140199f64
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x14019b75e
mov rcx, rdi
call fcn.14001cb00
mov rcx, qword [rsp + 0xa8]
cmp byte [rcx + 0x198], 0
jne 0x140199fdf
test rdi, rdi
je 0x140199f88
lock dec dword [rdi + 8]
je 0x140199fed
add rsi, 8
cmp rsi, rbx
je 0x140199b20
jmp 0x140199f17
add rcx, 0x188
call fcn.1401a7c10
jmp 0x140199e27
mov rcx, rdi
call fcn.140005b00
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x140199db7
mov rcx, rdi
call fcn.140005b00
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x140199d62
mov rcx, r14
call fcn.1401508a0
jmp 0x140199e81
add rcx, 0x188
call fcn.1401a7c10
jmp 0x140199f7d
mov rcx, rdi
call fcn.140005b00
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x140199f88
xor r13d, r13d
jmp 0x1401994a3
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.140207060
call fcn.140005b00
mov rcx, qword [rsp + 0x40]
call fcn.1401cbbbc
jmp 0x14019a0e7
test rcx, rcx
je 0x14019a007
mov qword [rcx], rax
add rcx, 8
mov qword [rsp + 0xc0], rcx
jmp 0x14019a125
sar rax, 3
cmp rax, qword [r15 + 0x120]
jae 0x14019a0e7
lea rdx, [rsp + 0x160]
mov qword [rdx], rsi
lea r8, [rsp + 0x90]
mov rcx, r15
call fcn.14001ccd0
lea rax, [rsp + 0x160]
mov rdx, qword [rax]
mov qword [rsp + 0x40], rdx
mov rcx, r12
call fcn.14019cde0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x14019a0e7
lock dec dword [rcx + 8]
jne 0x14019a0e7
jmp 0x14019a033
lea r12, [r15 + 0x148]
xor ebp, ebp
lea r14, [rsp + 0xb8]
mov rax, qword [r15 + 0x100]
sub rax, qword [r15 + 0xf8]
cmp rax, 0x800
je 0x14019a0e7
cmp qword [r15 + 0x158], 0
je 0x14019a060
mov rcx, r12
call fcn.14019b880
test rax, rax
je 0x14019a125
mov ecx, 1
lock xadd dword [rax + 8], ecx
cmp ecx, 0x7fffffff
je 0x14019b518
mov qword [rsp + 0x160], rax
cmp qword [rsp + 0xb0], 0
jne 0x14019a152
mov qword [rsp + 0xb0], rax
mov rax, rdi
sub rax, r13
mov ecx, 0
cmovae rcx, rax
xor eax, eax
cmp rcx, 2
setae al
lea rcx, [rbp + 1]
cmp rbp, rax
mov rbp, rcx
je 0x1401994ec
jmp 0x14019a0c3
mov rcx, qword [rsp + 0xc0]
cmp rcx, qword [rsp + 0xc8]
jb 0x14019a047
mov rcx, r14
lea rdx, [rsp + 0x160]
call fcn.14001c990
mov rcx, qword [rsp + 0x160]
mov qword [rsp + 0xc0], rax
test rcx, rcx
je 0x14019a125
lock dec dword [rcx + 8]
jne 0x14019a125
mov qword [rsp + 0x40], rcx
call fcn.140005b00
mov rcx, qword [rsp + 0x40]
call fcn.1401cbbbc
jmp 0x14019a125
xor eax, eax
jmp 0x140199632
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x140199422
mov rax, qword [r15 + 0x40]
cmp rax, qword [r15 + 0x48]
je 0x14019b419
cmp byte [rax + 0x10], 0
jne 0x140199424
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402f5008]
lea rcx, [rdi + rax]
dec rcx
add rdi, rax
cmp rcx, 1
adc rdi, 0xffffffffffffffff
jmp 0x140199424
lea rdx, [rsp + 0x90]
mov rcx, r15
call qword [0x1402f5008]
jmp 0x1401995fe
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x140199566
mov rax, qword [r15 + 0x40]
cmp rax, qword [r15 + 0x48]
je 0x14019b419
cmp byte [rax + 0x10], 0
jne 0x140199568
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402f5008]
lea rcx, [rdi + rax]
dec rcx
add rdi, rax
cmp rcx, 1
adc rdi, 0xffffffffffffffff
jmp 0x140199568
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x14019958c
mov rax, qword [r15 + 0x40]
cmp rax, qword [r15 + 0x48]
je 0x14019b419
cmp byte [rax + 0x10], 0
jne 0x14019958e
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402f5008]
lea rcx, [rdi + rax]
dec rcx
add rdi, rax
cmp rcx, 1
adc rdi, 0xffffffffffffffff
jmp 0x14019958e
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x14019a4a9
mov qword [r14], 0
lea rdx, [rsp + 0x160]
mov rsi, r10
mov r15, r11
call fcn.14001fa30
mov r11, r15
mov r10, rsi
mov r8, qword [rsp + 0x160]
jmp 0x14019a4b8
lock dec dword [r8 + 8]
jne 0x14019a4c1
mov rcx, r8
mov edx, 1
mov rsi, r10
mov r15, r11
call fcn.1401a4330
mov r11, r15
mov r10, rsi
jmp 0x14019a4c1
lock dec dword [rcx + 8]
jne 0x14019a4e5
mov edx, 1
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x78], r11
call fcn.1401a4330
mov r11, qword [rsp + 0x78]
mov r10, qword [rsp + 0x70]
jmp 0x14019a4e5
xor ebx, ebx
jmp 0x14019a580
mov qword [rdx + 0x20], 0xffffffffffffffff
mov rcx, qword [r13 + 0x40]
mov rax, qword [r13 + 0x48]
jmp 0x14019a38c
seta r9b
jmp 0x14019a460
setb r9b
jmp 0x14019a460
mov rbx, rcx
jmp 0x14019a471
cmp rax, rcx
je 0x14019b4c0
shl rdx, 5
mov rdx, qword [rcx + rdx]
test rdx, rdx
jne 0x14019a34a
cmp rax, rcx
je 0x14019b4c0
mov qword [rsp + 0x68], rbx
mov rcx, qword [rax - 0x20]
mov qword [rsp + 0x110], rcx
mov rcx, qword [rax - 0x18]
movups xmmword [rax - 0x20], xmm6
mov qword [rsp + 0x118], rcx
movups xmm0, xmmword [rax - 0x10]
movups xmmword [rsp + 0x120], xmm0
mov r10, qword [r13 + 0x48]
sub r10, qword [r13 + 0x40]
sar r10, 5
dec r10
cmp r10, 2
jb 0x14019a343
lea r11, [r13 + 0x40]
mov ecx, 1
xor edx, edx
xor ebp, ebp
mov qword [rsp + 0x40], rdi
add rdx, 2
mov rdi, qword [r13 + 0x40]
mov rax, qword [r13 + 0x48]
mov r8, rax
sub r8, rdi
sar r8, 5
cmp rdx, r10
jae 0x14019a36e
cmp r8, rdx
jbe 0x14019b4c0
cmp r8, rcx
jbe 0x14019b4c0
mov rbx, r11
mov rsi, r10
mov r9, rcx
shl r9, 5
mov r10, rdx
shl r10, 5
mov r11b, byte [rdi + r10 + 0x10]
cmp byte [rdi + r9 + 0x10], r11b
jne 0x14019a365
mov r11b, byte [rdi + r10 + 0x11]
cmp byte [rdi + r9 + 0x11], r11b
jne 0x14019a35c
mov r9, qword [rdi + r9 + 0x18]
cmp r9, qword [rdi + r10 + 0x18]
setg r9b
mov r10, rsi
mov r11, rbx
test r9b, r9b
jne 0x14019a46e
mov rdx, rcx
mov rbx, rdx
cmp r8, rbp
je 0x14019a5e5
cmp r8, rbx
jbe 0x14019b4c0
mov dword [rsp + 0x64], r14d
cmp r8, rbp
jbe 0x14019b4c0
mov r12, rbp
shl r12, 5
lea r14, [rdi + r12]
mov r8, qword [rdi + r12]
test r8, r8
jne 0x14019a2b3
mov qword [rsp + 0x160], r8
mov qword [r14], 0
test r8, r8
jne 0x14019a2ed
mov r15, rbx
shl r15, 5
lea rsi, [rdi + r15]
mov rax, qword [rsi]
mov qword [rsi], 0
mov rcx, qword [r14]
mov qword [r14], rax
test rcx, rcx
jne 0x14019a316
mov rax, qword [rsi + 8]
mov qword [rsi + 8], 0
mov qword [r14 + 8], rax
movups xmm0, xmmword [rdi + r15 + 0x10]
movups xmmword [rdi + r12 + 0x10], xmm0
mov rax, qword [r13 + 0x48]
mov r12, qword [rsp + 0x48]
mov r14d, dword [rsp + 0x64]
lea r15, [0x14029f188]
mov rdi, qword [rsp + 0x40]
mov rcx, qword [r11]
sub rax, rcx
sar rax, 5
cmp rax, rbp
jbe 0x14019b4c0
mov rax, rbp
shl rax, 5
mov rcx, qword [rcx + rax]
mov qword [rcx + 0x20], rbp
mov rcx, qword [r13 + 0x40]
mov rdx, qword [r13 + 0x48]
sub rdx, rcx
sar rdx, 5
cmp rdx, rbp
jbe 0x14019b4c0
cmp qword [rcx + rax], 0
je 0x14019a645
lea rdx, [rbx + rbx]
lea rcx, [rbx*2 + 1]
mov rbp, rbx
cmp rcx, r10
jb 0x14019a3ed
mov rcx, qword [rsp + 0x118]
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x160], rax
movaps xmmword [rsp + 0x110], xmm6
mov qword [rsp + 0x168], rcx
lea rax, [rsp + 0x120]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x170], xmm0
mov rcx, rdi
mov rdx, rbx
lea r8, [rsp + 0x160]
call fcn.14019bd30
lea rcx, [rsp + 0x110]
call fcn.140171db0
mov rcx, qword [r13 + 0x40]
mov rax, qword [r13 + 0x48]
mov rbx, qword [rsp + 0x68]
jmp 0x140199775
cmp rbp, rbx
jbe 0x14019b4c0
mov rcx, rbx
shl rcx, 5
lea rdx, [rdi + rcx]
cmp rax, qword [r13 + 0x50]
jae 0x14019a62f
test rax, rax
je 0x14019a007
mov r8, qword [rdx]
mov qword [rax], r8
mov r8, qword [rdx + 8]
movups xmmword [rdx], xmm6
mov qword [rax + 8], r8
movups xmm0, xmmword [rdi + rcx + 0x10]
movups xmmword [rax + 0x10], xmm0
add rax, 0x20
mov qword [r13 + 0x48], rax
jmp 0x14019a516
mov rcx, r11
mov rsi, r10
mov rdi, r11
call fcn.14001edb0
mov r11, rdi
mov r10, rsi
jmp 0x14019a626
lea rcx, [rsp + 0x160]
mov rsi, r10
mov rbp, r11
call fcn.1401cbbb0
mov r11, rbp
mov r10, rsi
jmp 0x14019a560
movzx eax, word [rax + 0x10]
mov word [r15 + 0x78], ax
jmp 0x14019953f
cmp dword [r15 + 0x144], 0
jle 0x140199578
jmp 0x14019a68f
cmp dword [r15 + 0x140], 0
jle 0x1401995fe
mov al, 1
mov byte [rsp + 0xf0], al
mov byte [r15 + 0x168], al
jmp 0x1401995fe
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401993cc
mov rcx, qword [rsp + 0x118]
test rcx, rcx
je 0x14019a800
mov qword [rsp + 0x110], 0
lea rdx, [rsp + 0x80]
call fcn.14001fa30
mov r8, qword [rsp + 0x80]
jmp 0x14019a814
lock dec dword [rcx + 8]
jne 0x14019a7d7
mov edx, 1
call fcn.1401a4330
jmp 0x14019a7d7
mov rcx, rdi
lea rsi, [rsp + 0x140]
mov rdx, rsi
call fcn.14019c400
lea rcx, [rsp + 0x90]
mov rdx, rsi
call fcn.14001c030
movaps xmmword [rsp + 0x80], xmm6
jmp 0x1401997bc
test eax, eax
je 0x14019a702
movaps xmmword [rsp + 0x110], xmm7
mov rax, qword [r13 + 0x40]
cmp rax, qword [r13 + 0x48]
je 0x14019b419
mov rcx, qword [r13 + 8]
mov r8, qword [rax]
test r8, r8
je 0x14019a76e
mov eax, 1
lock xadd dword [r8 + 8], eax
cmp eax, 0x7fffffff
je 0x14019b3ef
lea rdx, [rsp + 0x110]
call fcn.14019b7e0
cmp qword [rsp + 0x110], 0
je 0x14019a8d0
mov rsi, qword [r13 + 0x40]
cmp rsi, qword [r13 + 0x48]
je 0x14019b419
mov rax, qword [rsi]
mov qword [rsp + 0x160], rax
mov rax, qword [rsi + 8]
xor ecx, ecx
mov qword [rsi + 8], rcx
mov qword [rsp + 0x168], rax
mov qword [rsi], rcx
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x110], rcx
mov rcx, qword [rsi]
mov qword [rsi], rax
test rcx, rcx
jne 0x14019a6e9
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x118], 0
mov qword [rsi + 8], rax
mov r8, qword [rsp + 0x110]
test r8, r8
jne 0x14019a6b2
mov qword [rsp + 0x80], r8
mov qword [rsp + 0x110], 0
test r8, r8
jne 0x14019a8fb
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x160], 0
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0x110], rax
test rcx, rcx
jne 0x14019a8e2
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x118], rax
lea rcx, [rsp + 0x160]
call fcn.140171db0
mov rcx, qword [rsp + 0x110]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
lea rsi, [rsp + 0x100]
mov rdx, rsi
call qword [0x1402f5008]
mov rdx, qword [rsp + 0x110]
mov rcx, rdi
mov r8, rsi
call fcn.14001c210
movaps xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x110], xmm6
lea rcx, [rsp + 0x110]
call fcn.140171db0
jmp 0x1401997bc
mov rcx, rdi
lea rdx, [rsp + 0x80]
call fcn.14019c400
jmp 0x14019a8be
lock dec dword [rcx + 8]
jne 0x14019a84a
mov edx, 1
call fcn.1401a4330
jmp 0x14019a84a
lock dec dword [r8 + 8]
jne 0x14019a81d
mov rcx, r8
mov edx, 1
call fcn.1401a4330
jmp 0x14019a81d
inc qword [rdx + 0x138]
jmp 0x1401997f4
mov rax, qword [r13 + 0x138]
cmp rax, qword [r13 + 0x128]
jb 0x1401996d7
jmp 0x140199890
movzx r8d, word [r9 + 0x10]
mov word [rdx + 0x78], r8w
jmp 0x140199816
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14019aaa4
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.140207060
mov r15d, r14d
mov r14, qword [rbp + 0x50]
jbe 0x14019a9d4
cmp r14, rdi
jb 0x14019b3fe
cmp rax, rdi
jg 0x14019b401
shl rax, 7
mov r12, qword [rbp + 0x48]
add r12, rax
shl rdi, 7
sub rdi, rax
mov r14d, r15d
lea r15, [0x14029f188]
mov rcx, r12
call fcn.1401ca840
sub r12, 0xffffffffffffff80
add rdi, 0xffffffffffffff80
jne 0x14019a9bd
jmp 0x14019abaa
cmp r14, rax
jb 0x14019b404
jl 0x14019b407
je 0x14019aa0d
shl rax, 7
mov r12, qword [rbp + 0x48]
add r12, rax
shl r14, 7
sub r14, rax
mov rcx, r12
call fcn.1401ca840
sub r12, 0xffffffffffffff80
add r14, 0xffffffffffffff80
jne 0x14019a9f7
mov rax, qword [rbp + 0x50]
cmp rax, rdi
jb 0x14019b40a
test rdi, rdi
js 0x14019b40d
mov r14d, r15d
lea r15, [0x14029f188]
je 0x14019abaa
mov r12, qword [rbp + 0x48]
shl rdi, 7
mov rcx, r12
call fcn.1401ca840
sub r12, 0xffffffffffffff80
add rdi, 0xffffffffffffff80
jne 0x14019aa37
jmp 0x14019abaa
mov qword [rsp + 0x40], rax
add r12, 0xffffffffffffff80
je 0x14019a95a
mov rcx, r12
call fcn.1401ca840
cmp r12, rdi
jne 0x14019aa53
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax]
jmp 0x14019ab8c
mov rdi, rax
mov rcx, rax
call fcn.140254a10
mov rcx, qword [rdi]
call fcn.1401cbbbc
jmp 0x14019ab99
lea r12, [rdi + 0x50]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14019a94c
mov rcx, qword [rdi + 0x58]
call fcn.1401a45b0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r12, qword [rsp + 0x48]
jmp 0x14019ab4c
mov r12, r15
mov r15d, r14d
mov rax, qword [rbp + 0xb0]
mov rcx, rdi
cmp rax, rdi
je 0x14019ab04
mov r14, rax
add r14, 0xffffffffffffffe8
je 0x14019a95a
mov rcx, qword [rax - 0x10]
test rcx, rcx
je 0x14019aaf5
mov rax, qword [rax - 8]
call qword [0x1402f5008]
mov rax, r14
cmp r14, rdi
jne 0x14019aad8
mov rcx, qword [rbp + 0xa8]
mov qword [rbp + 0xb0], rdi
call fcn.1401cbbbc
mov r14d, r15d
mov r15, r12
jmp 0x14019ab74
mov rax, qword [rdi + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x14019ab4c
jmp 0x14019aa8f
mov rdi, qword [rax - 0x18]
test rdi, rdi
je 0x140199797
mov qword [rsi], 0
mov al, byte [rbp + 0xd]
and al, 0x7f
cmp al, 2
je 0x14019ab18
lock dec dword [rdi + 0x18]
je 0x14019abf6
lock dec dword [rbp + 8]
jne 0x1401997a7
mov qword [rbp], r15
mov rdi, qword [rbp + 0xa8]
test rdi, rdi
jne 0x14019aac0
lea rax, [rbp + 0x70]
mov rdi, qword [rbp + 0x70]
mov r12, qword [rbp + 0x78]
mov rdx, rdi
cmp r12, rdi
jne 0x14019aa4e
mov qword [rbp + 0x78], rdi
test rdx, rdx
jne 0x14019aa77
mov rax, qword [rbp + 0x58]
mov rdi, qword [rbp + 0x60]
cmp rdi, rax
jne 0x14019a986
mov rdx, qword [rbp + 0x48]
lea rcx, fcn.140163210
xor r8d, r8d
call fcn.14015e2b0
lea rax, [0x14029f208]
mov qword [rbp], rax
mov rcx, qword [rbp + 0x30]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
jne 0x14019abe4
call fcn.140150dc0
mov rcx, rbp
call fcn.1401cbbbc
mov r12, qword [rsp + 0x48]
jmp 0x1401997a7
lea r12, [rdi + 0x20]
mov rcx, r12
mov r15, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call r15
test al, al
je 0x14019ac98
mov dword [rsp + 0x64], r14d
mov rcx, qword [rdi + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r12
mov r14, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call r14
mov rcx, r12
call r15
test al, al
je 0x14019aca6
mov rax, qword [rdi + 0x30]
mov qword [rsp + 0x40], rax
mov rax, qword [rdi + 0x38]
mov qword [rsp + 0x70], rax
movups xmmword [rdi + 0x30], xmm6
mov r14, qword [rdi + 0x40]
mov r15, qword [rdi + 0x48]
movups xmmword [rdi + 0x40], xmm6
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, r14
mov rax, r15
mov rdi, r14
cmp r14, r15
jne 0x14019acb1
lea rcx, fcn.140163210
mov rdx, qword [rsp + 0x40]
xor r8d, r8d
call fcn.14015e2b0
mov r12, qword [rsp + 0x48]
mov r14d, dword [rsp + 0x64]
lea r15, [0x14029f188]
jmp 0x14019979e
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14019ac0f
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14019ac35
mov qword [rsp + 0x68], rbx
mov r14, rax
mov rax, qword [rsp + 0x70]
cmp rax, rdi
jb 0x14019b3f2
mov r15, rcx
mov r12, rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + rdi*8]
test rcx, rcx
je 0x14019b3f5
mov qword [rsp + 0x160], rcx
xor ebx, ebx
mov rax, qword [rsp + 0x40]
mov qword [rax + rdi*8], rbx
mov rax, qword [rcx + 8]
call qword [0x1402f5008]
lea rcx, [rsp + 0x160]
call fcn.1401ca840
inc rdi
mov rax, r12
cmp rdi, r12
cmove rdi, rbx
mov rax, r14
cmp rdi, r14
mov rbx, qword [rsp + 0x68]
mov rcx, r15
jne 0x14019acb1
cmp rax, rcx
jbe 0x14019b767
cmp r12, r14
jb 0x14019b3f8
cmp r15, r14
jg 0x14019b3fb
mov rax, qword [rsp + 0x40]
lea r12, [rax + r15*8]
shl r14, 3
shl r15, 3
sub r14, r15
mov rbx, qword [rsp + 0x68]
mov rcx, r12
call fcn.1401ca840
add r12, 8
add r14, 0xfffffffffffffff8
jne 0x14019ad5a
jmp 0x14019ac6e
sar rax, 3
cmp rax, qword [r15 + 0x120]
jae 0x14019951a
lea r13, [r15 + 0x148]
lea r12, [rsp + 0x160]
mov qword [r12], rsi
lea r8, [rsp + 0x90]
mov rcx, r15
mov rdx, r12
call fcn.14001ccd0
mov r12, qword [r12]
mov rcx, r13
mov rdx, r12
call fcn.14019cde0
test r12, r12
je 0x14019951a
lock dec dword [r12 + 8]
jne 0x14019951a
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019951a
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019aed0
add rcx, 0x188
call fcn.1401a7c10
jmp 0x14019aebf
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019afc5
add rcx, 0x188
call fcn.1401a7c10
jmp 0x14019af32
xor ecx, ecx
call fcn.14019c220
jmp 0x14019afc5
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019b03a
mov rbp, qword [rsp + 0x50]
mov r12, qword [rsi]
test r12, r12
je 0x14019ae72
mov eax, 1
lock xadd dword [r12 + 8], eax
cmp eax, 0x7fffffff
je 0x14019b761
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rax + 0xa0]
mov r8, qword [rax + 0xa8]
test rdx, rdx
je 0x14019aea2
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x14019b764
mov rcx, r12
call fcn.14001cb00
mov rcx, qword [rsp + 0xa8]
cmp byte [rcx + 0x198], 0
jne 0x14019adf6
test r12, r12
je 0x14019aed0
lock dec dword [r12 + 8]
je 0x14019ade1
add rsi, 8
cmp rsi, rdi
mov rbx, r14
je 0x14019b007
jmp 0x14019ae53
mov r14, rbx
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rax + 0xa0]
mov r8, qword [rax + 0xa8]
test rdx, rdx
je 0x14019af18
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x14019b758
call fcn.14001cb00
mov rcx, qword [rsp + 0xa8]
cmp byte [rcx + 0x198], 0
jne 0x14019ae1c
mov rsi, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
cmp rsi, rdi
mov rbx, r14
mov rbp, qword [rsp + 0x50]
je 0x14019b007
jmp 0x14019ae4e
mov rcx, qword [rsp + 0xa8]
call fcn.1402086f0
jmp 0x14019b015
call fcn.14019c220
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xc0]
cmp rsi, rdi
je 0x14019aff6
mov rbp, qword [rsp + 0x50]
mov r14, rbx
mov r12, qword [rsi]
test r12, r12
je 0x14019ae2d
mov eax, 1
lock xadd dword [r12 + 8], eax
cmp eax, 0x7fffffff
je 0x14019b755
lea rbx, [r12 + 8]
mov rcx, r12
call fcn.14019c220
lock dec dword [rbx]
je 0x14019ae07
add rsi, 8
cmp rsi, rdi
mov rbx, r14
je 0x14019aff6
jmp 0x14019af89
mov r15, qword [r12 + 0x30]
add r15, 0x28
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
jne 0x14019af6a
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
jne 0x14019aee5
cmp byte [rsp + 0xf0], 0
jne 0x14019af58
mov r12, qword [rsp + 0xb0]
mov qword [rsp + 0xb0], 0
test r12, r12
je 0x14019b03a
lock dec dword [r12 + 8]
je 0x14019ae39
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xc0]
cmp rdi, rsi
jne 0x14019b0c5
mov qword [rsp + 0xc0], rsi
mov r12, qword [rsp + 0xd0]
mov qword [rsp + 0xd0], 0
test r12, r12
je 0x14019b07c
lock dec dword [r12 + 8]
je 0x14019b12d
mov rsi, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
cmp rdi, rsi
jne 0x14019b0f9
mov qword [rsp + 0xe0], rsi
mov byte [rsp + 0xf0], 0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
mov r12, qword [rsp + 0x48]
jne 0x140199614
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140199614
add rdi, 0xfffffffffffffff8
mov rbp, qword [rsp + 0x50]
test rdi, rdi
je 0x14019a95a
mov r12, qword [rdi]
test r12, r12
je 0x14019b0e7
lock dec dword [r12 + 8]
je 0x14019b142
lea rax, [rdi - 8]
cmp rdi, rsi
mov rdi, rax
je 0x14019b04f
jmp 0x14019b0ce
add rdi, 0xfffffffffffffff8
mov rbp, qword [rsp + 0x50]
test rdi, rdi
je 0x14019a95a
mov r12, qword [rdi]
test r12, r12
je 0x14019b11b
lock dec dword [r12 + 8]
je 0x14019b154
lea rax, [rdi - 8]
cmp rdi, rsi
mov rdi, rax
je 0x14019b091
jmp 0x14019b102
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019b07c
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019b0e7
mov rcx, r12
call fcn.140005b00
mov rcx, r12
call fcn.1401cbbbc
jmp 0x14019b11b
add rcx, 0x148
mov rdx, rbp
call fcn.14019cde0
jmp 0x140199ad7
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14019b25a
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14019b2e6
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14019b1f1
lea r12, [rsp + 0x110]
mov rcx, r12
call qword [0x1402f5008]
mov rax, qword [r12]
jmp 0x14019b25a
cmp byte [r12 + 0x40], 0
je 0x140199ae9
lea r15, [rbp + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14019b1af
mov rsi, qword [rbp + 0x30]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rsi, rsi
je 0x140199ae9
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x14019b1ba
lea r12, [rsp + 0x160]
mov qword [r12], 0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r12]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14019b17a
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov rdi, qword [rsp + 0x48]
xor ecx, ecx
cmp rax, rsi
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub rax, rsi
cmovo rax, rdx
mov rcx, qword [rdi + 0x30]
cmp rax, qword [rcx + 0x90]
jl 0x140199ae9
cmp byte [rcx + 0x169], 0
jne 0x140199ae9
mov r14, rbx
mov byte [rbp + 0x48], 1
lea rcx, [rbp + 0x38]
call fcn.1401a45b0
mov rcx, qword [rdi + 0x30]
cmp qword [rcx + 0x158], 0
je 0x14019b344
mov rax, qword [rcx + 0x148]
mov rax, qword [rax + 0x20]
mov rbx, qword [rsp + 0x50]
cmp rax, rbx
mov rdi, qword [rsp + 0x48]
je 0x14019b2fc
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14019b1a1
mov rsi, qword [rbx + 0x30]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test rsi, rsi
je 0x14019b30b
mov rcx, qword [rdi + 0x30]
add rcx, 0x148
mov rdx, rbx
call fcn.14001d250
mov rsi, qword [rdi + 0x30]
mov rdi, qword [rsi + 0xf8]
mov r15, qword [rsi + 0x100]
cmp rdi, r15
je 0x14019b729
xor eax, eax
lea rcx, [rdi + rax]
add rcx, 8
cmp qword [rcx - 8], rbx
je 0x14019b34b
add rax, 8
cmp rcx, r15
jne 0x14019b328
jmp 0x14019b729
xor eax, eax
jmp 0x14019b2c6
add rdi, rax
cmp rcx, r15
jne 0x14019b38e
cmp r15, rdi
je 0x14019b37f
add r15, 0xfffffffffffffff8
test r15, r15
je 0x14019a95a
mov rbx, qword [r15]
test rbx, rbx
je 0x14019b373
lock dec dword [rbx + 8]
je 0x14019b3c1
lea rax, [r15 - 8]
cmp r15, rdi
mov r15, rax
jne 0x14019b35c
mov qword [rsi + 0x100], rdi
mov rbx, r14
jmp 0x140199ae9
mov rbx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rdi + 8], 0
mov qword [rdi], rax
test rbx, rbx
je 0x14019b3ab
lock dec dword [rbx + 8]
je 0x14019b3d3
add rdi, 8
lea rax, [rdi + 8]
cmp rax, r15
jne 0x14019b38e
mov r15, qword [rsi + 0x100]
jmp 0x14019b353
mov rcx, rbx
call fcn.140005b00
mov rcx, rbx
call fcn.1401cbbbc
jmp 0x14019b373
mov rcx, rbx
call fcn.140005b00
mov rcx, rbx
call fcn.1401cbbbc
jmp 0x14019b3ab
call fcn.1401509f0
jmp 0x140199b8d
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
lea rax, str.front___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, 0x273
call fcn.140207060
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140199650
mov rax, rsi
jmp 0x140199a46
mov rcx, r15
call fcn.1401508a0
mov rbx, qword [r12 + 0x30]
jmp 0x140199375
lock dec dword [rcx + 8]
jne 0x1401997b3
mov edx, 1
call fcn.1401a4330
jmp 0x1401997b3
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140199a6e
lea rax, str.vector::pop_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, 0x6a5
call fcn.140207060
lea rax, str.vector___index_out_of_bounds
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, [0x1402a1c81]
mov r8d, 0x601
call fcn.140207060
lea rax, [0x1402a35bc]
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_array
lea r9, str.__n____Size
mov r8d, 0xe8
call fcn.140207060
int3
int3
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140199aca
mov rcx, rdi
call fcn.140005b00
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x140199b6e
add rcx, 8
jmp 0x1401999ae
mov rdi, qword [0x1402e23f8]
movaps xmm0, xmmword [0x14029ca60]
lea rbx, [rsp + 0x140]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x1402d99f0]
lea r9, str.WorkerThread::WakeUp
mov rcx, rbx
mov dl, 0x49
call fcn.140206a10
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14019b5c4
lea rcx, [rsp + 0x140]
call fcn.1402308a0
mov r15, qword [rsp + 0x58]
jmp 0x140199bf9
xor rdi, rsi
mov al, byte [rsp + 0x158]
mov rdx, qword [rsp + 0x148]
lea rbx, [rsp + 0x110]
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], rdx
xor r14d, r14d
mov qword [rbx + 0x18], r14
mov byte [rbx + 0x20], al
mov edx, 0x2f
mov r8, rdi
call fcn.140215690
lea rcx, [rsp + 0x160]
mov qword [rcx], r14
mov qword [rbx], r14
movups xmm0, xmmword [rbx + 8]
movups xmm1, xmmword [rbx + 0x11]
movups xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x11], xmm1
call fcn.140206a20
mov rcx, rbx
call fcn.140206a20
jmp 0x14019b5ad
mov rdi, qword [0x1402e23f8]
movaps xmm0, xmmword [0x14029ca60]
lea rbx, [rsp + 0x140]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x1402d99f0]
lea r9, str.WaitableEvent::Signal
mov rcx, rbx
mov dl, 0x49
call fcn.140206a10
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14019b68b
lea rcx, [rsp + 0x140]
call fcn.1402308a0
mov r15, qword [rsp + 0x58]
jmp 0x140199c07
xor rdi, r14
mov al, byte [rsp + 0x158]
mov rdx, qword [rsp + 0x148]
lea rbx, [rsp + 0x110]
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], rdx
xor esi, esi
mov qword [rbx + 0x18], rsi
mov byte [rbx + 0x20], al
mov edx, 0x2f
mov r8, rdi
call fcn.140215690
lea rcx, [rsp + 0x160]
mov qword [rcx], rsi
mov qword [rbx], rsi
movups xmm0, xmmword [rbx + 8]
movups xmm1, xmmword [rbx + 0x11]
movups xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x11], xmm1
call fcn.140206a20
mov rcx, rbx
call fcn.140206a20
jmp 0x14019b674
xor ecx, ecx
call fcn.14019c220
jmp 0x140199c60
mov rcx, rdi
call fcn.140005b00
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x140199c60
int3
mov rcx, rdi
call fcn.140005b00
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x140199b50
lea rax, str.vector::erase_iterator__called_with_a_non_dereferenceable_iterator
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.__position___end__
mov r8d, 0x6b0
call fcn.140207060
int3
int3
int3
int3
int3
int3
cmp r12, r15
jb 0x14019b410
jl 0x14019b413
je 0x14019b7a1
mov rax, qword [rsp + 0x40]
lea rdi, [rax + r15*8]
shl r12, 3
shl r15, 3
sub r12, r15
mov rbx, r12
mov rcx, rdi
call fcn.1401ca840
add rdi, 8
add rbx, 0xfffffffffffffff8
jne 0x14019b78f
test r14, r14
js 0x14019b416
mov rbx, qword [rsp + 0x68]
je 0x14019ac6e
shl r14, 3
mov r12, qword [rsp + 0x40]
mov rcx, r12
call fcn.1401ca840
add r12, 8
add r14, 0xfffffffffffffff8
jne 0x14019b7be
jmp 0x14019ac6e