Function at 0x140070e20
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, 0x238
movaps xmmword [rsp + 0x220], xmm10
movaps xmmword [rsp + 0x210], xmm9
movaps xmmword [rsp + 0x200], xmm8
movaps xmmword [rsp + 0x1f0], xmm7
movaps xmmword [rsp + 0x1e0], xmm6
mov r15, rcx
mov rax, qword [0x14013b040]
xor rax, rsp
mov qword [rsp + 0x1d8], rax
mov qword [rsp + 0x140], 0xa
mov al, byte [0x14014c88a]
test al, al
jne 0x140073c7f
mov qword [rsp + 0x140], 0xa
mov al, byte [0x14014c88a]
test al, al
jne 0x140073cc5
mov rcx, qword [r15 + 0x48]
test rcx, rcx
jne 0x140073ba1
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
mov rcx, r15
call qword [0x14012fc00]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x10]
mov rcx, rax
mov rdx, r15
mov rax, r8
call qword [0x14012fc00]
mov eax, dword [0x14014cca8]
test eax, eax
je 0x140070fb4
mov rax, qword [r15 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140070f01
cmp dword [r15 + 0x50], 0
je 0x140070fb4
mov rcx, qword [0x14014cc98]
test rcx, rcx
je 0x140073b7e
lea rdi, [rsp + 0x188]
mov rdx, rdi
mov r8d, 2
call fcn.140017800
mov rax, qword [rdi]
mov qword [rsp + 0x88], rax
mov al, 1
mov qword [rsp + 0x80], rax
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
mov eax, dword [0x140149990]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x128]
mov qword [rsp + 0x70], rcx
lea rax, [rax + 0x150]
mov qword [rsp + 0x98], rax
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
movaps xmm6, xmmword [0x14011c0c0]
movsd xmm7, qword [0x14012b728]
movsd xmm8, qword [0x1401293f0]
movsd xmm9, qword [0x1401293e8]
xorps xmm10, xmm10
mov qword [rsp + 0x48], r15
jmp 0x14007164e
xor eax, eax
mov qword [rsp + 0x88], rax
xor eax, eax
jmp 0x140070f34
lea rdi, [rax + 0x2b0]
mov ebx, 7
cmp qword [rax + 0x2b0], 0
jne 0x1400712ee
jmp 0x140072f5b
lea rdi, [rax + 0x250]
mov ebx, 6
cmp qword [rax + 0x250], 0
jne 0x1400712ee
jmp 0x140073096
lea rdi, [rax + 0x1f0]
mov ebx, 5
cmp qword [rax + 0x1f0], 0
jne 0x1400712ee
jmp 0x140072f86
lea rdi, [rax + 0x190]
mov ebx, 4
cmp qword [rax + 0x190], 0
jne 0x1400712ee
jmp 0x140072fb2
lea rdi, [rax + 0x130]
mov ebx, 3
cmp qword [rax + 0x130], 0
jne 0x1400712ee
jmp 0x14007306d
lea rdi, [rax + 0xd0]
mov ebx, 2
cmp qword [rax + 0xd0], 0
jne 0x1400712ee
jmp 0x140072fdb
lea rdi, [rax + 0x70]
mov ebx, 1
cmp qword [rax + 0x70], 0
jne 0x1400712ee
jmp 0x140073004
lea rdi, [rax + 0x10]
xor ebx, ebx
cmp qword [rdi], 0
jne 0x1400712ee
jmp 0x14007302d
mov rcx, r14
call fcn.140057390
jmp 0x140071375
mov r8d, dword [r14 + 0x20]
cmp r8, 0x7f
ja 0x140072e00
mov r15, qword [r14]
mov rdx, qword [r15 + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140072e00
cmp rax, qword [r15 + 8]
jb 0x140072e00
lea rcx, [rdx - 3]
call fcn.1400d07c0
add qword [r15 + 0x18], 0xfffffffffffffffd
mov al, byte [r14 + 0x20]
mov rcx, qword [r14 + 0x18]
mov byte [rcx], al
mov al, 2
mov r15, qword [rsp + 0x48]
mov byte [r14 + 0x24], al
mov qword [r14 + 0x18], 0
jmp 0x140071387
cmp qword [rdi], 0
je 0x140072eb5
test rdi, rdi
je 0x1400714c8
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14009c010]
cmp rax, rdx
jne 0x140073891
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
cmp rax, qword [rdi + 0x50]
je 0x1400713cb
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [fcn.140077200]
cmp rax, rdx
jne 0x1400738c8
lea rdx, [rsp + 0x188]
call fcn.140077200
mov r14, qword [rsp + 0x188]
test r14, r14
je 0x140071397
mov r12, qword [rsp + 0x190]
cmp byte [r14 + 0x24], 0
jne 0x140071387
cmp qword [r14 + 0x10], 0
jne 0x140071278
mov rax, qword [r14 + 0x18]
test rax, rax
jne 0x140071285
mov byte [r14 + 0x24], 1
test r12, r12
je 0x140071397
mov rcx, r12
mov rdx, r14
call fcn.1400625e0
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14009c010]
cmp rax, rdx
jne 0x14007389c
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
movabs r12, 0x7fffffffffffffff
mov qword [rdi + 0x50], rax
cmp byte [rdi + 0x48], 1
je 0x1400739ae
cmp ebx, 6
ja 0x1400714c8
mov eax, ebx
inc ebx
inc rax
mov rcx, qword [rsp + 0x70]
mov rcx, qword [rcx]
lea rdx, [rax + rax*2]
shl rax, 7
shl rdx, 5
lea rdi, [rcx + rdx]
add rdi, 0x10
mov edx, 0x400
lea r8, [0x14013d0e8]
mov ebp, esi
mov r9d, 1
mov ecx, ebx
shl r9d, cl
bt ebp, ebx
jb 0x1400712e4
add rdx, 0xffffffffffffff80
sub r8, 0xffffffffffffff80
add rdi, 0x60
inc ebx
cmp rax, rdx
jne 0x14007140f
jmp 0x1400714c8
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
test rax, rax
je 0x140072da2
mov esi, edi
mov rdx, qword [rax + 8]
cmp byte [rdx + 0xc], 0
jne 0x1400716f8
mov rcx, qword [0x14013be18]
mov byte [rdx + 0xc], 1
mov rdx, qword [rax + 8]
mov r8d, dword [rcx + 0x10]
cmp dword [rdx + 8], r8d
jne 0x1400738db
test sil, 1
jne 0x140071267
test sil, 2
jne 0x14007124e
test sil, 4
jne 0x14007122f
test sil, 8
jne 0x140071210
test sil, 0x10
jne 0x140071109
test sil, 0x20
jne 0x1400710ea
test sil, 0x40
jne 0x1400710cb
test sil, sil
js 0x1400710ac
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
mov rax, qword [rax + 8]
mov byte [rax + 0xc], 0
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x1400716f8
mov rcx, r14
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0xb0]
mov r9, r15
call qword [0x14012fc00]
jmp 0x140071556
mov rax, qword [r15 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140072cf3
mov edi, dword [r15 + 0x50]
cmp dword [r15 + 0x54], edi
jne 0x140073160
cmp qword [rsp + 0xf0], 0
jne 0x140073383
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rcx
test rax, rax
jne 0x140071c6d
mov sil, 1
cmp byte [rsp + 0x118], 1
jne 0x140071645
cmp byte [rsp + 0x100], 1
jne 0x140071645
mov rax, qword [rsp + 0x98]
mov rdi, qword [rax]
test rdi, rdi
je 0x140071645
mov rax, qword [rdi + 0x10]
test rax, rax
js 0x1400732ae
cmp dword [rdi + 0x24], 1
jne 0x1400737fb
cmp qword [rdi + 0x18], 0
jne 0x1400736e7
movabs rax, 0xbfffffffffffffff
lock and qword [rdi + 0x10], rax
mov rbx, qword [rsp + 0x108]
cmp qword [rdi + 0x18], 0
jne 0x14007370d
mov rax, qword [rdi + 0x10]
movabs rcx, 0x4000000000000000
and rax, rcx
movabs rcx, 0xffffffffffffff
and rbx, rcx
or rbx, rax
mov qword [rdi + 0x10], rbx
dec dword [rdi + 0x24]
test sil, sil
je 0x1400728c1
movzx eax, byte [r15 + 0x30]
test al, al
jne 0x1400728c1
mov rax, qword [r15]
mov rax, qword [rax + 0x20]
lea rcx, [0x1400742d0]
cmp rax, rcx
jne 0x1400724d7
mov rax, qword [r15 + 0x70]
mov rax, qword [rax + 0x18]
mov al, byte [rax]
test al, al
jne 0x1400728c1
mov rsi, qword [r15 + 0x38]
lea rdi, [rsi + 0x60]
mov rcx, rdi
call rbp
test al, al
je 0x140072c9b
mov rax, qword [rsi + 0x68]
test rax, rax
jne 0x14007289b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0x110], xmm6
mov byte [rsp + 0x100], 0
mov byte [rsp + 0x118], 0
mov qword [rsp + 0x140], 0xa
movzx eax, byte [0x14014c88a]
test al, al
jne 0x140073792
mov edi, dword [0x14013d0e4]
test edi, edi
jne 0x14007143b
cmp byte [rsp + 0x118], 1
je 0x1400735c1
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
lea rcx, [0x1400742c0]
cmp rax, rcx
jne 0x140072613
mov rdi, qword [r15 + 0x70]
mov rax, qword [rdi]
lea rcx, [fcn.1400d19c0]
cmp qword [rax + 0x30], rcx
jne 0x140072820
mov qword [rsp + 0x170], r13
mov rax, qword [rdi]
mov rax, qword [rax + 0x28]
lea rcx, [0x14009cd90]
cmp rax, rcx
jne 0x14007252a
cmp byte [rdi - 8], 1
mov rax, r12
jne 0x14007178f
mov rax, qword [rdi - 0x18]
cvtsi2sd xmm0, qword [rax + 0x30]
mulsd xmm0, xmm7
ucomisd xmm0, xmm8
mov rcx, r12
mov eax, 0
cmovb rcx, rax
ucomisd xmm9, xmm0
maxsd xmm0, xmm8
cvttsd2si rax, xmm0
cmovb rax, rcx
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x128], r13
mov rax, qword [fcn.1400659c0]
lea rcx, [0x140065a70]
cmp rax, rcx
jne 0x140073200
mov qword [rsp + 0x188], 0
lea rcx, [rsp + 0x188]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x188]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140073733
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014cbf8]
mov r14, rax
mov qword [rsp + 0xf0], rax
mov rax, qword [rdi]
lea rcx, [fcn.140107320]
cmp qword [rax + 0x50], rcx
jne 0x140073626
mov eax, dword [0x140152c2c]
mov ecx, dword [0x140149990]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140072cb7
cmp byte [0x140152c28], 0
je 0x140073458
mov eax, dword [0x140152c38]
mov ecx, dword [0x140149990]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140072c6a
mov rax, qword [rdi + 8]
test rax, rax
jne 0x140071881
mov rax, qword [0x140152c30]
add rax, 0x3938700
cmovo rax, r12
cmp rax, r14
mov ebx, 0x3938700
mov r8d, 0xf4240
cmovl rbx, r8
add rbx, r14
cmovo rbx, r12
mov rax, rbx
movabs rcx, 0x431bde82d7b634db
imul rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x12
add rdx, rax
imul rcx, rdx, 0xf4240
mov rax, rbx
sub rax, rcx
test rbx, rbx
mov edx, 0
cmovg rdx, r8
mov ecx, 0
test rax, rax
je 0x1400718eb
sub rdx, rax
mov rcx, rdx
lea rax, [rbx + rcx]
sar rax, 0x3f
movabs rdx, 0x8000000000000000
xor rax, rdx
add rbx, rcx
cmovo rbx, rax
xor eax, eax
cmp rbx, r14
setns al
add rax, r12
sub rbx, r14
cmovo rbx, rax
mov qword [rsp + 0x128], rbx
mov rax, qword [rsp + 0x170]
cmp rax, rbx
cmovl rbx, rax
mov rax, qword [rdi]
mov rax, qword [rax + 0x48]
lea rcx, [0x14007a2b0]
cmp rax, rcx
jne 0x1400726e1
lea rsi, [r12 + rbx]
add rsi, 2
cmp rsi, 2
jb 0x14007286c
mov rax, rbx
movabs rcx, 0x20c49ba5e353f7cf
imul rcx
mov r14, rdx
mov rax, rdx
shr rax, 0x3f
sar r14, 7
add r14, rax
xor eax, eax
test r14, r14
setns al
neg eax
mov rcx, r14
shr rcx, 0x20
cmovne r14d, eax
mov r12, qword [rdi + 0x10]
mov qword [rsp + 0x140], r13
mov rax, qword [fcn.1400659c0]
lea rcx, [0x140065a70]
cmp rax, rcx
jne 0x14007318a
mov qword [rsp + 0x188], 0
lea rcx, [rsp + 0x188]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x188]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400736bd
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014cbf8]
mov qword [rsp + 0x140], rax
mov rcx, qword [r12]
mov edx, r14d
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x14007270a
mov byte [rdi + 0x20], 0
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov qword [rsp + 0x170], 0xa
movzx eax, byte [0x14014c88a]
test al, al
jne 0x140073844
movzx eax, byte [r15 + 0x30]
test al, al
jne 0x1400726da
mov rax, qword [r15]
mov rax, qword [rax + 0x20]
lea rcx, [0x1400742d0]
cmp rax, rcx
jne 0x1400724f0
mov rax, qword [r15 + 0x70]
mov rax, qword [rax + 0x18]
mov al, byte [rax]
test al, al
jne 0x1400726da
mov rsi, qword [r15 + 0x38]
lea rdi, [rsi + 0x60]
mov rcx, rdi
call rbp
test al, al
je 0x140072ca9
mov rax, qword [rsi + 0x68]
test rax, rax
jne 0x140073125
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp byte [rsp + 0x80], 0
je 0x140071ae1
cmp byte [rsp + 0x118], 1
je 0x14007346e
mov qword [rsp + 0x108], 0
xor eax, eax
mov byte [rsp + 0x110], al
mov byte [rsp + 0x100], al
mov byte [rsp + 0x118], 1
mov rax, qword [r15 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140072eee
mov edi, dword [r15 + 0x50]
cmp dword [r15 + 0x54], edi
jne 0x1400734fb
movaps xmmword [rsp + 0xf0], xmm6
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
lea rcx, [0x1400742c0]
cmp rax, rcx
jne 0x1400726ab
mov rdi, qword [r15 + 0x70]
mov rax, qword [rdi]
mov rax, qword [rax + 0x18]
lea rcx, [0x14009b590]
cmp rax, rcx
jne 0x140072540
lea rax, [rsp + 0x1b8]
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
mov rbx, qword [rdi - 0x18]
mov qword [rsp + 0x190], rbx
mov byte [rsp + 0x1c8], 0
movups xmmword [rax - 0x10], xmm10
movups xmmword [rax - 0x20], xmm10
lea rsi, fcn.1400883c0
mov qword [rsp + 0x188], rsi
mov dword [rsp + 0x1d0], 0
add rbx, 0x68
mov rcx, rbx
call rbp
test al, al
je 0x140072605
add rdi, 0xffffffffffffffc0
mov rcx, rdi
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0x188]
mov r9, r15
call fcn.1400742f0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x188], rsi
cmp dword [rsp + 0x1d0], 0
jg 0x140072485
lea rax, [0x14011b438]
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x1b0]
mov rax, rdx
lea rbx, [rsp + 0x1b8]
and rax, 1
jne 0x14007317d
mov rsi, rdx
shr rsi, 1
mov cl, 1
cmp rdx, 2
jae 0x140072abf
lea rdx, [rsp + 0x1b8]
test rax, rax
jne 0x14007322b
test cl, cl
je 0x1400729c8
test rax, rax
jne 0x140073238
mov qword [rsp + 0x1b0], 0
cmp byte [rsp + 0x1c8], 0
jne 0x140072ef8
mov rsi, qword [rsp + 0x198]
test rsi, rsi
jne 0x140072559
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x140072634
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0xe8]
call fcn.1400572d0
mov rcx, qword [r15 + 0x38]
movapd xmm0, xmmword [rsp + 0xf0]
movupd xmmword [rsp + 0xd8], xmm0
movaps xmmword [rsp + 0xf0], xmm10
lea rdx, [rsp + 0x188]
lea r8, [rsp + 0xd8]
call fcn.140075550
mov r8, qword [rsp + 0xf0]
test r8, r8
jne 0x1400734c6
mov qword [rsp + 0x140], r8
mov qword [rsp + 0xf0], 0
test r8, r8
jne 0x140073480
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x188], 0
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0xf0], rax
test rcx, rcx
jne 0x14007350b
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0xd0], rax
lea rcx, [rsp + 0xd0]
call fcn.1400572d0
cmp byte [rsp + 0x80], 0
je 0x140071e04
cmp byte [rsp + 0x118], 1
jne 0x140071de0
cmp byte [rsp + 0x100], 1
jne 0x140071de0
mov rax, qword [rsp + 0x98]
mov rsi, qword [rax]
test rsi, rsi
je 0x140071de0
mov rax, qword [rsi + 0x10]
test rax, rax
js 0x14007329d
cmp dword [rsi + 0x24], 1
jne 0x140073667
cmp qword [rsi + 0x18], 0
jne 0x1400735da
movabs rax, 0xbfffffffffffffff
lock and qword [rsi + 0x10], rax
mov rdi, qword [rsp + 0x108]
cmp qword [rsi + 0x18], 0
jne 0x140073600
mov rax, qword [rsi + 0x10]
movabs rcx, 0x4000000000000000
and rax, rcx
movabs rcx, 0xffffffffffffff
and rdi, rcx
or rdi, rax
mov qword [rsi + 0x10], rdi
dec dword [rsi + 0x24]
mov qword [rsp + 0x108], 0
mov byte [rsp + 0x110], 0
mov byte [rsp + 0x100], 0
mov byte [rsp + 0x118], 1
movaps xmmword [rsp + 0xc0], xmm6
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
lea rcx, [0x1400742c0]
cmp rax, rcx
jne 0x140072509
mov r14, qword [r15 + 0x70]
mov rdi, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0xf8]
mov qword [rsp + 0xb0], rdi
movaps xmmword [rsp + 0xf0], xmm10
mov qword [rsp + 0xb8], rbx
mov rax, qword [r14]
mov rax, qword [rax + 0x20]
lea rcx, [0x140080c10]
cmp rax, rcx
jne 0x1400714e4
test rdi, rdi
jne 0x14007244a
lea rsi, [r13 - 0xaa]
mov rbx, r13
mov qword [rsp + 0x40], r13
lea rcx, fcn.1400883c0
lea rax, [rsp + 0x1b8]
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm6
mov r13, qword [r14 - 0x18]
mov qword [rsp + 0x190], r13
mov byte [rsp + 0x1c8], 0
movups xmmword [rax - 0x10], xmm10
movups xmmword [rax - 0x20], xmm10
mov qword [rsp + 0x188], rcx
mov dword [rsp + 0x1d0], 0
movaps xmmword [rsp + 0x140], xmm6
movaps xmmword [rsp + 0x150], xmm6
mov byte [rsp + 0x140], 0
mov byte [rsp + 0x158], 0
mov qword [rsp + 0x160], 0
add r13, 0x68
mov rcx, r13
call rbp
test al, al
je 0x1400726cc
cmp byte [r14 - 5], 1
mov qword [rsp + 0x58], rdi
je 0x1400733f9
cmp byte [r14 - 0x27], 0
je 0x140073445
mov rax, qword [r14 - 0x18]
mov rcx, qword [rax + 0x118]
dec rcx
cmp byte [r14 - 0x28], 0
mov qword [rax + 0x118], rcx
je 0x14007242e
mov rdx, qword [rax + 0x80]
cmp rdx, qword [rax + 0x88]
je 0x140071f5b
cmp rcx, qword [rax + 0x108]
jae 0x14007243a
mov word [rax + 0xb8], 0
cmp byte [r14 - 0x25], 1
jne 0x140071f70
mov byte [r14 - 0x25], 0
mov qword [rsp + 0x68], r13
cmp byte [r14 - 0x27], 1
jne 0x140071f81
mov byte [r14 - 0x27], 0
lea r9, [r14 - 0x40]
mov r13, qword [r14 - 0x18]
test rdi, rdi
jne 0x140072277
mov rbp, qword [r13 + 0x98]
mov r10, qword [r13 + 0x120]
test rbp, rbp
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x78], rbx
jne 0x1400723cb
xor ebp, ebp
mov r12, qword [r13 + 0xa8]
mov r11, qword [r13 + 0x110]
mov rbx, qword [r13 + 0x120]
mov rsi, qword [r13 + 0x118]
add r12, qword [r13 + 0xa0]
je 0x14007233a
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x14007233a
mov rax, qword [r13 + 0x80]
cmp rax, qword [r13 + 0x88]
je 0x14007339c
mov cl, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x1400720ff
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x140063dc0]
cmp rdx, r8
je 0x1400720ed
lea rax, [0x14009d060]
cmp rdx, rax
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x90], r11
jne 0x1400738a7
mov eax, dword [rcx + 0x40]
test al, 1
jne 0x140072df9
mov r15, qword [rcx + 0x70]
test r15, r15
je 0x14007333b
mov edx, 1
lock xadd dword [r15], edx
test edx, edx
jle 0x140073338
mov qword [rsp + 0xa8], r10
cmp edx, 0x7fffffff
je 0x140073335
shr eax, 1
movzx edx, al
mov rax, qword [rcx + 0x70]
mov rax, qword [rax + 8]
mov rcx, r15
mov qword [rsp + 0xa0], rdx
call qword [0x14012fc00]
mov rdi, rax
lock dec dword [r15]
je 0x1400736b0
cmp rdi, 0x20
mov eax, 0x20
cmovae rdi, rax
sub rdi, qword [rsp + 0xa0]
mov eax, 0
cmovae rax, rdi
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0xa8]
mov r11, qword [rsp + 0x90]
lea rcx, [r12 + rax]
dec rcx
add r12, rax
cmp rcx, 1
adc r12, 0xffffffffffffffff
sub rsi, rbx
add rbp, r10
cmp r11, rbp
cmovb rbp, r11
cmp rbp, rbx
cmovbe rbp, rbx
add rsi, r12
add rsi, rbp
mov rax, qword [r13 + 0x108]
cmp rax, rsi
cmovb rsi, rax
mov eax, 0x100
cmp rsi, rax
cmovae rsi, rax
mov rax, qword [r14 - 0x18]
mov rcx, qword [rax + 0x1c0]
cmp rsi, rcx
jae 0x1400723ab
dec rcx
mov qword [rax + 0x1c0], rcx
mov rcx, qword [r14 - 0x18]
mov eax, 0x130
add rcx, rax
call qword [sym.imp.KERNEL32.dll_WakeConditionVariable]
movaps xmmword [rsp + 0xc0], xmm10
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x68]
call r13
mov rcx, qword [rsp + 0x160]
test rcx, rcx
jne 0x1400730bf
cmp byte [rsp + 0x158], 1
je 0x140072f26
lea rax, fcn.1400883c0
mov qword [rsp + 0x188], rax
cmp dword [rsp + 0x1d0], 0
jg 0x1400722e8
lea rax, [0x14011b438]
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x1b0]
mov rax, rdx
lea rdi, [rsp + 0x1b8]
and rax, 1
jne 0x140073170
mov rsi, rdx
shr rsi, 1
mov cl, 1
cmp rdx, 2
jae 0x140072a07
lea rdx, [rsp + 0x1b8]
test rax, rax
jne 0x14007319d
test cl, cl
je 0x14007282d
test rax, rax
jne 0x140073219
mov qword [rsp + 0x1b0], 0
cmp byte [rsp + 0x1c8], 0
jne 0x140072e87
mov rdi, qword [rsp + 0x198]
test rdi, rdi
jne 0x140072342
cmp qword [rsp + 0x58], 0
je 0x140071515
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0x130], rbx
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x138], rax
mov rcx, r13
lea rsi, [rsp + 0x188]
mov rdx, rsi
lea r8, [rsp + 0x140]
mov rdi, r9
lea r9, [rsp + 0x128]
call fcn.140081e60
mov rcx, rdi
lea rdx, [rsp + 0xc0]
mov r8, rsi
mov r9, r15
call fcn.1400742f0
xor ebx, ebx
xor eax, eax
mov qword [rsp + 0x78], rax
xor r14d, r14d
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14007218e
xor esi, esi
mov qword [rsp + 0x168], 0x9a
mov al, byte [0x14014c91a]
test al, al
jne 0x140073937
mov rax, qword [rsp + 0x190]
mov rcx, qword [rax + 0x1b0]
mov edx, 1
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x140073386
inc esi
cmp esi, dword [rsp + 0x1d0]
jge 0x1400721d2
jmp 0x1400722ea
xor r12d, r12d
jmp 0x1400720ff
mov r15, qword [rsp + 0x1a0]
mov rcx, rdi
cmp r15, rdi
je 0x140072394
mov rax, r15
add r15, 0xfffffffffffffff0
je 0x140073389
mov rsi, qword [r15]
test rsi, rsi
jne 0x140072b79
test rsi, rsi
jne 0x140072b9c
mov rcx, qword [r15]
test rcx, rcx
jne 0x14007398d
cmp r15, rdi
jne 0x140072352
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rdi
call fcn.14009d26c
mov r15, qword [rsp + 0x48]
jmp 0x14007225d
mov rcx, r9
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0x188]
mov r9, r15
call fcn.1400742f0
jmp 0x14007216c
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x140071fb3
mov rax, qword [r13 + 0x80]
cmp rax, qword [r13 + 0x88]
je 0x14007339c
cmp byte [rax + 0x10], 0
jne 0x140071fb5
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x140063dc0]
cmp rdx, r8
jne 0x140073a58
lea rcx, [rax + rbp]
dec rcx
add rbp, rax
cmp rcx, 1
adc rbp, 0xffffffffffffffff
jmp 0x140071fb5
dec qword [rax + 0x120]
jmp 0x140071f3e
movzx ecx, word [rdx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x140071f64
mov r13, rdi
add rdi, 0x18
movaps xmmword [rsp + 0xb0], xmm10
mov rcx, rdi
call rbp
test al, al
je 0x14007247a
mov rsi, r13
mov qword [rsp + 0x40], r13
lea rcx, fcn.1400883c0
mov rdi, r13
jmp 0x140071e86
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072463
xor esi, esi
mov qword [rsp + 0x128], 0x9a
mov al, byte [0x14014c91a]
test al, al
jne 0x1400739e1
mov rax, qword [rsp + 0x190]
mov rcx, qword [rax + 0x1b0]
mov edx, 1
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x1400736e4
inc esi
cmp esi, dword [rsp + 0x1d0]
jge 0x140071bd1
jmp 0x140072487
lea rcx, [0x140076f30]
cmp rax, rcx
jne 0x1400738f5
mov al, byte [r15 + 0x78]
jmp 0x14007167c
lea rcx, [0x140076f30]
cmp rax, rcx
jne 0x140073903
mov al, byte [r15 + 0x78]
jmp 0x140071a72
lea rcx, [0x1400742c0]
cmp rax, rcx
je 0x140071e23
mov rcx, r15
call qword [0x14012fc00]
mov r14, rax
jmp 0x140071e27
mov rcx, rdi
lea rdx, [rsp + 0x170]
call qword [0x14012fc00]
jmp 0x140071797
mov rcx, rdi
lea rdx, [rsp + 0xf0]
mov r8, r15
call qword [0x14012fc00]
jmp 0x140071c5c
mov r15, qword [rsp + 0x1a0]
mov rcx, rsi
cmp r15, rsi
je 0x1400725aa
mov rax, r15
add r15, 0xfffffffffffffff0
je 0x140073389
mov rdi, qword [r15]
test rdi, rdi
jne 0x1400725c1
mov qword [r15], 0
test rdi, rdi
jne 0x1400725e8
mov rcx, qword [r15]
test rcx, rcx
jne 0x140073a37
cmp r15, rsi
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jne 0x140072569
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rsi
call fcn.14009d26c
mov r15, qword [rsp + 0x48]
jmp 0x140071c5c
mov rbp, qword [rax - 8]
test rbp, rbp
je 0x14007257e
mov qword [r15], 0
mov al, byte [rdi + 0xd]
and al, 0x7f
cmp al, 2
je 0x1400731aa
lock dec dword [rbp + 0x18]
je 0x140072cfd
lock dec dword [rdi + 8]
jne 0x14007258a
mov rax, qword [rdi]
mov rax, qword [rax + 0x30]
mov rcx, rdi
mov edx, 1
call qword [0x14012fc00]
jmp 0x14007258a
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140071b93
lea rcx, [0x1400742c0]
cmp rax, rcx
je 0x14007171d
mov rcx, r15
call qword [0x14012fc00]
mov rdi, rax
jmp 0x140071721
mov al, byte [r15 + 0x30]
test al, al
jne 0x14007269e
mov rax, qword [r15]
mov rax, qword [rax + 0x20]
mov rcx, r15
call qword [0x14012fc00]
test al, al
jne 0x14007269e
mov rsi, qword [r15 + 0x38]
lea rdi, [rsi + 0x60]
mov rcx, rdi
call rbp
test al, al
je 0x140073117
mov rax, qword [rsi + 0x68]
test rax, rax
jne 0x14007324a
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
mov rcx, r15
call qword [0x14012fc00]
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x40]
mov rcx, rax
mov rax, rdx
call qword [0x14012fc00]
mov rax, qword [rsp + 0xf0]
jmp 0x1400715a5
lea rcx, [0x1400742c0]
cmp rax, rcx
je 0x140071b20
mov rcx, r15
call qword [0x14012fc00]
mov rdi, rax
jmp 0x140071b24
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140071f03
xor esi, esi
jmp 0x1400715b1
lea rcx, [0x140008380]
cmp rax, rcx
jne 0x140073926
lea rcx, [rdi + 0x10]
mov rdx, rbx
call fcn.140057870
test al, al
jne 0x140071a29
jmp 0x1400727c5
mov ebp, eax
mov rax, qword [rsp + 0x140]
cmp rsi, 2
jb 0x140073765
lea rcx, [rax + rbx]
sar rcx, 0x3f
btc rcx, 0x3f
add rax, rbx
cmovo rax, rcx
mov r13, rax
mov rax, qword [fcn.1400659c0]
lea rcx, [0x140065a70]
cmp rax, rcx
jne 0x1400732bf
mov qword [rsp + 0x188], 0
lea rcx, [rsp + 0x188]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x188]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140073ddf
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014cbf8]
cmp rax, r13
movabs r13, 0xaaaaaaaaaaaaaaaa
jle 0x1400719ff
cmp ebp, 0x102
movabs r12, 0x7fffffffffffffff
jne 0x140073a8e
mov byte [rdi + 0x20], 1
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call fcn.14007a040
mov rcx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x170]
cmp rax, rcx
jle 0x140071a29
setns dl
movzx r8d, dl
add r8, r12
mov rdx, rax
sub rdx, rcx
lea rcx, [r12 + rcx + 2]
cmovo rdx, r8
cmp rcx, 2
cmovb rdx, r12
cmp rax, r12
cmove rdx, r12
mov rax, qword [rdi]
mov rax, qword [rax + 0x48]
mov rcx, rdi
call qword [0x14012fc00]
jmp 0x140071a29
mov rcx, rdi
call fcn.1400d19c0
jmp 0x140071a29
lea rdi, [rdx + rsi*8]
add rdi, 0xfffffffffffffff8
neg rsi
test rdi, rdi
je 0x140073389
mov rcx, qword [rdi]
test rcx, rcx
je 0x140072853
lock dec dword [rcx + 8]
je 0x140073da8
add rdi, 0xfffffffffffffff8
inc rsi
jne 0x140072838
mov rax, qword [rsp + 0x1b0]
and eax, 1
jmp 0x140072229
lea r14, [r12 + 1]
test rbx, rbx
cmovns r14, r12
jmp 0x14007197a
lock dec dword [rcx + 8]
jne 0x140072911
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x14012fc00]
jmp 0x140072911
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x140073285
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
jne 0x1400716af
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
mov rcx, r15
call qword [0x14012fc00]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov rdx, r15
mov rax, r8
call qword [0x14012fc00]
mov rcx, qword [r15 + 0x48]
test rcx, rcx
jne 0x140073bb3
mov rcx, qword [r15 + 0x10]
mov qword [r15 + 0x10], 0
test rcx, rcx
mov rsi, qword [rsp + 0x88]
jne 0x14007287d
mov qword [rsp + 0x140], 0xa
mov al, byte [0x14014c88a]
test al, al
jne 0x140073d0b
mov qword [rsp + 0x140], 0xa
mov al, byte [0x14014c88a]
test al, al
jne 0x140073d51
mov ecx, dword [0x14013d0e4]
test ecx, ecx
jne 0x140073a97
test rsi, rsi
jne 0x1400729a7
mov rcx, qword [rsp + 0x1d8]
xor rcx, rsp
call fcn.14009f1f0
movaps xmm6, xmmword [rsp + 0x1e0]
movaps xmm7, xmmword [rsp + 0x1f0]
movaps xmm8, xmmword [rsp + 0x200]
movaps xmm9, xmmword [rsp + 0x210]
movaps xmm10, xmmword [rsp + 0x220]
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsi + 8]
mov rcx, rsi
call qword [0x14012fc00]
lock dec dword [rsi]
jne 0x140072958
mov rax, qword [rsi + 0x10]
mov rcx, rsi
call qword [0x14012fc00]
jmp 0x140072958
lea rdi, [rdx + rsi*8]
add rdi, 0xfffffffffffffff8
neg rsi
test rdi, rdi
je 0x140073389
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400729ee
lock dec dword [rcx + 8]
je 0x140073e20
add rdi, 0xfffffffffffffff8
inc rsi
jne 0x1400729d3
mov rax, qword [rsp + 0x1b0]
and eax, 1
jmp 0x140071c28
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x50], rbx
shl rsi, 3
xor ebx, ebx
mov r14, qword [rdi + rbx]
test r14, r14
je 0x140072a36
mov eax, 1
lock xadd dword [r14 + 8], eax
cmp eax, 0x7fffffff
je 0x14007333e
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x140072a60
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x140073341
mov rcx, r14
call fcn.14002d920
mov rcx, qword [rsp + 0x190]
cmp byte [rcx + 0x1a0], 1
je 0x140073c6e
test r14, r14
je 0x140072a8d
lock dec dword [r14 + 8]
je 0x140073e06
add rbx, 8
cmp rsi, rbx
jne 0x140072a17
mov rcx, qword [rsp + 0x1b0]
mov rsi, rcx
shr rsi, 1
mov eax, ecx
and eax, 1
cmp rcx, 2
setb cl
mov rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x40]
jmp 0x140072210
shl rsi, 3
xor r14d, r14d
mov rdi, qword [rbx + r14]
test rdi, rdi
je 0x140072ae4
mov eax, 1
lock xadd dword [rdi + 8], eax
cmp eax, 0x7fffffff
je 0x140073a91
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x140072b0e
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x140073a94
mov rcx, rdi
call fcn.14002d920
mov rcx, qword [rsp + 0x190]
cmp byte [rcx + 0x1a0], 1
je 0x140073d97
test rdi, rdi
je 0x140072b3a
lock dec dword [rdi + 8]
je 0x140073f2e
add r14, 8
cmp rsi, r14
jne 0x140072ac6
mov rcx, qword [rsp + 0x1b0]
mov rsi, rcx
shr rsi, 1
mov eax, ecx
and eax, 1
cmp rcx, 2
setb cl
jmp 0x140071c0f
lock dec dword [rdx + 0x18]
je 0x140072bc0
lock dec dword [rsi + 8]
jne 0x14007237b
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, 1
call qword [0x14012fc00]
jmp 0x14007237b
lea rcx, [rdx + 0x20]
mov qword [rsp + 0x40], rcx
mov r13, rdx
call rbp
test al, al
je 0x140073dbf
lea rcx, [r13 + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, qword [rsp + 0x40]
mov r12, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call r12
mov rcx, qword [rsp + 0x40]
call rbp
test al, al
je 0x140073dcf
mov rax, qword [r13 + 0x40]
mov qword [rsp + 0x68], rax
mov rax, qword [r13 + 0x48]
mov qword [rsp + 0x50], rax
movups xmmword [r13 + 0x40], xmm10
mov r12, qword [r13 + 0x50]
mov rbp, qword [r13 + 0x58]
movups xmmword [r13 + 0x50], xmm10
mov rcx, qword [rsp + 0x40]
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call r13
mov rcx, r12
mov rdx, r12
cmp r12, rbp
jne 0x140073e53
lea rcx, fcn.140067cf0
mov rdx, qword [rsp + 0x68]
xor r8d, r8d
call fcn.140066550
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x140072372
lea rcx, [0x140152c38]
call fcn.14009d484
cmp dword [0x140152c38], 0xffffffff
jne 0x140071871
mov qword [0x140152c30], r14
lea rcx, [0x140152c38]
call fcn.14009d418
jmp 0x140071871
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140071699
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140071a8f
lea rcx, [0x140152c2c]
call fcn.14009d484
cmp dword [0x140152c2c], 0xffffffff
jne 0x14007183f
lea rcx, str.DelayFirstWorkerWake
call fcn.14007a510
mov byte [0x140152c28], al
lea rcx, [0x140152c2c]
call fcn.14009d418
jmp 0x14007183f
mov edi, 3
jmp 0x14007156c
lea r14, [rbp + 0x20]
mov rcx, r14
mov rbx, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call rbx
test al, al
je 0x140073e37
lea rcx, [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
mov r12, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call r12
mov rcx, r14
call rbx
test al, al
je 0x140073e45
mov rax, qword [rbp + 0x40]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x58], rax
movups xmmword [rbp + 0x40], xmm10
mov rbx, qword [rbp + 0x50]
mov r13, qword [rbp + 0x58]
movups xmmword [rbp + 0x50], xmm10
mov rcx, r14
call r12
mov rcx, rbx
mov rax, r13
mov rbp, rbx
cmp rbx, r13
jne 0x140073f48
lea rcx, fcn.140067cf0
mov rdx, qword [rsp + 0x40]
xor r8d, r8d
call fcn.140066550
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
jmp 0x140072585
mov rax, qword [0x14013be18]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x14012fc00]
lea rcx, [rax + 0x6218]
lea rdx, [0x14013d0d8]
mov qword [rax + 0x6218], rdx
mov qword [rax + 0x6220], rax
mov rax, qword [rsp + 0x70]
mov qword [rax], rcx
mov esi, dword [0x14013d0e4]
and esi, edi
je 0x1400716f8
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
jmp 0x14007144e
xor eax, eax
jmp 0x1400720ed
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 0x1400712ce
mov rcx, qword [rsp + 0x190]
call fcn.1400d1c00
cmp qword [rsp + 0x1b0], 0
je 0x14007224c
lea rcx, [rsp + 0x1b0]
call fcn.1401010c0
jmp 0x14007224c
mov ebp, dword [0x14013d0e4]
and ebp, esi
test ebp, r9d
je 0x140072ee7
mov cl, byte [r8 + rax]
test cl, 1
je 0x140072ee7
add r8, rax
lea rcx, [0x14013d0d8]
mov rdx, rdi
mov r9d, ebx
call fcn.140017450
mov esi, ebp
jmp 0x1400712ee
mov esi, ebp
jmp 0x140071423
mov edi, 3
jmp 0x140071af7
mov rcx, qword [rsp + 0x190]
call fcn.1400d1c00
cmp qword [rsp + 0x1b0], 0
je 0x140071c4b
lea rcx, [rsp + 0x1b0]
call fcn.1401010c0
jmp 0x140071c4b
mov rcx, qword [rsp + 0x150]
test rcx, rcx
je 0x140072f49
add rcx, 0x18
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x150], 0
lea rcx, [rsp + 0x140]
call fcn.140076f40
jmp 0x1400721b5
mov eax, dword [0x14013d0e4]
test al, al
jns 0x1400714c8
mov cl, byte [0x14013d468]
test cl, 1
je 0x1400714c8
and esi, eax
lea r8, [0x14013d468]
jmp 0x140073056
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 0x20
je 0x1400714b5
mov cl, byte [0x14013d368]
test cl, 1
je 0x1400714b5
lea r8, [0x14013d368]
jmp 0x140073056
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 0x10
je 0x1400714ab
mov cl, byte [0x14013d2e8]
test cl, 1
je 0x1400714ab
lea r8, [0x14013d2e8]
jmp 0x140073056
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 4
je 0x140071497
mov cl, byte [0x14013d1e8]
test cl, 1
je 0x140071497
lea r8, [0x14013d1e8]
jmp 0x140073056
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 2
je 0x14007148d
mov cl, byte [0x14013d168]
test cl, 1
je 0x14007148d
lea r8, [0x14013d168]
jmp 0x140073056
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 1
je 0x140071483
mov cl, byte [0x14013d0e8]
test cl, 1
je 0x140071483
lea r8, [0x14013d0e8]
xor ebx, ebx
lea rcx, [0x14013d0d8]
mov rdx, rdi
mov r9d, ebx
call fcn.140017450
jmp 0x1400712ee
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 8
je 0x1400714a1
mov cl, byte [0x14013d268]
test cl, 1
je 0x1400714a1
lea r8, [0x14013d268]
jmp 0x140073056
mov ecx, dword [0x14013d0e4]
and esi, ecx
test cl, 0x40
je 0x1400714bf
mov cl, byte [0x14013d3e8]
test cl, 1
je 0x1400714bf
lea r8, [0x14013d3e8]
jmp 0x140073056
cmp byte [rsp + 0x158], 0
je 0x140073330
mov rax, qword [rsp + 0x140]
lea rdx, [rsp + 0x170]
mov qword [rdx], rax
mov qword [rsp + 0x140], 0
movupd xmm0, xmmword [rsp + 0x148]
xorps xmm1, xmm1
movups xmmword [rsp + 0x148], xmm1
movupd xmmword [rdx + 8], xmm0
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x14012fc00]
jmp 0x1400721a7
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072665
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x14007314c
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
je 0x1400726da
jmp 0x140071aa5
cmp ebx, 0x102
je 0x140073136
mov ecx, ebx
call fcn.1400f3ae0
jmp 0x140071a9c
mov ecx, edi
call fcn.140001ad0
mov dword [r15 + 0x54], edi
jmp 0x140071576
mov rdi, qword [rsp + 0x1b8]
jmp 0x1400721fe
mov rbx, qword [rsp + 0x1b8]
jmp 0x140071bfd
lea rcx, [rsp + 0x140]
call qword [0x14012fc00]
jmp 0x1400719ff
mov rdx, qword [rsp + 0x1b8]
jmp 0x140072221
mov rax, qword [rbp + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x1400725de
lea rbx, [rbp + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140074288
mov rcx, qword [rbp + 0x68]
call fcn.14006d190
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
jmp 0x1400725de
lea rbx, [rsp + 0xf0]
mov rcx, rbx
call qword [0x14012fc00]
mov r14, qword [rbx]
jmp 0x140071806
mov rcx, qword [rsp + 0x1b8]
call fcn.14009d26c
jmp 0x140072232
mov rdx, qword [rsp + 0x1b8]
jmp 0x140071c20
mov rcx, qword [rsp + 0x1b8]
call fcn.14009d26c
jmp 0x140071c31
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x140073271
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
jne 0x14007267b
jmp 0x14007269e
cmp ebx, 0x102
je 0x14007325b
mov ecx, ebx
call fcn.1400f3ae0
jmp 0x140072672
cmp ebx, 0x102
je 0x1400728b0
mov ecx, ebx
call fcn.1400f3ae0
jmp 0x1400716a6
mov rcx, qword [0x14014cc98]
call fcn.1400d1480
jmp 0x140071d81
mov rcx, qword [0x14014cc98]
call fcn.1400d1480
jmp 0x1400715e6
lea r15, [rsp + 0x188]
mov rcx, r15
call qword [0x14012fc00]
mov rax, qword [r15]
mov r15, qword [rsp + 0x48]
jmp 0x140072791
call fcn.1400d1300
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
lea rcx, [0x14011c264]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.1400d1300
lea rcx, [0x14011c264]
lea rdx, str....._third_partylibc_srcinclude_vector:618:_assertion__empty___failed:_front___called_on_an_empty_vector_n
call fcn.1400d1300
mov r13, rdx
lea r12, [rdx + 0x60]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14007427a
mov rcx, qword [r13 + 0x68]
call fcn.14006d190
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdx, r13
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140072b96
mov rcx, qword [r14 - 0x18]
call fcn.140057030
cmp byte [r14 - 0x27], 0
je 0x140073445
cmp byte [r14 - 0x28], 0
jne 0x140073419
mov rcx, qword [r14 - 0x18]
call fcn.140100fa0
mov word [r14 - 7], 0
mov byte [r14 - 5], 0
mov r15, qword [rsp + 0x48]
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rdi, qword [rsp + 0x58]
jmp 0x140071f13
lea rcx, [0x14011c264]
lea rdx, str....._third_partylibc_srcincludeoptional:795:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.1400d1300
mov qword [rsp + 0x128], 0xf4240
mov ebx, 0xf4240
jmp 0x140071921
lea rcx, [rsp + 0x100]
call fcn.140098080
jmp 0x140071abd
lock dec dword [r8 + 8]
jne 0x140071ce4
mov rax, qword [r8]
mov rax, qword [rax + 0x30]
mov rcx, r8
mov edx, 1
call qword [0x14012fc00]
jmp 0x140071ce4
mov rcx, qword [rsp + 0xf8]
test rcx, rcx
je 0x140071cc7
mov qword [rsp + 0xf0], 0
lea rdi, [rsp + 0x140]
mov rdx, rdi
call fcn.14000df80
mov r8, qword [rdi]
jmp 0x140071cdb
mov ecx, edi
call fcn.140001ad0
mov dword [r15 + 0x54], edi
jmp 0x140071b01
lock dec dword [rcx + 8]
jne 0x140073523
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x14012fc00]
mov rcx, qword [rsp + 0x188]
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0xf8], rax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x188], xmm0
test rcx, rcx
mov r15, qword [rsp + 0x48]
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x140071d21
lock dec dword [rcx + 8]
je 0x1400735ad
mov rcx, qword [rsp + 0x188]
test rcx, rcx
mov r15, qword [rsp + 0x48]
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x140071d21
jmp 0x140074296
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x14012fc00]
jmp 0x140073577
lea rdi, [rsp + 0x100]
mov rcx, rdi
call fcn.140098080
mov byte [rdi + 0x18], 0
jmp 0x140071706
lea rcx, [rsi + 0x18]
mov rdi, qword [rsi + 0x10]
call fcn.1400f4080
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x140071d96
lea rcx, [rsi + 0x18]
mov rbx, qword [rsi + 0x10]
call fcn.1400f4080
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x140071db8
lea rbx, [rsp + 0x128]
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140107320
mov rbx, qword [rbx]
jmp 0x140071921
lea rcx, [rsi + 0x18]
mov rdi, qword [rsi + 0x10]
call fcn.1400f4080
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x14007367c
cmp byte [rsp + 0x110], 1
jne 0x140071da5
cmp qword [rsi + 0x18], 0
jne 0x140073644
movabs rax, 0x4000000000000000
lock or qword [rsi + 0x10], rax
mov r15, qword [rsp + 0x48]
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x140071da5
mov rcx, r15
call fcn.14009c570
jmp 0x1400720b5
mov rcx, qword [0x14014cbf8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400719f7
int3
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
call fcn.1400f4080
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x1400715fb
lea rcx, [rdi + 0x18]
mov r14, qword [rdi + 0x10]
call fcn.1400f4080
movabs rcx, 0xff00000000000000
and rcx, r14
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x14007161d
mov rcx, qword [0x14014cbf8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov r14, rax
add r14, r8
mov qword [rsp + 0xf0], r14
jmp 0x140071806
mov r13, rbx
cmp rax, rbx
je 0x140072735
movabs rcx, 0x7fffffffffffffff
add rax, rcx
add rax, 2
mov r13, rbx
cmp rax, 1
ja 0x140072735
int3
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x14011db70]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x45
lea rdx, [rsp + 0x140]
mov r9d, 2
call fcn.1400109b0
jmp 0x1400716ea
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
call fcn.1400f4080
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x140073810
cmp byte [rsp + 0x110], 1
jne 0x14007160a
cmp qword [rdi + 0x18], 0
jne 0x1400737d8
movabs rax, 0x4000000000000000
lock or qword [rdi + 0x10], rax
mov r15, qword [rsp + 0x48]
movabs r13, 0xaaaaaaaaaaaaaaaa
movabs r12, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x14007160a
movzx ecx, al
mov rax, qword [0x14014ae28]
xor rax, qword [r15 + 0x60]
mov qword [rsp + 0x188], rax
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x140]
mov qword [r8], rax
lea rax, [rsp + 0x188]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x170]
mov r9d, 1
call fcn.14000d010
jmp 0x140071a44
call qword [0x14012fc00]
jmp 0x14007131d
call qword [0x14012fc00]
jmp 0x1400713bd
mov rax, rdx
mov rdi, r10
call qword [0x14012fc00]
mov r11, qword [rsp + 0x90]
mov r10, rdi
mov r9, qword [rsp + 0x60]
jmp 0x1400720ed
lea rdx, [rsp + 0x188]
call qword [0x14012fc00]
jmp 0x14007134e
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x14012fc00]
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
jmp 0x140071479
mov rcx, r15
call qword [0x14012fc00]
jmp 0x14007167c
mov rcx, r15
call qword [0x14012fc00]
jmp 0x140071a72
int3
int3
int3
int3
int3
int3
int3
mov rcx, rdi
mov rdx, rbx
call qword [0x14012fc00]
jmp 0x1400726fd
movzx ecx, al
mov eax, 0x1b0
add rax, qword [rsp + 0x190]
xor rax, qword [0x14014ae28]
mov qword [rsp + 0x140], rax
lea rax, [0x14012b730]
lea r8, [rsp + 0x170]
mov qword [r8], rax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x168]
mov r9d, 3
call fcn.140086820
jmp 0x140072304
lock dec dword [rcx + 8]
jne 0x140072387
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x14012fc00]
jmp 0x140072387
mov rcx, qword [rdi]
lea rax, [0x1400d3d90]
lea rdx, [rsp + 0x188]
mov qword [rdx + 0x18], rax
lea rax, [0x14011d5d8]
mov qword [rdx + 0x20], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x14012fc00]
jmp 0x1400713d5
movzx ecx, al
mov eax, 0x1b0
add rax, qword [rsp + 0x190]
xor rax, qword [0x14014ae28]
mov qword [rsp + 0x140], rax
lea rax, [0x14012b730]
lea r8, [rsp + 0x170]
mov qword [r8], rax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x128]
mov r9d, 3
call fcn.140086820
jmp 0x1400724a1
lock dec dword [rcx + 8]
jne 0x140072596
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x14012fc00]
jmp 0x140072596
mov rax, rdx
mov rdi, r9
mov r12, r10
call qword [0x14012fc00]
mov r10, r12
mov r9, rdi
jmp 0x140072417
int3
int3
int3
call fcn.140107570
jmp 0x140072953
xor eax, eax
jmp 0x140070f2a
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x14012fc00]
jmp 0x140070eb4
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x14012fc00]
jmp 0x1400728f4
add rcx, 0x190
call fcn.1400874f0
jmp 0x140072a7d
movzx ecx, al
lea rax, str.WorkerThread_born
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x14011db70]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], 0x49
lea rdx, [rsp + 0x140]
mov r9d, 3
call fcn.1400109b0
jmp 0x140070e8d
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x14011db70]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x42
lea rdx, [rsp + 0x140]
mov r9d, 1
call fcn.1400109b0
jmp 0x140070ea7
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x14011db70]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x45
lea rdx, [rsp + 0x140]
mov r9d, 2
call fcn.1400109b0
jmp 0x14007292b
movzx ecx, al
lea rax, str.WorkerThread_dead
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x14011db70]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], 0x49
lea rdx, [rsp + 0x140]
mov r9d, 3
call fcn.1400109b0
jmp 0x140072945
add rcx, 0x190
call fcn.1400874f0
jmp 0x140072b2b
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x14012fc00]
jmp 0x140072853
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072bd6
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072bfe
mov rcx, qword [0x14014cbf8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140072791
mov rax, qword [r14]
mov rax, qword [rax + 8]
mov rcx, r14
mov edx, 1
call qword [0x14012fc00]
jmp 0x140072a8d
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x14012fc00]
jmp 0x1400729ee
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072d15
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140072d39
mov qword [rsp + 0x60], rcx
cmp qword [rsp + 0x50], rdx
jb 0x140073356
mov r12, rbp
mov rbp, rdx
mov rax, qword [rsp + 0x68]
mov r13, qword [rax + rdx*8]
test r13, r13
je 0x140073353
mov rax, qword [rsp + 0x68]
mov qword [rax + rbp*8], 0
mov rax, qword [r13 + 8]
mov rcx, r13
call qword [0x14012fc00]
lock dec dword [r13]
jne 0x140073ea9
mov rax, qword [r13 + 0x10]
mov rcx, r13
call qword [0x14012fc00]
mov rdx, rbp
inc rdx
xor eax, eax
cmp rdx, qword [rsp + 0x50]
cmove rdx, rax
mov rbp, r12
cmp rdx, r12
mov rcx, qword [rsp + 0x60]
jne 0x140073e53
cmp rbp, rcx
jbe 0x1400741b5
cmp qword [rsp + 0x50], r12
jb 0x140073350
cmp qword [rsp + 0x60], r12
jg 0x14007334d
shl r12, 3
mov rbp, qword [rsp + 0x60]
shl rbp, 3
mov r13, rbp
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax + rbp]
test rcx, rcx
jne 0x140073f1d
mov rax, qword [rdi]
mov rax, qword [rax + 8]
mov rcx, rdi
mov edx, 1
call qword [0x14012fc00]
jmp 0x140072b3a
mov r12, rax
mov rax, qword [rsp + 0x58]
cmp rax, rbp
jb 0x140073911
mov rbx, rax
mov rax, qword [rsp + 0x40]
mov r14, qword [rax + rbp*8]
test r14, r14
je 0x140073914
mov r13, rcx
mov rax, qword [rsp + 0x40]
mov qword [rax + rbp*8], 0
mov rax, qword [r14 + 8]
mov rcx, r14
call qword [0x14012fc00]
lock dec dword [r14]
jne 0x140073f9e
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [0x14012fc00]
inc rbp
xor eax, eax
cmp rbp, rbx
cmove rbp, rax
mov rax, r12
cmp rbp, r12
mov rcx, r13
jne 0x140073f48
cmp rax, rcx
jbe 0x140074093
cmp rbx, r12
jb 0x140073917
cmp r13, r12
jg 0x14007391a
mov r14, r12
shl r14, 3
shl r13, 3
mov r12, r13
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + r13]
test rcx, rcx
jne 0x140073ffe
mov r13, r12
add r13, 8
cmp r14, r13
je 0x140072d75
jmp 0x140073fdb
lock dec dword [rcx]
jne 0x140073fec
mov rax, qword [rcx + 0x10]
call qword [0x14012fc00]
jmp 0x140073fec
cmp rbx, r13
jb 0x14007391d
jl 0x140073920
je 0x1400740d8
shl rbx, 3
shl r13, 3
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + r13]
test rcx, rcx
je 0x1400740c9
lock dec dword [rcx]
jne 0x1400740c9
mov rax, qword [rcx + 0x10]
call qword [0x14012fc00]
mov rax, r13
add rax, 8
mov r13, rax
cmp rbx, rax
jne 0x1400740ac
test r12, r12
js 0x140073923
je 0x140072d75
shl r12, 3
xor r14d, r14d
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + r14]
test rcx, rcx
je 0x14007410b
lock dec dword [rcx]
jne 0x14007410b
mov rax, qword [rcx + 0x10]
call qword [0x14012fc00]
add r14, 8
cmp r12, r14
jne 0x1400740ee
jmp 0x140072d75
mov rax, qword [rsp + 0x60]
cmp qword [rsp + 0x50], rax
jb 0x14007334a
jl 0x140073347
je 0x140074210
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400733c7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400731d5
lock dec dword [rcx + 8]
jne 0x140071d21
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x14012fc00]
jmp 0x140071d21