Function at 0x140071210
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, 0x1a8
movapd xmmword [rsp + 0x190], xmm11
movaps xmmword [rsp + 0x180], xmm10
movaps xmmword [rsp + 0x170], xmm9
movaps xmmword [rsp + 0x160], xmm8
movaps xmmword [rsp + 0x150], xmm7
movaps xmmword [rsp + 0x140], xmm6
mov rsi, rcx
mov rax, qword [0x140139028]
xor rax, rsp
mov qword [rsp + 0x138], rax
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14014a82a]
test al, al
jne 0x1400713e9
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14014a82a]
test al, al
jne 0x1400713a3
mov rcx, qword [rsi + 0x48]
test rcx, rcx
jne 0x140073718
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
mov rcx, rsi
call qword [0x14012df40]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x10]
mov rcx, rax
mov rdx, rsi
mov rax, r8
call qword [0x14012df40]
mov eax, dword [0x14014aca0]
test eax, eax
je 0x140071398
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x1400712fa
cmp dword [rsi + 0x50], 0
je 0x140071398
mov rcx, qword [0x14014ac98]
test rcx, rcx
je 0x140073711
lea rdi, [rsp + 0xf0]
mov rdx, rdi
mov r8d, 2
call fcn.140018db0
mov rax, qword [rdi]
mov qword [rsp + 0x50], rax
mov al, 1
mov qword [rsp + 0x48], rax
movabs r12, 0xfffffffc00000000
movabs r13, 0x7fffffffffffffff
mov eax, dword [0x140147910]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x128]
mov qword [rsp + 0x40], rcx
lea rax, [rax + 0x150]
mov qword [rsp + 0x58], rax
movaps xmm6, xmmword [0x140118af0]
movsd xmm7, qword [0x140129668]
movsd xmm8, qword [0x1401279c8]
movsd xmm9, qword [0x1401279d0]
xorps xmm10, xmm10
jmp 0x140071eb4
xor eax, eax
mov qword [rsp + 0x50], rax
xor eax, eax
jmp 0x14007132a
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0xf0]
mov qword [r8], rax
lea rax, [0x14011d148]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x42
lea rdx, [rsp + 0xb0]
mov r9d, 1
call fcn.140006350
jmp 0x1400712a1
movzx ecx, al
lea rax, str.WorkerThread_born
lea r8, [rsp + 0xf0]
mov qword [r8], rax
lea rax, [0x14011d148]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], 0x49
lea rdx, [rsp + 0xb0]
mov r9d, 3
call fcn.140006350
jmp 0x140071287
mov rcx, qword [r15]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14007195d
mov eax, dword [0x140147910]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rdi, qword [rax + 0x160]
cmp rdi, 2
jb 0x140071487
mov byte [rdi + 4], 0
mov ebx, pe_nt_image_headers64
lea rdx, [rdi + rbx]
mov rcx, rdi
xor r8d, r8d
call fcn.140080100
add rbx, 0x10
cmp rbx, 0x4f8
jne 0x14007146b
mov rax, qword [rsp + 0xa8]
cmp rax, rbp
jle 0x14007195d
setns cl
movzx ecx, cl
add rcx, r13
mov rdx, rax
sub rdx, rbp
cmovo rdx, rcx
cmp rax, r13
cmove rdx, r13
lea rax, [rbp + 2]
add rax, r13
cmp rax, 2
cmovb rdx, r13
mov rcx, r12
call fcn.1400779a0
jmp 0x14007195d
mov rcx, r12
call fcn.140007650
jmp 0x14007195d
movzx ecx, al
mov rax, qword [0x140148dc0]
xor rax, rsi
mov qword [rsp + 0xf0], rax
lea rax, str.WorkerThread_active
mov qword [rsp + 0xb0], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0xe8]
lea r8, [rsp + 0xb0]
mov r9d, 1
call fcn.140060840
jmp 0x140071986
mov rax, qword [0x14013b540]
lea rcx, [0x14009ef00]
cmp rax, rcx
jne 0x140072ec8
mov qword [rsp + 0xb0], 0
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0xb0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400736d7
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014ab70]
xor edx, edx
cmp rdi, rax
setns dl
add rdx, r13
mov rcx, rdi
sub rcx, rax
cmovo rcx, rdx
jg 0x1400718e1
xor r14d, r14d
jmp 0x140071946
movzx ecx, al
mov qword [rsp + 0xb0], 0
lea rdx, [rsp + 0xe8]
lea r8, [rsp + 0xb0]
mov r9d, 2
call fcn.14005ee10
jmp 0x1400715f1
mov qword [rsp + 0xe8], 0xa
mov al, byte [0x14014a82a]
test al, al
jne 0x1400715af
call fcn.14009f890
mov eax, dword [rax]
mov dword [rsp + 0x38], eax
call fcn.14009f890
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 rbx, qword [rsp + 0xf0]
test rbx, rbx
je 0x1400716f4
cmp qword [rsp + 0xf8], 0
jne 0x1400716f4
cmp byte [rbx + 0x19], 0
je 0x1400716f4
mov r15, qword [rbx + 0x28]
add r15, 0x68
mov r13, r15
movabs rax, 0xfffffffc00000000
and r13, rax
cmp r13, qword [0x14013b508]
jne 0x14007166a
mov rcx, r15
call fcn.140058e70
test r15, r15
je 0x140073563
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140072acb
mov qword [rbx + 0x20], 0
cmp byte [rbx + 0x3a], 0
jne 0x1400716ca
cmp byte [rbx + 0x38], 0
mov rax, qword [rbx + 0x28]
jne 0x140072a47
dec dword [rax + 0x130]
cmp byte [rbx + 0x19], 0
je 0x140073566
cmp byte [rbx + 0x18], 0
jne 0x1400716ca
cmp byte [rbx + 0x39], 0
mov rcx, qword [rbx + 0x28]
jne 0x1400735e6
dec dword [rcx + 0x134]
mov word [rbx + 0x38], 0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp r13, qword [0x14013b508]
movabs r13, 0x7fffffffffffffff
jne 0x1400716f4
mov rcx, r15
call fcn.140058fd0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.14009f890
mov ecx, dword [rsp + 0x38]
mov dword [rax], ecx
cmp byte [rsp + 0x128], 0
je 0x1400717d4
mov rdi, qword [rsp + 0x120]
test rdi, rdi
je 0x1400717d4
mov rax, qword [fcn.140081bb0]
lea rcx, [0x14009ef00]
cmp rax, rcx
jne 0x140072ef7
mov qword [rsp + 0xb0], 0
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0xb0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400736b0
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014ab70]
mov qword [rsp + 0xe8], rax
mov rbx, qword [rsp + 0x118]
xor ecx, ecx
cmp rax, rbx
setns cl
add rcx, r13
mov r13, rax
sub r13, rbx
cmovo r13, rcx
cmp r13, 0xf4240
jge 0x140072da2
mov rdi, qword [rsp + 0x120]
test rdi, rdi
movabs r13, 0x7fffffffffffffff
je 0x1400717d4
lock dec dword [rdi]
je 0x1400735f0
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x1400717ec
mov rcx, qword [rsp + 0x108]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
movabs rdi, 0xfffffffc00000000
and rax, rdi
cmp rax, qword [0x14013b508]
je 0x140073457
mov qword [rsp + 0xf8], 0
mov rcx, qword [rsp + 0xf0]
mov rax, rcx
and rax, rdi
cmp rax, qword [0x14013b508]
jne 0x140071954
call fcn.14005ea50
jmp 0x140071954
mov qword [rsp + 0xe0], 0x9b
mov al, byte [0x14014a8bb]
test al, al
je 0x140071946
jmp 0x14007359d
mov edx, 0xffffffff
jmp 0x140071926
mov rax, qword [0x14013b540]
lea rcx, [0x14009ef00]
cmp rax, rcx
jne 0x140072bcd
mov qword [rsp + 0xb0], 0
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0xb0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400734f3
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014ab70]
mov rdi, rax
lea rax, [rdi + rbp]
sar rax, 0x3f
btc rax, 0x3f
add rdi, rbp
cmovo rdi, rax
mov rcx, rbp
cmp rcx, r13
je 0x140071861
mov rax, rcx
shr rax, 3
movabs rdx, 0x20c49ba5e353f7cf
mul rdx
mov rax, rdx
shr rax, 4
imul rdx, rax, 0x3e8
cmp rdx, rcx
adc rax, 0
mov rcx, rax
shr rcx, 0x20
neg rcx
mov edx, 0
sbb edx, edx
or edx, eax
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x140071530
mov r14b, 1
cmp byte [r12 + 0x10], 0
je 0x140071842
cmp byte [rsp + 0x130], 0
jne 0x1400715db
test r14b, r14b
je 0x140071442
mov qword [rsp + 0xe8], 0xa
mov al, byte [0x14014a82a]
test al, al
mov r15, qword [rsp + 0x48]
movabs r12, 0xfffffffc00000000
jne 0x1400714df
mov al, byte [rsi + 0x30]
test al, al
jne 0x140072812
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
lea rcx, [0x140073a80]
cmp rax, rcx
jne 0x1400730e4
mov al, byte [rsi + 0x70]
test al, al
jne 0x140072812
mov r14, qword [rsi + 0x38]
lea rdi, [r14 + 0x50]
mov rbx, rdi
and rbx, r12
cmp rbx, qword [0x14013b508]
jne 0x1400719d2
mov rcx, rdi
call fcn.140058e70
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400728b1
mov rax, qword [r14 + 0x58]
test rax, rax
jne 0x140072ea3
xor ebp, ebp
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rbx, qword [0x14013b508]
jne 0x140071a0c
mov rcx, rdi
call fcn.140058fd0
test bpl, bpl
jne 0x140072812
test r15b, r15b
je 0x140071a4c
cmp byte [rsp + 0x98], 0
jne 0x1400730f2
mov qword [rsp + 0x88], 0
xor eax, eax
mov byte [rsp + 0x90], al
mov byte [rsp + 0x80], al
mov byte [rsp + 0x98], 1
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140073069
mov edi, dword [rsi + 0x50]
cmp dword [rsi + 0x54], edi
jne 0x140073115
movaps xmmword [rsp + 0xf0], xmm6
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
lea rcx, [0x140073a70]
cmp rax, rcx
jne 0x140073124
mov rcx, qword [rsi + 0x68]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
lea rdx, [rsp + 0xf0]
mov r8, rsi
call qword [0x14012df40]
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x140072622
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0xe0]
call fcn.140058e60
mov rcx, qword [rsi + 0x38]
movapd xmm0, xmmword [rsp + 0xf0]
movupd xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0xf0], xmm10
lea rdx, [rsp + 0xb0]
lea r8, [rsp + 0x70]
call fcn.140073a90
mov r8, qword [rsp + 0xf0]
test r8, r8
jne 0x1400730a1
mov qword [rsp + 0xe8], r8
mov qword [rsp + 0xf0], 0
test r8, r8
jne 0x140073084
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0xb0], 0
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0xf0], rax
test rcx, rcx
jne 0x14007301e
mov rdi, qword [rsp + 0xb8]
mov qword [rsp + 0xb8], 0
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14013b508]
je 0x140073000
mov qword [rsp + 0xf8], rdi
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
jne 0x1400726e6
mov qword [rsp + 0xb0], 0
test rdi, rdi
jne 0x140072713
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14013b508]
je 0x14007300a
mov qword [rsp + 0xb8], 0
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
jne 0x140073037
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0xd8]
call fcn.140058e60
test r15b, r15b
je 0x140071cc6
cmp byte [rsp + 0x98], 0
je 0x140071ca2
cmp byte [rsp + 0x80], 0
je 0x140071ca2
mov rax, qword [rsp + 0x58]
mov r14, qword [rax]
test r14, r14
je 0x140071ca2
mov rax, qword [r14 + 0x10]
test rax, rax
js 0x140072f10
cmp dword [r14 + 0x24], 1
jne 0x1400732e6
cmp qword [r14 + 0x18], 0
jne 0x140073355
movabs rax, 0xbfffffffffffffff
lock and qword [r14 + 0x10], rax
mov rdi, qword [rsp + 0x88]
cmp qword [r14 + 0x18], 0
jne 0x14007337b
mov rax, qword [r14 + 0x10]
movabs rcx, 0x4000000000000000
and rax, rcx
movabs rcx, 0xffffffffffffff
and rdi, rcx
or rdi, rax
mov qword [r14 + 0x10], rdi
dec dword [r14 + 0x24]
mov qword [rsp + 0x88], 0
mov byte [rsp + 0x90], 0
mov byte [rsp + 0x80], 0
mov byte [rsp + 0x98], 1
movaps xmmword [rsp + 0xb0], xmm6
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
lea rcx, [0x140073a70]
cmp rax, rcx
jne 0x140073073
mov rcx, qword [rsi + 0x68]
movapd xmm0, xmmword [rsp + 0xf0]
movupd xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0xf0], xmm10
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0xb0]
lea r8, [rsp + 0x60]
mov r9, rsi
call qword [0x14012df40]
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140072bbc
mov edi, dword [rsi + 0x50]
cmp dword [rsi + 0x54], edi
jne 0x140072eb9
cmp qword [rsp + 0xf0], 0
jne 0x140072fe5
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
movaps xmmword [rsp + 0xb0], xmm10
mov qword [rsp + 0xf0], rax
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14013b508]
je 0x14007314c
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0xb0], 0
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14013b508]
je 0x140073014
mov qword [rsp + 0xb8], 0
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
movabs r13, 0x7fffffffffffffff
jne 0x140073050
mov rax, qword [rsp + 0xf0]
test rax, rax
jne 0x140071ab6
mov qword [rsp + 0xf0], 0
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14013b508]
je 0x140073461
mov bpl, 1
cmp byte [rsp + 0x98], 0
je 0x140071eab
cmp byte [rsp + 0x80], 0
je 0x140071eab
mov rax, qword [rsp + 0x58]
mov r14, qword [rax]
test r14, r14
je 0x140071eab
mov rax, qword [r14 + 0x10]
test rax, rax
js 0x140072f56
cmp dword [r14 + 0x24], 1
jne 0x14007341a
cmp qword [r14 + 0x18], 0
jne 0x1400734a7
movabs rax, 0xbfffffffffffffff
lock and qword [r14 + 0x10], rax
mov rdi, qword [rsp + 0x88]
cmp qword [r14 + 0x18], 0
jne 0x1400734cd
mov rax, qword [r14 + 0x10]
movabs rcx, 0x4000000000000000
and rax, rcx
movabs rcx, 0xffffffffffffff
and rdi, rcx
or rdi, rax
mov qword [r14 + 0x10], rdi
dec dword [r14 + 0x24]
test bpl, bpl
je 0x140072903
mov al, byte [rsi + 0x30]
test al, al
jne 0x140072903
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
lea rcx, [0x140073a80]
cmp rax, rcx
jne 0x1400730d6
mov al, byte [rsi + 0x70]
test al, al
jne 0x140072903
mov r14, qword [rsi + 0x38]
lea rdi, [r14 + 0x50]
mov rbx, rdi
and rbx, r12
cmp rbx, qword [0x14013b508]
jne 0x140071f00
mov rcx, rdi
call fcn.140058e70
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400728a3
mov rax, qword [r14 + 0x58]
test rax, rax
jne 0x140072e8d
xor ebp, ebp
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rbx, qword [0x14013b508]
jne 0x140071f3a
mov rcx, rdi
call fcn.140058fd0
test bpl, bpl
jne 0x140072903
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x90], xmm6
xor eax, eax
mov byte [rsp + 0x80], al
mov byte [rsp + 0x98], al
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14014a82a]
test al, al
jne 0x140072819
mov edi, dword [0x14013b084]
test edi, edi
jne 0x1400722c3
cmp byte [rsp + 0x98], 0
jne 0x1400732aa
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
lea rcx, [0x140073a70]
cmp rax, rcx
jne 0x140073104
mov r12, qword [rsi + 0x68]
mov rax, qword [r12]
lea rcx, [fcn.140007650]
cmp qword [rax + 0x30], rcx
jne 0x1400714d2
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xa8], rax
mov rax, qword [r12]
mov rax, qword [rax + 0x28]
lea rcx, [0x140078240]
cmp rax, rcx
jne 0x140072604
mov rax, qword [r12 - 0x40]
mov rax, qword [rax + 0x20]
lea rcx, [0x140100e60]
cmp rax, rcx
jne 0x140072864
cmp byte [r12 + 0x18], 0
mov rbp, r13
jne 0x14007287a
mov qword [rsp + 0xa8], rbp
mov eax, 0xf4240
cmp rbp, rax
cmovge rbp, rax
mov eax, dword [0x140150bc4]
mov ecx, dword [0x140147910]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140072a8f
cmp byte [0x140150bc0], 0
je 0x1400721f3
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xb0], rax
mov rax, qword [fcn.140081bb0]
lea rcx, [0x14009ef00]
cmp rax, rcx
jne 0x140072d8f
mov qword [rsp + 0xf0], 0
lea rcx, [rsp + 0xf0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0xf0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400733c5
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014ab70]
mov qword [rsp + 0xb0], rax
mov eax, dword [0x140150bd0]
mov ecx, dword [0x140147910]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140072a0e
mov rax, qword [0x140150bc8]
mov ecx, 0x3938700
add rax, rcx
cmovo rax, r13
mov r8, qword [rsp + 0xb0]
cmp r8, rax
cmovle rbp, rcx
lea rax, [rbp + 2]
add rax, r13
cmp rax, 2
jb 0x14007331e
lea rax, [r8 + rbp]
sar rax, 0x3f
btc rax, 0x3f
add rbp, r8
cmovo rbp, rax
mov r9, rbp
xor eax, eax
mov rcx, r9
neg rcx
setns al
add rax, r13
mov rcx, r9
neg rcx
cmovo rcx, rax
lea rax, [rcx + r13]
add rax, 2
mov rdx, r13
cmp rax, 2
jb 0x1400721a4
mov rax, rcx
movabs rdx, 0x431bde82d7b634db
imul rdx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x12
add rdx, rax
imul rax, rdx, 0xf4240
sub rcx, rax
mov rdx, rcx
je 0x140072bc6
mov rax, rdx
add rax, 0xf4240
cmovo rax, r13
test r9, r9
cmovle rax, rdx
lea rcx, [rax + r13]
add rcx, 2
cmp rcx, 2
jb 0x1400733a1
lea rcx, [r9 + rax]
sar rcx, 0x3f
btc rcx, 0x3f
add r9, rax
cmovo r9, rcx
mov rbp, r9
xor eax, eax
cmp rbp, r8
setns al
add rax, r13
sub rbp, r8
cmovo rbp, rax
lea r15, [r12 + 8]
test rbp, rbp
jle 0x14007142f
movaps xmmword [rsp + 0xf0], xmm6
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x130], rax
movaps xmmword [rsp + 0x120], xmm6
movaps xmmword [rsp + 0x110], xmm6
movaps xmmword [rsp + 0x100], xmm6
xor eax, eax
mov byte [rsp + 0xf0], al
mov byte [rsp + 0x130], al
cmp byte [r12 + 0x10], al
je 0x14007225b
cmp rbp, r13
jne 0x14007186b
mov rdi, r13
jmp 0x1400718de
lea rcx, [rsp + 0xb0]
lea rdx, str.TimedWait
lea r8, str....._base_synchronizationwaitable_event.cc
mov r9d, 0x24
call fcn.1400595f0
cmp byte [rsp + 0x130], 0
jne 0x140073530
lea rcx, [rsp + 0xf0]
xor edx, edx
mov r8d, 1
call fcn.1400787e0
mov qword [rsp + 0xd8], 0xa
mov al, byte [0x14014a82a]
test al, al
jne 0x1400728bf
mov byte [rsp + 0x130], 1
jmp 0x14007224a
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
test rax, rax
je 0x140072b49
mov ebp, edi
mov rax, qword [rax + 8]
cmp byte [rax + 0xc], 0
jne 0x140071f8b
mov rcx, qword [0x140139db8]
mov byte [rax + 0xc], 1
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov rdx, qword [rax + 8]
mov r8d, dword [rcx + 0x10]
cmp dword [rdx + 8], r8d
jne 0x140073549
test bpl, 1
jne 0x14007253a
test bpl, 2
jne 0x140072550
test bpl, 4
jne 0x140072569
test bpl, 8
jne 0x140072588
test bpl, 0x10
jne 0x1400725a7
test bpl, 0x20
jne 0x1400725c6
test bpl, 0x40
jne 0x1400725e5
test bpl, bpl
jns 0x1400724cb
lea r12, [rax + 0x2b0]
mov edi, 7
cmp qword [rax + 0x2b0], 0
jne 0x14007238b
jmp 0x140072be6
mov rcx, r15
call fcn.14005e6d0
jmp 0x140072415
cmp qword [r12], 0
je 0x140072b16
test r12, r12
je 0x1400724cb
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14009e750]
cmp rax, rdx
jne 0x1400733ec
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
cmp rax, qword [r12 + 0x50]
je 0x140072463
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [fcn.1400754c0]
cmp rax, rdx
jne 0x14007351d
lea rdx, [rsp + 0xf0]
call fcn.1400754c0
mov r15, qword [rsp + 0xf0]
test r15, r15
je 0x140072437
mov r14, qword [rsp + 0xf8]
cmp byte [r15 + 0x24], 0
jne 0x140072427
cmp qword [r15 + 0x10], 0
jne 0x140072373
mov rax, qword [r15 + 0x18]
test rax, rax
jne 0x1400724e0
mov byte [r15 + 0x24], 1
test r14, r14
je 0x140072437
mov rcx, r14
mov rdx, r15
call fcn.14006cc40
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14009e750]
cmp rax, rdx
jne 0x14007349c
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
mov qword [r12 + 0x50], rax
cmp byte [r12 + 0x48], 0
jne 0x140073569
inc edi
cmp edi, 7
ja 0x1400724cb
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov edi, edi
mov rcx, rdi
shl rcx, 7
lea rdx, [0x14013b078]
lea r8, [rcx + rdx]
add r8, 0x10
lea rcx, [rdi + rdi*2]
shl rcx, 5
lea r12, [rax + rcx]
add r12, 0x10
mov ebx, ebp
mov eax, 1
mov ecx, edi
shl eax, cl
bt ebx, edi
jb 0x140072380
inc rdi
sub r8, 0xffffffffffffff80
add r12, 0x60
cmp rdi, 8
jne 0x1400724a8
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov rax, qword [rax + 8]
mov byte [rax + 0xc], 0
jmp 0x140071f8b
mov r8d, dword [r15 + 0x20]
cmp r8, 0x7f
ja 0x140072ae7
mov rbx, qword [r15]
mov rdx, qword [rbx + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140072ae7
cmp rax, qword [rbx + 8]
jb 0x140072ae7
lea rcx, [rdx - 3]
call fcn.1400a3450
add qword [rbx + 0x18], 0xfffffffffffffffd
mov al, byte [r15 + 0x20]
mov rcx, qword [r15 + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [r15 + 0x24], al
mov qword [r15 + 0x18], 0
jmp 0x140072427
lea r12, [rax + 0x10]
xor edi, edi
cmp qword [r12], 0
jne 0x14007238b
jmp 0x140072cd4
lea r12, [rax + 0x70]
mov edi, 1
cmp qword [rax + 0x70], 0
jne 0x14007238b
jmp 0x140072ca6
lea r12, [rax + 0xd0]
mov edi, 2
cmp qword [rax + 0xd0], 0
jne 0x14007238b
jmp 0x140072c78
lea r12, [rax + 0x130]
mov edi, 3
cmp qword [rax + 0x130], 0
jne 0x14007238b
jmp 0x140072d14
lea r12, [rax + 0x190]
mov edi, 4
cmp qword [rax + 0x190], 0
jne 0x14007238b
jmp 0x140072c47
lea r12, [rax + 0x1f0]
mov edi, 5
cmp qword [rax + 0x1f0], 0
jne 0x14007238b
jmp 0x140072c16
lea r12, [rax + 0x250]
mov edi, 6
cmp qword [rax + 0x250], 0
jne 0x14007238b
jmp 0x140072d42
mov rcx, r12
lea rdx, [rsp + 0xa8]
call qword [0x14012df40]
mov rbp, qword [rsp + 0xa8]
jmp 0x140072023
mov al, byte [rsi + 0x30]
test al, al
jne 0x140071ddd
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
mov rcx, rsi
call qword [0x14012df40]
test al, al
jne 0x140071ddd
mov r14, qword [rsi + 0x38]
lea rdi, [r14 + 0x50]
mov rbx, rdi
and rbx, r12
cmp rbx, qword [0x14013b508]
jne 0x140072664
mov rcx, rdi
call fcn.140058e70
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140072ad9
mov rax, qword [r14 + 0x58]
test rax, rax
jne 0x140072ee1
xor ebp, ebp
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rbx, qword [0x14013b508]
jne 0x14007269e
mov rcx, rdi
call fcn.140058fd0
test bpl, bpl
jne 0x140071ddd
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
mov rcx, rsi
call qword [0x14012df40]
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x40]
mov rcx, rax
mov rax, rdx
call qword [0x14012df40]
jmp 0x140071ddd
mov rax, qword [r13 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x14007270c
jmp 0x140072f9c
mov r13, qword [rsp + 0xb8]
test r13, r13
je 0x140071b9c
mov qword [rsp + 0xb0], 0
mov al, byte [rdi + 0xd]
and al, 0x7f
cmp al, 2
je 0x1400726cf
lock dec dword [r13 + 0x18]
je 0x14007272f
lock dec dword [rdi + 8]
jne 0x140071bb1
mov rcx, rdi
mov edx, 1
call fcn.140070c50
jmp 0x140071bb1
lea r14, [r13 + 0x20]
mov rbx, r14
and rbx, r12
cmp rbx, qword [0x14013b508]
jne 0x14007274a
mov rcx, r14
call fcn.140058e70
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140072ba0
mov rcx, qword [r13 + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [0x14013b508]
cmp rbx, rax
jne 0x140072789
mov rcx, r14
call fcn.140058fd0
mov rax, qword [0x14013b508]
cmp rbx, rax
jne 0x140072796
mov rcx, r14
call fcn.140058e70
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140072bae
mov r12, qword [r13 + 0x30]
mov rax, qword [r13 + 0x38]
mov qword [rsp + 0x38], rax
movups xmmword [r13 + 0x30], xmm10
mov rbp, qword [r13 + 0x40]
mov r15, qword [r13 + 0x48]
movups xmmword [r13 + 0x40], xmm10
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rbx, qword [0x14013b508]
jne 0x1400727e0
mov rcx, r14
call fcn.140058fd0
mov rbx, rbp
cmp rbp, r15
jne 0x140073605
lea rcx, fcn.140063060
mov rdx, r12
xor r8d, r8d
call fcn.140061980
mov r15, qword [rsp + 0x48]
movabs r12, 0xfffffffc00000000
jmp 0x140071ba8
xor ebp, ebp
jmp 0x140071e18
movzx ecx, al
lea rax, str.WorkerThread_active
mov qword [rsp + 0xf0], rax
lea rax, [0x14011d148]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x45
lea rdx, [rsp + 0xb0]
lea r8, [rsp + 0xf0]
mov r9d, 2
call fcn.140006350
jmp 0x140071f7d
lea rcx, [r12 - 0x40]
call qword [0x14012df40]
mov rbp, r13
test al, al
je 0x14007201b
mov rax, qword [r12 - 0x18]
cvtsi2sd xmm0, qword [rax + 0x30]
mulsd xmm0, xmm7
ucomisd xmm8, xmm0
jb 0x1400736fe
maxsd xmm0, xmm9
cvttsd2si rbp, xmm0
jmp 0x14007201b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140071f11
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400719e3
movzx ecx, al
lea rax, [rsp + 0xb0]
mov qword [rsp + 0xe8], rax
lea rax, str.ScopedBlockingCallWithBaseSyncPrimitives
mov qword [rsp + 0xe0], rax
lea rdx, [rsp + 0xd8]
lea r8, [rsp + 0xe0]
lea r9, [rsp + 0xe8]
call fcn.14000fcc0
jmp 0x1400722b9
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
mov rcx, rsi
call qword [0x14012df40]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov rdx, rsi
mov rax, r8
call qword [0x14012df40]
mov rcx, qword [rsi + 0x48]
test rcx, rcx
jne 0x14007372a
mov rdi, qword [rsi + 0x10]
mov qword [rsi + 0x10], 0
test rdi, rdi
jne 0x140072d70
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14014a82a]
test al, al
mov rsi, qword [rsp + 0x50]
jne 0x140073758
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14014a82a]
test al, al
jne 0x14007379e
mov ecx, dword [0x14013b084]
test ecx, ecx
jne 0x1400736a6
test rsi, rsi
je 0x1400729b6
mov rax, qword [rsi + 8]
mov rcx, rsi
call qword [0x14012df40]
lock dec dword [rsi]
jne 0x1400729b6
mov rax, qword [rsi + 0x10]
mov rcx, rsi
call qword [0x14012df40]
mov rcx, qword [rsp + 0x138]
xor rcx, rsp
call fcn.1400a19c0
movaps xmm6, xmmword [rsp + 0x140]
movaps xmm7, xmmword [rsp + 0x150]
movaps xmm8, xmmword [rsp + 0x160]
movaps xmm9, xmmword [rsp + 0x170]
movaps xmm10, xmmword [rsp + 0x180]
movaps xmm11, xmmword [rsp + 0x190]
add rsp, 0x1a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x140150bd0]
call fcn.14009f910
cmp dword [0x140150bd0], 0xffffffff
jne 0x1400720fc
mov rax, qword [rsp + 0xb0]
mov qword [0x140150bc8], rax
lea rcx, [0x140150bd0]
call fcn.14009f8b0
jmp 0x1400720fc
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x110]
dec rdx
mov qword [rax + 0x110], rdx
cmp rcx, qword [rax + 0x88]
je 0x140072a71
cmp qword [rax + 0x120], rdx
jae 0x140072a7f
mov word [rax + 0xb8], 0
jmp 0x1400716a6
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x1400716a6
lea rcx, [0x140150bc4]
call fcn.14009f910
cmp dword [0x140150bc4], 0xffffffff
jne 0x140072054
lea rcx, str.DelayFirstWorkerWake
call fcn.140077730
mov byte [0x140150bc0], al
lea rcx, [0x140150bc4]
call fcn.14009f8b0
jmp 0x140072054
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140071684
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072675
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x140072529
mov ebx, dword [0x14013b084]
and ebx, ebp
test ebx, eax
je 0x140072b29
mov al, byte [r8]
test al, 1
jne 0x140072b30
mov ebp, ebx
jmp 0x1400724ba
lea rcx, [0x14013b078]
mov rdx, r12
mov r9d, edi
call fcn.140006a30
mov ebp, ebx
jmp 0x14007238b
mov rax, qword [0x140139db8]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x14012df40]
lea rcx, [rax + 0x6218]
lea rdx, [0x14013b078]
mov qword [rax + 0x6218], rdx
mov qword [rax + 0x6220], rax
mov rax, qword [rsp + 0x40]
mov qword [rax], rcx
mov ebp, dword [0x14013b084]
and ebp, edi
je 0x140071f8b
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
jmp 0x1400722d6
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14007275b
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400727a7
mov edi, 3
jmp 0x140071d33
xor eax, eax
jmp 0x1400721ca
lea rdi, [rsp + 0xe8]
mov rcx, rdi
call qword [0x14012df40]
mov rdi, qword [rdi]
jmp 0x1400718ca
mov eax, dword [0x14013b084]
test al, al
jns 0x1400724cb
mov cl, byte [0x14013b408]
test cl, 1
je 0x1400724cb
and ebp, eax
lea r8, [0x14013b408]
mov edi, 7
jmp 0x140072cfd
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 0x20
je 0x140072345
mov cl, byte [0x14013b308]
test cl, 1
je 0x140072345
lea r8, [0x14013b308]
mov edi, 5
jmp 0x140072cfd
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 0x10
je 0x14007233b
mov cl, byte [0x14013b288]
test cl, 1
je 0x14007233b
lea r8, [0x14013b288]
mov edi, 4
jmp 0x140072cfd
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 4
je 0x140072327
mov cl, byte [0x14013b188]
test cl, 1
je 0x140072327
lea r8, [0x14013b188]
mov edi, 2
jmp 0x140072cfd
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 2
je 0x14007231d
mov cl, byte [0x14013b108]
test cl, 1
je 0x14007231d
lea r8, [0x14013b108]
mov edi, 1
jmp 0x140072cfd
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 1
je 0x140072313
mov cl, byte [0x14013b088]
test cl, 1
je 0x140072313
lea r8, [0x14013b088]
xor edi, edi
lea rcx, [0x14013b078]
mov rdx, r12
mov r9d, edi
call fcn.140006a30
jmp 0x14007238b
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 8
je 0x140072331
mov cl, byte [0x14013b208]
test cl, 1
je 0x140072331
lea r8, [0x14013b208]
mov edi, 3
jmp 0x140072cfd
mov ecx, dword [0x14013b084]
and ebp, ecx
test cl, 0x40
je 0x14007234f
mov cl, byte [0x14013b388]
test cl, 1
je 0x14007234f
lea r8, [0x14013b388]
mov edi, 6
jmp 0x140072cfd
lock dec dword [rdi + 8]
jne 0x14007294b
mov rcx, rdi
call fcn.1400d2f70
mov rcx, rdi
call fcn.14009f888
jmp 0x14007294b
lea rcx, [rsp + 0xb0]
call qword [0x14012df40]
jmp 0x1400720d7
mov ecx, 0x3938700
add rcx, qword [rdi + 0x1f0]
movabs r15, 0x7fffffffffffffff
cmovo rcx, r15
cmp rcx, rax
jle 0x14007382f
mov rax, qword [rdi + 0x1f0]
xor edx, edx
cmp rbx, rax
setns dl
add rdx, r15
mov rcx, rbx
sub rcx, rax
cmovo rcx, rdx
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
add rdx, 2
cmp rdx, 2
jb 0x140073816
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x140126a40]
call fcn.1400d03d8
movsd xmm11, qword [0x140126a48]
ucomisd xmm11, xmm0
jb 0x1400737e4
maxsd xmm0, qword [0x140126a50]
cvttsd2si r15d, xmm0
movabs rax, 0x7fffffffffffffff
add rax, r13
add rax, 2
cmp rax, 2
jae 0x140072e50
movsd xmm0, qword [0x140126a58]
jmp 0x140072e60
xorps xmm0, xmm0
cvtsi2sd xmm0, r13
divsd xmm0, qword [0x140126a40]
call fcn.1400d0488
ucomisd xmm11, xmm0
jb 0x1400737fd
maxsd xmm0, qword [0x140126a50]
cvttsd2si r8d, xmm0
mov rcx, rdi
mov edx, r15d
call fcn.140003010
jmp 0x1400717b4
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete bpl
jmp 0x140071f20
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete bpl
jmp 0x1400719f2
mov ecx, edi
call fcn.1400079c0
mov dword [rsi + 0x54], edi
jmp 0x140071d3c
lea r14, [rsp + 0xb0]
mov rcx, r14
call qword [0x14012df40]
mov rax, qword [r14]
jmp 0x14007158c
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
sete bpl
jmp 0x140072684
lea r15, [rsp + 0xe8]
mov rcx, r15
call qword [0x14012df40]
mov rax, qword [r15]
jmp 0x14007178a
mov rdx, qword [0x14014ac98]
mov al, byte [rdx + 0xe0]
test al, 1
je 0x140071c41
lea rdi, [rsp + 0xb0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rdi], rax
add rdx, 0xd8
mov rcx, rdi
call fcn.14005c800
mov rcx, rdi
call fcn.14005c7b0
jmp 0x140071c41
mov rdx, qword [0x14014ac98]
mov al, byte [rdx + 0xe0]
test al, 1
je 0x140071e4a
lea rdi, [rsp + 0xf0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rdi], rax
add rdx, 0xd8
mov rcx, rdi
call fcn.14005c800
mov rcx, rdi
call fcn.14005c7b0
jmp 0x140071e4a
lea r14, [rsp + 0xe8]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [r14], rax
lea rdx, [r13 + 0x50]
mov rcx, r14
call fcn.14005c800
mov rcx, qword [r13 + 0x58]
call fcn.14007e8b0
mov rcx, r14
call fcn.14005c7b0
jmp 0x14007270c
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
call fcn.14005ea50
jmp 0x140071b83
call fcn.14005ea50
jmp 0x140071bcc
call fcn.14005ea50
jmp 0x140071db6
lock dec dword [rcx + 8]
jne 0x140071b54
mov edx, 1
call fcn.140070c50
jmp 0x140071b54
lock dec dword [rcx + 8]
jne 0x140071be9
mov edx, 1
call fcn.140070c50
jmp 0x140071be9
lock dec dword [rcx + 8]
jne 0x140071ddd
mov edx, 1
call fcn.140070c50
jmp 0x140071ddd
mov edi, 3
jmp 0x140071a61
mov rcx, rsi
call qword [0x14012df40]
mov rcx, rax
jmp 0x140071ce9
lock dec dword [r8 + 8]
jne 0x140071b27
mov rcx, r8
mov edx, 1
call fcn.140070c50
jmp 0x140071b27
mov rcx, qword [rsp + 0xf8]
test rcx, rcx
je 0x140071b0a
mov qword [rsp + 0xf0], 0
lea rdi, [rsp + 0xe8]
mov rdx, rdi
call fcn.140011470
mov r8, qword [rdi]
jmp 0x140071b1e
mov rcx, rsi
call qword [0x14012df40]
jmp 0x140071ed9
mov rcx, rsi
call qword [0x14012df40]
jmp 0x1400719ab
lea rcx, [rsp + 0x80]
call fcn.14009f020
jmp 0x140071a28
mov rcx, rsi
call qword [0x14012df40]
mov r12, rax
jmp 0x140071fb4
mov ecx, edi
call fcn.1400079c0
mov dword [rsi + 0x54], edi
jmp 0x140071a6a
mov rcx, rsi
call qword [0x14012df40]
mov rcx, rax
jmp 0x140071a8d
mov rax, qword [r13 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x140073190
jmp 0x14007387b
call fcn.14005ea50
mov rdi, qword [rsp + 0xb0]
mov qword [rsp + 0xf8], rbx
test rdi, rdi
je 0x140071d8f
mov r13, qword [rsp + 0xb8]
mov qword [rsp + 0xb0], 0
test r13, r13
je 0x14007328e
mov al, byte [rdi + 0xd]
and al, 0x7f
cmp al, 2
je 0x140073135
lock dec dword [r13 + 0x18]
mov r15, qword [rsp + 0x48]
movabs r12, 0xfffffffc00000000
jne 0x14007328e
lea r14, [r13 + 0x20]
mov rbx, r14
and rbx, r12
cmp rbx, qword [0x14013b508]
jne 0x1400731c5
mov rcx, r14
call fcn.140058e70
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14007373c
mov rcx, qword [r13 + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [0x14013b508]
cmp rbx, rax
jne 0x140073204
mov rcx, r14
call fcn.140058fd0
mov rax, qword [0x14013b508]
cmp rbx, rax
jne 0x140073211
mov rcx, r14
call fcn.140058e70
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14007374a
mov r12, qword [r13 + 0x30]
mov rax, qword [r13 + 0x38]
mov qword [rsp + 0x38], rax
xorpd xmm0, xmm0
movupd xmmword [r13 + 0x30], xmm0
mov rbp, qword [r13 + 0x40]
mov r15, qword [r13 + 0x48]
movupd xmmword [r13 + 0x40], xmm0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp rbx, qword [0x14013b508]
jne 0x140073261
mov rcx, r14
call fcn.140058fd0
mov rbx, rbp
cmp rbp, r15
jne 0x1400739a8
lea rcx, fcn.140063060
mov rdx, r12
xor r8d, r8d
call fcn.140061980
mov r15, qword [rsp + 0x48]
movabs r12, 0xfffffffc00000000
lock dec dword [rdi + 8]
jne 0x140071d9b
mov rcx, rdi
mov edx, 1
call fcn.140070c50
jmp 0x140071d9b
lea rdi, [rsp + 0x80]
mov rcx, rdi
call fcn.14009f020
mov byte [rdi + 0x18], 0
jmp 0x140071f99
lea rcx, [r14 + 0x18]
mov rdi, qword [r14 + 0x10]
call fcn.1400f3400
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x1400732fb
cmp byte [rsp + 0x90], 0
je 0x140071c66
cmp qword [r14 + 0x18], 0
jne 0x1400732c3
movabs rax, 0x4000000000000000
lock or qword [r14 + 0x10], rax
mov r15, qword [rsp + 0x48]
movabs r12, 0xfffffffc00000000
jmp 0x140071c66
lea rax, [r8 + r13]
add rax, 2
lea r9, [r13 + 1]
cmp rax, 1
jbe 0x14007333f
movabs r13, 0x7fffffffffffffff
jmp 0x14007214a
cmp r8, rbp
movabs r13, 0x7fffffffffffffff
je 0x14007214a
int3
lea rcx, [r14 + 0x18]
mov rdi, qword [r14 + 0x10]
call fcn.1400f3400
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x140071c57
lea rcx, [r14 + 0x18]
mov rbx, qword [r14 + 0x10]
call fcn.1400f3400
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x140071c79
lea rcx, [r9 + r13]
add rcx, 2
mov rbp, r13
cmp rcx, 1
ja 0x1400721e1
mov rbp, r13
cmp r9, rax
je 0x1400721e1
int3
mov rcx, qword [0x14014ab70]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400720cf
call qword [0x14012df40]
jmp 0x1400723bb
lea rcx, [r14 + 0x18]
mov rdi, qword [r14 + 0x10]
call fcn.1400f3400
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x14007342f
cmp byte [rsp + 0x90], 0
je 0x140071e6f
cmp qword [r14 + 0x18], 0
jne 0x1400733f7
movabs rax, 0x4000000000000000
lock or qword [r14 + 0x10], rax
movabs r12, 0xfffffffc00000000
movabs r13, 0x7fffffffffffffff
jmp 0x140071e6f
call fcn.14005ea50
jmp 0x140071811
call fcn.14005ea50
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0xf8], 0
test rcx, rcx
je 0x140071e15
lock dec dword [rcx + 8]
jne 0x140071e15
mov edx, 1
call fcn.140070c50
jmp 0x140071e15
call qword [0x14012df40]
jmp 0x14007245e
lea rcx, [r14 + 0x18]
mov rdi, qword [r14 + 0x10]
call fcn.1400f3400
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x140071e60
lea rcx, [r14 + 0x18]
mov rbx, qword [r14 + 0x10]
call fcn.1400f3400
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [r14 + 0x10], rcx
jmp 0x140071e82
mov rcx, qword [0x14014ab70]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rdi, rax
add rdi, r8
jmp 0x1400718ca
lea rdx, [rsp + 0xf0]
call qword [0x14012df40]
jmp 0x1400723ee
lea rdi, [rsp + 0xf0]
mov rcx, rdi
call fcn.1400852c0
mov byte [rdi + 0x40], 0
jmp 0x14007228a
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x14012df40]
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
jmp 0x140072309
int3
int3
mov rcx, qword [r12]
lea rax, [0x1400d5700]
lea rdx, [rsp + 0xf0]
mov qword [rdx + 0x18], rax
lea rax, [0x14011cc48]
mov qword [rdx + 0x20], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x14012df40]
jmp 0x14007246f
movzx ecx, al
xor r15, qword [0x140148dc0]
mov qword [rsp + 0xb0], r15
lea rax, str.WaitableEvent::Wait_Complete
lea r8, [rsp + 0xe8]
mov qword [r8], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0xe0]
mov r9d, 3
call fcn.140060840
jmp 0x140071946
call fcn.140100c40
jmp 0x1400716ca
mov rcx, rdi
call fcn.140033bc0
mov rcx, rdi
call fcn.14009f888
jmp 0x1400717d4
cmp qword [rsp + 0x38], rbx
jb 0x140072fe8
mov r14, qword [r12 + rbx*8]
test r14, r14
je 0x140072fe2
mov qword [r12 + rbx*8], 0
mov rax, qword [r14 + 8]
mov rcx, r14
call qword [0x14012df40]
lock dec dword [r14]
jne 0x140073645
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [0x14012df40]
inc rbx
xor eax, eax
cmp rbx, qword [rsp + 0x38]
cmove rbx, rax
cmp rbx, r15
jne 0x140073605
cmp r15, rbp
jbe 0x14007392d
cmp qword [rsp + 0x38], r15
jb 0x140072fdc
cmp rbp, r15
jg 0x140072fdf
shl r15, 3
shl rbp, 3
mov rcx, qword [r12 + rbp]
test rcx, rcx
jne 0x140073695
add rbp, 8
cmp r15, rbp
je 0x1400727ec
jmp 0x14007367d
lock dec dword [rcx]
jne 0x140073686
mov rax, qword [rcx + 0x10]
call qword [0x14012df40]
jmp 0x140073686
call fcn.140106600
jmp 0x140072992
mov rcx, qword [0x14014ab70]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140071782
mov rcx, qword [0x14014ab70]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14007158c
xor ebp, ebp
ucomisd xmm0, qword [0x1401279d0]
cmovae rbp, r13
jmp 0x14007201b
xor eax, eax
jmp 0x140071323
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x14012df40]
jmp 0x1400712ae
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x14012df40]
jmp 0x140072936
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400731d6
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140073222
movzx ecx, al
lea r8, [rsp + 0xf0]
lea rax, str.WorkerThread_active
mov qword [r8], rax
lea rax, [0x14011d148]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x45
lea rdx, [rsp + 0xb0]
mov r9d, 2
call fcn.140006350
jmp 0x14007296a
movzx ecx, al
lea rax, str.WorkerThread_dead
lea r8, [rsp + 0xf0]
mov qword [r8], rax
lea rax, [0x14011d148]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], 0x49
lea rdx, [rsp + 0xb0]
mov r9d, 3
call fcn.140006350
jmp 0x140072984
xor eax, eax
ucomisd xmm0, qword [0x140126a50]
mov r15d, 0x7fffffff
cmovb r15d, eax
jmp 0x140072e2f
xor eax, eax
ucomisd xmm0, qword [0x140126a50]
mov r8d, 0x7fffffff
cmovb r8d, eax
jmp 0x140072e7d
xor ecx, ecx
cmp rax, rbx
setg cl
lea rax, [0x140126a30]
movsd xmm0, qword [rax + rcx*8]
jmp 0x140072e01
lea rcx, [rsp + 0xb0]
mov rdx, rax
call fcn.1400385e0
lea rax, [rsp + 0xb0]
mov rcx, qword [rax]
test rcx, rcx
je 0x140072dc5
mov rax, rcx
lock dec dword [rcx]
jne 0x140072dc5
mov rcx, rax
mov qword [rsp + 0x38], rax
call fcn.140033bc0
mov rcx, qword [rsp + 0x38]
call fcn.14009f888
jmp 0x140072dc5
lea r14, [rsp + 0xe8]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [r14], rax
lea rdx, [r13 + 0x50]
mov rcx, r14
call fcn.14005c800
mov rcx, qword [r13 + 0x58]
call fcn.14007e8b0
mov rcx, r14
call fcn.14005c7b0
jmp 0x140073190
cmp qword [rsp + 0x38], rbp
jb 0x140072fee
jl 0x140072ff1
je 0x1400738f2
shl qword [rsp + 0x38], 3
shl rbp, 3
mov rcx, qword [r12 + rbp]
test rcx, rcx
je 0x1400738e7
lock dec dword [rcx]
jne 0x1400738e7
mov rax, qword [rcx + 0x10]
call qword [0x14012df40]
add rbp, 8
cmp qword [rsp + 0x38], rbp
jne 0x1400738cf
test r15, r15
js 0x140072feb
je 0x140073a41
shl r15, 3
xor ebx, ebx
mov rcx, qword [r12 + rbx]
test rcx, rcx
je 0x14007391f
lock dec dword [rcx]
jne 0x14007391f
mov rax, qword [rcx + 0x10]
call qword [0x14012df40]
add rbx, 8
cmp r15, rbx
jne 0x140073907
jmp 0x140073a41
cmp qword [rsp + 0x38], rbp
jb 0x140072fd9
jl 0x140072fd3
je 0x14007396d
shl qword [rsp + 0x38], 3
shl rbp, 3
mov rcx, qword [r12 + rbp]
test rcx, rcx
je 0x140073962
lock dec dword [rcx]
jne 0x140073962
mov rax, qword [rcx + 0x10]
call qword [0x14012df40]
add rbp, 8
cmp qword [rsp + 0x38], rbp
jne 0x14007394a
test r15, r15
js 0x140072fd6
je 0x1400727ec
shl r15, 3
xor ebx, ebx
mov rcx, qword [r12 + rbx]
test rcx, rcx
je 0x14007399a
lock dec dword [rcx]
jne 0x14007399a
mov rax, qword [rcx + 0x10]
call qword [0x14012df40]
add rbx, 8
cmp r15, rbx
jne 0x140073982
jmp 0x1400727ec
cmp qword [rsp + 0x38], rbx
jb 0x140072ffd
mov r14, qword [r12 + rbx*8]
test r14, r14
je 0x140072ff7
mov qword [r12 + rbx*8], 0
mov rax, qword [r14 + 8]
mov rcx, r14
call qword [0x14012df40]
lock dec dword [r14]
jne 0x1400739e8
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [0x14012df40]
inc rbx
xor eax, eax
cmp rbx, qword [rsp + 0x38]
cmove rbx, rax
cmp rbx, r15
jne 0x1400739a8
cmp r15, rbp
jbe 0x1400738b2
cmp qword [rsp + 0x38], r15
jb 0x140072ffa
cmp rbp, r15
jg 0x140072ff4
shl r15, 3
shl rbp, 3
mov rcx, qword [r12 + rbp]
test rcx, rcx
je 0x140073a38
lock dec dword [rcx]
jne 0x140073a38
mov rax, qword [rcx + 0x10]
call qword [0x14012df40]
add rbp, 8
cmp r15, rbp
jne 0x140073a20
lea rcx, fcn.140063060
mov rdx, r12
xor r8d, r8d
call fcn.140061980
test rdi, rdi
mov r15, qword [rsp + 0x48]
movabs r12, 0xfffffffc00000000
je 0x140071d9b
jmp 0x14007328e