Function at 0x14005da80
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, 0x368
movaps xmmword [rsp + 0x350], xmm10
movaps xmmword [rsp + 0x340], xmm9
movaps xmmword [rsp + 0x330], xmm8
movaps xmmword [rsp + 0x320], xmm7
movaps xmmword [rsp + 0x310], xmm6
mov rbx, rcx
mov rax, qword [0x14012f028]
xor rax, rsp
mov qword [rsp + 0x308], rax
test byte [0x14013d0e0], 0x19
jne 0x14005de57
mov rcx, qword [rbx + 0x60]
test rcx, rcx
jne 0x140060963
mov rcx, qword [rbx + 0x48]
mov rdx, rbx
call fcn.140004470
mov eax, dword [0x140147620]
test eax, eax
je 0x14005dc49
mov rax, qword [rbx + 0x50]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x14005db1f
cmp dword [rbx + 0x68], 0
je 0x14005dc49
mov rcx, qword [0x140147618]
test rcx, rcx
je 0x14005dc49
lea rsi, [rsp + 0x250]
mov rdx, rsi
mov r8d, 2
call fcn.1400135a0
mov rax, qword [rsi]
mov qword [rsp + 0x70], rax
test byte [0x14013d0e0], 0x19
jne 0x14005dc50
mov rcx, qword [rbx + 0x48]
lea rdx, [rbx + 0x30]
mov qword [rsp + 0x68], rdx
call fcn.1400045f0
test byte [0x14013d0e0], 0x19
jne 0x14005dcfc
movabs r13, 0xfffffffc00000000
movabs r14, 0x7fffffffffffffff
mov eax, dword [0x14013e9b0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x1a0]
mov qword [rsp + 0xa0], rcx
lea rcx, [rax + 0x1a4]
mov qword [rsp + 0x98], rcx
lea rcx, [rax + 0x190]
mov qword [rsp + 0x78], rcx
lea rcx, [rax + 0x180]
mov qword [rsp + 0x90], rcx
lea rcx, [rax + 0x148]
mov qword [rsp + 0x88], rcx
lea rcx, [rax + 0x140]
mov qword [rsp + 0x80], rcx
lea rcx, [rax + 0x170]
mov qword [rsp + 0xb0], rcx
lea rax, [rax + 0x178]
mov qword [rsp + 0xa8], rax
movaps xmm6, xmmword [0x140114ca0]
xorps xmm7, xmm7
movsd xmm8, qword [0x14011fe08]
movsd xmm9, qword [0x14011e3b0]
movsd xmm10, qword [0x14011e3b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
xor r15d, r15d
jmp 0x14005ed16
xor eax, eax
jmp 0x14005db48
mov rax, qword [0x14013e628]
lea rcx, [0x1400931e0]
cmp rax, rcx
jne 0x14005dfe6
lea rsi, [rsp + 0x250]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140060975
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401473f8]
mov qword [rsp + 0x250], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rcx, [rsp + 0x250]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x14013d0e0]
lea r8, str.WorkerThread_active
mov cl, 0x45
xor r9d, r9d
call fcn.140060ca0
jmp 0x14005db5a
mov rdi, qword [0x140145990]
movapd xmm0, xmmword [0x140114ca0]
lea rsi, [rsp + 0x150]
movapd xmmword [rsi + 0x10], xmm0
movapd xmmword [rsi], xmm0
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14013d0e0]
lea r9, str.WorkerThread_active
mov rcx, rsi
mov dl, 0x42
call fcn.140060ad0
mov rsi, qword [rsi]
test rsi, rsi
je 0x14005de34
xor rdi, rbx
mov al, byte [rsp + 0x168]
mov rcx, qword [rsp + 0x158]
xor edx, edx
mov qword [rsp + 0x1d0], rdx
mov qword [rsp + 0x1d8], rsi
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rdx
mov byte [rsp + 0x1f0], al
cmp qword [rsi + 0x10], rdx
jne 0x14005dff9
lea r14, [rsp + 0x1d8]
mov byte [rsp + 0x25e], 0xaa
mov dword [rsp + 0x25a], 0xaaaaaaaa
mov word [rsp + 0x250], 0x381
mov qword [rsp + 0x252], rdi
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x18]
lea rdx, [rax + 0xa]
cmp rdx, qword [rcx + 0x10]
ja 0x14005dfa8
mov r8, qword [rsp + 0x250]
movzx r9d, word [rsp + 0x258]
mov word [rax + 8], r9w
mov qword [rax], r8
mov qword [rcx + 0x18], rdx
add dword [rsi + 0x20], 0xa
lea rsi, [rsp + 0x1d0]
mov rax, qword [rsi]
lea rcx, [rsp + 0x250]
mov qword [rcx], rax
mov qword [rsi], 0
movupd xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 9]
movupd xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x11], xmm1
call fcn.140060ae0
mov rcx, rsi
call fcn.140060ae0
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x14005db79
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140152008]
jmp 0x14005db79
mov rax, qword [0x14013e628]
lea rdi, [0x1400931e0]
cmp rax, rdi
jne 0x14005dfc0
lea rsi, [rsp + 0x250]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005e006
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401473f8]
mov qword [rsp + 0x250], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea r14, [rsp + 0x250]
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 8
mov qword [rsp + 0x40], 0
lea rdx, [0x14013d0e0]
lea r8, str.WorkerThread_born
mov cl, 0x49
xor r9d, r9d
call fcn.140060ca0
test byte [0x14013d0e0], 0x19
je 0x14005dae0
mov rax, qword [0x14013e628]
cmp rax, rdi
jne 0x14005dfd3
lea rsi, [rsp + 0x250]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005e02d
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401473f8]
mov qword [rsp + 0x250], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x14013d0e0]
lea r8, str.WorkerThread_active
mov cl, 0x42
xor r9d, r9d
call fcn.140060ca0
jmp 0x14005dae0
lea rdx, [rsp + 0x250]
mov r8d, 0xa
call fcn.140059180
jmp 0x14005ddf3
lea rcx, [rsp + 0x250]
call qword [0x140152008]
jmp 0x14005deb4
lea rcx, [rsp + 0x250]
call qword [0x140152008]
jmp 0x14005df61
lea rcx, [rsp + 0x250]
call qword [0x140152008]
jmp 0x14005dcad
mov rcx, rsi
call fcn.14005d1a0
jmp 0x14005dd94
mov rcx, qword [0x1401473f8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005deac
mov rcx, qword [0x1401473f8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005df59
mov rsi, qword [rax + 0x30]
mov qword [rax + 0x30], 0
test rsi, rsi
je 0x14005e5a4
lock dec dword [rsi]
jne 0x14005e5a4
mov rcx, rsi
call fcn.140009410
mov rcx, rsi
call fcn.140093dd0
jmp 0x14005e5a4
mov rcx, qword [rsp + 0x2f0]
test rcx, rcx
je 0x14005e0a1
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140152008]
movabs r14, 0x7fffffffffffffff
jmp 0x14005e5d0
mov rcx, rsi
call fcn.140057b30
jmp 0x14005e53e
lea rsi, [rsp + 0x250]
mov rcx, rsi
call fcn.140058c10
mov byte [rsi + 0x40], 0
jmp 0x14005e4f4
mov rax, qword [rsp + 0x258]
jmp 0x14005e59b
lea rcx, [0x14014928c]
call fcn.140093f10
cmp dword [0x14014928c], 0xffffffff
jne 0x14005e4a9
mov rcx, qword [0x1401474c0]
test rcx, rcx
je 0x14005e114
lea rdx, str.enable_background_thread_pool
call fcn.140087ed0
mov byte [0x140149288], 1
lea rcx, [0x14014928c]
call fcn.140093f78
jmp 0x14005e4a9
cmp byte [rax + 0x38], 0
je 0x14005e5a4
jmp 0x14005e054
mov cl, byte [rax + 0x20]
jmp 0x14005e577
mov rcx, qword [rsp + 0xf8]
call fcn.140093dd0
jmp 0x14005e42f
mov rax, r14
and rax, 0xfffffffffffffff8
add rax, 8
mov r15, r14
or r15, 7
cmp r15, 0x17
cmove r15, rax
inc r15
mov rcx, r15
call fcn.140093d8c
mov rcx, rax
mov qword [rsp + 0xf8], rax
movabs rax, 0x7fffffffffffffff
inc rax
or rax, r15
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x100], r14
jmp 0x14005e3c0
mov rax, r14
and rax, 0xfffffffffffffff8
add rax, 8
mov r15, r14
or r15, 7
cmp r15, 0x17
cmove r15, rax
inc r15
mov rcx, r15
call fcn.140093d8c
mov rcx, rax
mov qword [rsp + 0x110], rax
movabs rax, 0x7fffffffffffffff
inc rax
or rax, r15
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x118], r14
jmp 0x14005e309
movaps xmmword [rsp + 0x2f0], xmm6
movaps xmmword [rsp + 0x2e0], xmm6
movups xmmword [rsp + 0x20], xmm7
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x2e0]
mov dl, 0x42
lea r8, [0x14013d0e0]
lea r9, str.ScopedBlockingCallWithBaseSyncPrimitives
call fcn.140060ad0
mov rax, qword [rsp + 0x2e0]
test rax, rax
je 0x14005e087
mov cl, byte [rsp + 0x2f8]
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], rdx
xor eax, eax
mov qword [rsp + 0x168], rax
mov byte [rsp + 0x170], cl
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x150], rax
lea rax, [rsp + 0x158]
movupd xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 9]
lea rax, [rsp + 0x1d8]
movups xmmword [rax + 9], xmm1
movupd xmmword [rax], xmm0
mov rcx, qword [rsp + 0x1d8]
mov edx, 0x21
call fcn.14007c020
mov rdi, qword [rsp + 0x138]
test rdi, rdi
je 0x14006090b
mov rsi, rax
mov rcx, rdi
call fcn.1400b04b0
mov r14, rax
movabs rax, 0x7fffffffffffffff
lea rbp, [rax - 8]
cmp r14, rbp
ja 0x140060886
cmp r14, 0x16
ja 0x14005e1aa
mov byte [rsp + 0x127], r14b
lea rcx, [rsp + 0x110]
lea r15, [rcx + r14]
cmp rcx, rdi
ja 0x14005e31b
cmp r15, rdi
ja 0x140060937
test r14, r14
je 0x14005e32b
mov rdx, rdi
mov r8, r14
call fcn.140097a10
mov byte [r15], 0
movzx eax, byte [rsp + 0x127]
mov r9d, eax
and r9d, 0x7f
test al, al
cmovs r9, qword [rsp + 0x118]
mov r8, qword [rsp + 0x110]
lea rax, [rsp + 0x110]
cmovns r8, rax
mov rcx, rsi
mov edx, 2
call fcn.140059020
cmp byte [rsp + 0x127], 0
jns 0x14005e381
mov rcx, qword [rsp + 0x110]
call fcn.140093dd0
mov rdi, qword [rsp + 0x130]
test rdi, rdi
je 0x14006090b
mov rcx, rdi
call fcn.1400b04b0
cmp rax, rbp
ja 0x140060893
mov r14, rax
cmp rax, 0x16
ja 0x14005e155
mov byte [rsp + 0x10f], r14b
lea rcx, [rsp + 0xf8]
lea r15, [rcx + r14]
cmp rcx, rdi
ja 0x14005e3d2
cmp r15, rdi
ja 0x140060937
test r14, r14
je 0x14005e3e2
mov rdx, rdi
mov r8, r14
call fcn.140097a10
mov byte [r15], 0
movzx eax, byte [rsp + 0x10f]
mov r9d, eax
and r9d, 0x7f
test al, al
cmovs r9, qword [rsp + 0x100]
mov r8, qword [rsp + 0xf8]
lea rax, [rsp + 0xf8]
cmovns r8, rax
mov rcx, rsi
mov edx, 3
call fcn.140059020
cmp byte [rsp + 0x10f], 0
js 0x14005e143
lea rcx, [rsp + 0x1d0]
call fcn.140060ae0
lea rcx, [rsp + 0x150]
call fcn.140060ae0
mov rcx, qword [rsp + 0x2f0]
test rcx, rcx
movabs r14, 0x7fffffffffffffff
je 0x14005e5d0
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140152008]
jmp 0x14005e5d0
mov rcx, qword [rbx + 0x48]
call fcn.140004280
jmp 0x14005e6e8
mov eax, dword [0x14014928c]
mov ecx, dword [0x14013e9b0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14005e0e3
cmp byte [0x140149288], 0
jne 0x14005e5a4
jmp 0x14005e0d6
mov rcx, rsi
call fcn.140057b30
jmp 0x14005e518
lea rcx, [rsp + 0x130]
lea rdx, str.TimedWait
lea r8, str....._base_synchronizationwaitable_event.cc
mov r9d, 0x24
call fcn.140072460
cmp byte [rsp + 0x290], 0
jne 0x14005e0bd
mov rax, qword [rsp + 0xb0]
mov rsi, qword [rax]
mov rax, rsi
movabs rdi, 0xfffffffc00000000
and rax, rdi
cmp rax, qword [0x14012fdc8]
je 0x14005e4bb
mov qword [rsp + 0x250], rsi
mov r15, qword [rsp + 0xa8]
mov rsi, qword [r15]
mov rax, rsi
and rax, rdi
cmp rax, qword [0x14012fdc8]
je 0x14005e0b0
mov qword [rsp + 0x258], rsi
mov qword [rsp + 0x260], r15
mov rax, qword [r15]
lea rcx, [rsp + 0x250]
mov qword [r15], rcx
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x258]
test rax, rax
jne 0x14005e13b
xor ecx, ecx
mov byte [rsp + 0x270], cl
xor edx, edx
mov byte [rsp + 0x278], dl
mov byte [rsp + 0x288], dl
mov rcx, qword [rsp + 0x78]
cmp byte [rcx], dl
je 0x14005e484
test rax, rax
jne 0x14005e12c
mov rcx, qword [rsp + 0x250]
test rcx, rcx
je 0x14005e5c3
cmp qword [rsp + 0x258], 0
jne 0x14005e5c3
xor edx, edx
call fcn.1400917f0
test byte [0x14013d0e0], 0x19
jne 0x14005e1ff
mov byte [rsp + 0x290], 1
jmp 0x14005e8f2
mov edx, 0xffffffff
jmp 0x14005e9b6
mov rax, qword [0x14013e628]
lea rcx, [0x1400931e0]
cmp rax, rcx
jne 0x14006041d
mov qword [rsp + 0x250], 0
lea rcx, [rsp + 0x250]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x250]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1400608d0
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401473f8]
mov qword [rsp + 0x250], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rcx, [rsp + 0x250]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], eax
movups xmmword [rsp + 0x20], xmm7
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov cl, 0x45
lea rdx, [0x14013d0e0]
lea r8, str.WorkerThread_active
xor r9d, r9d
call fcn.140060ca0
jmp 0x14005e6f5
mov rsi, r14
jmp 0x14005e96e
mov al, byte [rbx + 0x40]
mov r12b, 1
test al, al
jne 0x14005ecd6
mov al, byte [rbx + 0x70]
test al, al
jne 0x14005ecd6
mov rdi, qword [rbx + 0x50]
lea rsi, [rdi + 0x50]
mov rcx, rsi
call rbp
test al, al
je 0x140060391
mov rax, qword [rdi + 0x58]
test rax, rax
jne 0x1400603fa
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r15b, 1
je 0x14005e476
test byte [0x14013d0e0], 0x19
jne 0x14005e5e7
mov rcx, qword [rbx + 0x48]
mov rax, qword [rcx]
lea rdx, [fcn.1400045f0]
cmp qword [rax + 0x30], rdx
jne 0x1400600f2
cmp byte [rcx + 0x40], 0
mov r12, r14
jne 0x14005fd16
mov eax, 0xf4240
cmp r12, rax
mov r13d, 0xf4240
cmovl r13, r12
mov eax, dword [0x14014936c]
mov ecx, dword [0x14013e9b0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140060355
cmp byte [0x140149368], 0
je 0x14005e89e
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x250], rax
mov rax, qword [fcn.140085890]
lea rcx, [rsp + 0x250]
call qword [0x140152008]
mov eax, dword [0x140149378]
mov ecx, dword [0x14013e9b0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14006030e
mov rax, qword [0x140149370]
mov ecx, 0x3938700
add rax, rcx
cmovo rax, r14
mov r8, qword [rsp + 0x250]
cmp r8, rax
cmovle r13, rcx
lea rax, [r14 + r13]
add rax, 2
cmp rax, 2
jb 0x140060728
lea rax, [r8 + r13]
sar rax, 0x3f
btc rax, 0x3f
add r13, r8
cmovo r13, rax
mov r9, r13
xor eax, eax
mov rcx, r9
neg rcx
setns al
add rax, r14
mov rcx, r9
neg rcx
cmovo rcx, rax
lea rax, [r14 + rcx]
add rax, 2
mov rdx, r14
cmp rax, 2
jb 0x14005e84f
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 0x1400603da
mov rax, rdx
add rax, 0xf4240
cmovo rax, r14
test r9, r9
cmovle rax, rdx
lea rcx, [r14 + rax]
add rcx, 2
cmp rcx, 2
jb 0x140060704
lea rcx, [r9 + rax]
sar rcx, 0x3f
btc rcx, 0x3f
add r9, rax
cmovo r9, rcx
mov r13, r9
xor eax, eax
cmp r13, r8
setns al
add rax, r14
sub r13, r8
cmovo r13, rax
movabs rax, 0xaaaaaaaaaaaaaaaa
test r13, r13
jle 0x14005fd42
movaps xmmword [rsp + 0x250], xmm6
mov qword [rsp + 0x290], rax
movaps xmmword [rsp + 0x280], xmm6
movaps xmmword [rsp + 0x270], xmm6
movaps xmmword [rsp + 0x260], xmm6
xor eax, eax
mov byte [rsp + 0x250], al
mov byte [rsp + 0x290], al
cmp byte [rbx + 0x38], al
je 0x14005e4c5
cmp r13, r14
je 0x14005e692
mov rax, qword [0x14013e628]
lea rcx, [0x1400931e0]
cmp rax, rcx
jne 0x1400603e1
mov qword [rsp + 0x1d0], 0
lea rcx, [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x1d0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140060773
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401473f8]
mov rsi, rax
lea rax, [rsi + r13]
sar rax, 0x3f
btc rax, 0x3f
add rsi, r13
cmovo rsi, rax
mov rcx, r13
cmp rcx, r14
je 0x14005e5dd
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 rax, qword [rsp + 0x68]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x14005fa2d
mov bpl, 1
cmp byte [rbx + 0x38], 0
je 0x14006000f
cmp byte [rsp + 0x290], 0
jne 0x14005f98c
test bpl, bpl
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x14005fd5a
xor r12d, r12d
test byte [0x14013d0e0], 0x19
mov r15d, 0
movabs r13, 0xfffffffc00000000
je 0x14005ecd6
mov rdi, qword [0x140145990]
movaps xmmword [rsp + 0x160], xmm6
movaps xmmword [rsp + 0x150], xmm6
movups xmmword [rsp + 0x20], xmm7
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x150]
mov dl, 0x42
lea r8, [0x14013d0e0]
lea r9, str.WorkerThread_active
call fcn.140060ad0
mov rsi, qword [rsp + 0x150]
test rsi, rsi
je 0x14005eb5b
mov al, byte [rsp + 0x168]
mov rcx, qword [rsp + 0x158]
xor edx, edx
mov qword [rsp + 0x1d0], rdx
mov qword [rsp + 0x1d8], rsi
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rdx
mov byte [rsp + 0x1f0], al
cmp qword [rsi + 0x10], rdx
jne 0x14006084d
xor rdi, rbx
lea rax, [rsp + 0x2ea]
mov byte [rax + 4], 0xaa
mov dword [rax], 0xaaaaaaaa
mov word [rsp + 0x2e0], 0x381
mov qword [rsp + 0x2e2], rdi
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x18]
lea rdx, [rax + 0xa]
cmp rdx, qword [rcx + 0x10]
ja 0x14006039f
mov r8, qword [rsp + 0x2e0]
movzx r9d, word [rsp + 0x2e8]
mov word [rax + 8], r9w
mov qword [rax], r8
mov qword [rcx + 0x18], rdx
add dword [rsi + 0x20], 0xa
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x1d0], 0
lea rax, [rsp + 0x1d8]
movupd xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 9]
lea rax, [rsp + 0x258]
movups xmmword [rax + 9], xmm1
movupd xmmword [rax], xmm0
lea rcx, [rsp + 0x250]
call fcn.140060ae0
lea rcx, [rsp + 0x1d0]
call fcn.140060ae0
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x14005eb75
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140152008]
xor r12d, r12d
xor r15d, r15d
jmp 0x14005ecd6
lock dec dword [rcx]
jne 0x14005ebe5
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
jmp 0x14005ebe5
mov rcx, rdi
xor edx, edx
call qword [0x140152008]
mov r12d, 0
mov r15d, 0
test al, al
movabs r14, 0x7fffffffffffffff
je 0x14005ebce
mov r12, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xd0]
movups xmmword [rsp + 0xc8], xmm7
cmp byte [rsp + 0x2d0], 0
je 0x14005ebe5
mov rcx, qword [rsp + 0x250]
test rcx, rcx
jne 0x14005eb80
mov rsi, qword [rsp + 0xc8]
test rsi, rsi
jne 0x14005ff1a
mov qword [rsp + 0xc8], 0
test rsi, rsi
jne 0x14005ff46
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
jne 0x1400605ad
mov r8, qword [rsp + 0xe0]
test r8, r8
jne 0x1400606ab
mov qword [rsp + 0x250], r8
mov qword [rsp + 0xe0], 0
test r8, r8
jne 0x1400605fb
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0xe0], r12
test rcx, rcx
jne 0x1400605c6
mov qword [rsp + 0xe8], r15
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x250], rax
lea rcx, [rsp + 0x250]
call fcn.140057b20
mov rcx, qword [rbx + 0x48]
movapd xmm0, xmmword [rsp + 0xe0]
movupd xmmword [rsp + 0xb8], xmm0
movaps xmmword [rsp + 0xe0], xmm7
lea rdx, [rsp + 0xb8]
call fcn.14008ff90
cmp qword [rsp + 0xe0], 0
jne 0x140060570
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_ResetEvent]
mov r15b, 1
xor r12d, r12d
mov rsi, qword [rsp + 0xe0]
test rsi, rsi
jne 0x14005fbdc
mov qword [rsp + 0xe0], 0
test rsi, rsi
jne 0x14005fc08
mov rcx, qword [rsp + 0xe0]
test rcx, rcx
jne 0x140060573
test r12b, r12b
jne 0x1400601df
movzx eax, byte [rbx + 0x40]
test al, al
jne 0x1400601df
movzx eax, byte [rbx + 0x70]
test al, al
jne 0x1400601df
mov rdi, qword [rbx + 0x50]
lea rsi, [rdi + 0x50]
mov rcx, rsi
call rbp
test al, al
je 0x140060347
mov rax, qword [rdi + 0x58]
test rax, rax
jne 0x1400603b7
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [rbx + 0x50]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140060304
mov esi, dword [rbx + 0x68]
cmp dword [rbx + 0x6c], esi
jne 0x14006058c
movaps xmmword [rsp + 0xe0], xmm6
mov rcx, qword [rbx + 0x48]
lea rdx, [rsp + 0xe0]
mov r8, rbx
call fcn.14006be70
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x14005e69a
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0xd8]
call fcn.140057b20
mov r14, qword [rbx + 0x50]
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xd0], rcx
movzx eax, byte [rax + 0xd]
and eax, 0x7f
mov cl, 1
mov dword [rsp + 0x58], ecx
cmp eax, 1
jne 0x14005f8cd
mov rax, qword [r14 + 0x10]
mov ecx, 2
lock xadd dword [rax], ecx
test cl, 1
jne 0x1400605e6
movaps xmmword [rsp + 0x250], xmm6
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x2d0], rax
movaps xmmword [rsp + 0x2c0], xmm6
movaps xmmword [rsp + 0x2b0], xmm6
movaps xmmword [rsp + 0x2a0], xmm6
movaps xmmword [rsp + 0x290], xmm6
movaps xmmword [rsp + 0x280], xmm6
movaps xmmword [rsp + 0x270], xmm6
movaps xmmword [rsp + 0x260], xmm6
mov byte [rsp + 0x250], 0
mov byte [rsp + 0x2d0], 0
mov word [rsp + 0x12b], 0xaaaa
mov word [rsp + 0x128], 0x102
mov byte [rsp + 0x12a], 0
mov rsi, qword [rsp + 0xc8]
mov qword [rsp + 0xf8], rsi
add rsi, 0x18
mov rcx, rsi
call rbp
test al, al
je 0x140060101
cmp byte [rsp + 0x58], 0
je 0x140060625
mov rdi, qword [rsp + 0xc8]
mov rax, qword [rdi]
mov rax, qword [rax + 0x40]
lea rcx, [0x1400926a0]
cmp rax, rcx
jne 0x14005f8af
lea rbp, [rdi + 0x18]
mov rsi, rbp
and rsi, r13
cmp rsi, qword [0x14012fdc8]
jne 0x14005ef05
mov rcx, rbp
call fcn.140057b30
test rbp, rbp
je 0x1400605a7
movaps xmmword [rsp + 0x240], xmm6
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
movaps xmmword [rsp + 0x1f0], xmm6
movaps xmmword [rsp + 0x1e0], xmm6
movaps xmmword [rsp + 0x1d0], xmm6
mov r13, qword [rdi + 0x58]
lea r15, [rdi + 0x68]
cmp r13, qword [rdi + 0x60]
je 0x140060689
lea r12, [rdi + 0x48]
mov rax, qword [rdi + 0x50]
mov rcx, qword [rdi + 0x70]
cmp rcx, qword [rdi + 0x78]
jne 0x140060647
cmp rax, r13
jb 0x14006059b
mov rax, qword [rdi + 0x48]
shl r13, 7
mov rcx, qword [rax + r13]
mov qword [rsp + 0x1d0], rcx
mov qword [rax + r13], 0
movups xmm0, xmmword [rax + r13 + 8]
movups xmm1, xmmword [rax + r13 + 0x18]
lea rcx, [rsp + 0x1d8]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rcx, qword [rax + r13 + 0x75]
lea rdx, [rsp + 0x1f8]
mov qword [rdx + 0x4d], rcx
movups xmm0, xmmword [rax + r13 + 0x68]
movups xmmword [rdx + 0x40], xmm0
movupd xmm0, xmmword [rax + r13 + 0x28]
movups xmm1, xmmword [rax + r13 + 0x38]
movups xmm2, xmmword [rax + r13 + 0x48]
movups xmm3, xmmword [rax + r13 + 0x58]
movups xmmword [rdx + 0x30], xmm3
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movupd xmmword [rdx], xmm0
mov rcx, qword [rdi + 0x50]
mov rax, qword [rdi + 0x58]
lea rdx, [rax + 1]
cmp rcx, rdx
jb 0x14006059e
cmp rcx, rax
movabs r13, 0xfffffffc00000000
jb 0x1400605a1
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x1400605a4
mov rcx, qword [r12]
shl rax, 7
mov rcx, qword [rcx + rax]
test rcx, rcx
jne 0x14005f8f2
mov rax, qword [rdi + 0x50]
mov rcx, qword [rdi + 0x58]
inc rcx
cmp rcx, rax
mov edx, 0
cmovne rdx, rcx
mov qword [rdi + 0x58], rdx
cmp rax, 5
jae 0x14005f99e
mov rax, qword [rdi + 0x58]
cmp rax, qword [rdi + 0x60]
jne 0x14005f954
mov rcx, qword [rdi + 0x70]
cmp rcx, qword [rdi + 0x78]
jne 0x14006079d
cmp rsi, qword [0x14012fdc8]
jne 0x14005f09c
mov rcx, rbp
call fcn.140057c80
cmp byte [rsp + 0x2d0], 0
mov rax, qword [rsp + 0x1d0]
jne 0x140060430
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x1d0], 0
lea rax, [rsp + 0x1d8]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x258]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
lea rcx, [rsp + 0x1f8]
mov rax, qword [rcx + 0x4d]
lea rdx, [rsp + 0x278]
mov qword [rdx + 0x4d], rax
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rdx + 0x40], xmm0
movupd xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmm3, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x30], xmm3
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movupd xmmword [rdx], xmm0
mov byte [rsp + 0x2d0], 1
mov rcx, qword [rsp + 0xf8]
mov eax, dword [rcx + 0xc]
mov dword [rsp + 0x128], eax
movzx eax, byte [rcx + 0x10]
mov byte [rsp + 0x12c], al
test rcx, rcx
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x14005f15f
add rcx, 0x18
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp byte [rsp + 0x2d0], 0
je 0x14005f5cf
cmp qword [rsp + 0x280], 0
jne 0x14005fcd1
mov rsi, qword [rsp + 0xc8]
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x250], 0
lea rax, [rsp + 0x258]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rdx, [rsp + 0x158]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
lea rcx, [rsp + 0x278]
mov rax, qword [rcx + 0x4d]
mov qword [rdx + 0x6d], rax
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rdx + 0x60], xmm0
movupd xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmm3, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x50], xmm3
movups xmmword [rdx + 0x40], xmm2
movups xmmword [rdx + 0x30], xmm1
movupd xmmword [rdx + 0x20], xmm0
mov rax, qword [r14]
mov rax, qword [rax + 8]
lea rcx, [0x1400fc370]
cmp rax, rcx
jne 0x1400606e0
movaps xmmword [rsp + 0x110], xmm6
mov rax, qword [rsi]
mov rax, qword [rax]
lea rcx, [0x140092be0]
cmp rax, rcx
jne 0x14005f414
mov eax, dword [rsi + 0x40]
mov dword [rsp + 0x110], eax
lea rdi, [rsi + 0xa0]
mov rax, rdi
and rax, r13
cmp rax, qword [0x14012fdc8]
jne 0x14005f254
mov rcx, rdi
call fcn.140057b30
mov qword [rsp + 0x118], rdi
mov eax, dword [rsp + 0x110]
mov rcx, qword [rsp + 0xa0]
mov edi, dword [rcx]
mov dword [rcx], eax
mov eax, 1
lock xadd dword [0x140149380], eax
mov rcx, qword [rsp + 0x98]
mov r15d, dword [rcx]
mov dword [rcx], eax
movzx eax, byte [rsp + 0x128]
mov rcx, qword [rsp + 0x78]
movzx r12d, byte [rcx]
mov byte [rcx], al
movaps xmmword [rsp + 0x2e0], xmm6
movabs rdx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x300], rdx
movaps xmmword [rsp + 0x2f0], xmm6
mov byte [rsp + 0x2e0], 0
mov byte [rsp + 0x300], 0
mov rax, qword [rsp + 0x118]
test rax, rax
jne 0x14005f2ff
lea rax, [rsp + 0x2ea]
movups xmmword [rax - 2], xmm7
mov qword [rax + 0xe], 0
mov byte [rsp + 0x300], 1
lea rax, [rsp + 0x2e0]
mov rcx, qword [rsp + 0x90]
mov rbp, qword [rcx]
mov qword [rcx], rax
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x140], xmm6
mov byte [rsp + 0x130], 0
mov byte [rsp + 0x148], 0
movaps xmmword [rsp + 0x1d0], xmm6
mov qword [rsp + 0x200], rdx
movaps xmmword [rsp + 0x1f0], xmm6
movaps xmmword [rsp + 0x1e0], xmm6
mov byte [rsp + 0x1d0], 0
mov byte [rsp + 0x200], 0
mov eax, dword [rsi + 0x38]
cmp eax, 1
je 0x14005f460
cmp eax, 2
jne 0x14005f4b8
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140060816
mov ecx, 1
lock xadd dword [rax + 8], ecx
cmp ecx, 0x7fffffff
je 0x14006076d
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x1d0], rdx
mov rcx, qword [rdx]
lea r8, [rsp + 0x1d0]
mov qword [rdx], r8
mov qword [rsp + 0x1d8], rcx
mov qword [rsp + 0x1e0], rax
mov ecx, 1
lock xadd dword [rax + 8], ecx
cmp ecx, 0x7fffffff
je 0x140060770
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x1e8], rdx
mov rcx, qword [rdx]
lea r8, [rsp + 0x1e8]
mov qword [rdx], r8
mov qword [rsp + 0x1f0], rcx
mov qword [rsp + 0x1f8], rax
lea rax, [rsp + 0x200]
jmp 0x14005f4b5
mov rcx, rsi
lea rdx, [rsp + 0x110]
call qword [0x140152008]
jmp 0x14005f25c
cmp eax, 2
jne 0x14005f787
lea rax, [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov rcx, r14
lea rdx, [rsp + 0x150]
lea r8, [rsp + 0x128]
mov r9, rsi
call fcn.140067f60
jmp 0x14005f4f4
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x14005f47f
mov ecx, 1
lock xadd dword [rax + 8], ecx
cmp ecx, 0x7fffffff
je 0x140060622
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x130], rdx
mov rcx, qword [rdx]
lea r8, [rsp + 0x130]
mov qword [rdx], r8
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x140], rax
lea rax, [rsp + 0x148]
mov byte [rax], 1
movzx eax, byte [rsp + 0x129]
and eax, 0x7f
cmp eax, 1
jne 0x14005f42a
lea rax, [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov rcx, r14
lea rdx, [rsp + 0x150]
lea r8, [rsp + 0x128]
mov r9, rsi
call fcn.140067c00
mov rsi, qword [rsp + 0x150]
mov qword [rsp + 0x150], 0
test rsi, rsi
jne 0x14005f7c3
cmp byte [rsp + 0x200], 0
jne 0x14005f705
cmp byte [rsp + 0x148], 0
je 0x14005f558
mov rcx, qword [rsp + 0x140]
test rcx, rcx
je 0x14005f540
lock dec dword [rcx + 8]
je 0x140060618
mov rax, qword [rsp + 0x130]
test rax, rax
je 0x14005f558
mov rcx, qword [rsp + 0x138]
mov qword [rax], rcx
mov rax, qword [rsp + 0x90]
mov qword [rax], rbp
cmp byte [rsp + 0x300], 0
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x14005f585
mov rsi, qword [rsp + 0x2e8]
test rsi, rsi
jne 0x14005f80f
mov rax, qword [rsp + 0x78]
mov byte [rax], r12b
mov rax, qword [rsp + 0x98]
mov dword [rax], r15d
mov rax, qword [rsp + 0xa0]
mov dword [rax], edi
mov rcx, qword [rsp + 0x118]
mov rax, rcx
and rax, r13
cmp rax, qword [0x14012fdc8]
jne 0x14005f5be
call fcn.140057c80
mov rcx, qword [rsp + 0x150]
test rcx, rcx
jne 0x14005f6ed
cmp byte [rsp + 0x58], 0
je 0x14005f5fe
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0xd]
and al, 0x7f
cmp al, 1
jne 0x14005f5fe
mov rax, qword [r14 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
je 0x14005f879
mov rdi, qword [rsp + 0xc8]
mov rax, qword [rdi]
mov rax, qword [rax + 0x48]
lea rcx, [0x140092a40]
cmp rax, rcx
jne 0x14005eb91
mov rsi, rdi
add rsi, 0x18
je 0x14005f633
mov rcx, rsi
call rbp
test al, al
je 0x14005f86b
mov r14, rsi
and r14, r13
cmp r14, qword [0x14012fdc8]
jne 0x14005f64a
mov rcx, rsi
call fcn.140057b30
test rsi, rsi
je 0x1400605aa
mov byte [rdi + 0x98], 0
mov rax, qword [rdi + 0x58]
mov bpl, 1
cmp rax, qword [rdi + 0x60]
jne 0x14005f6e4
mov rax, qword [rdi + 0x70]
cmp rax, qword [rdi + 0x78]
mov rax, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x14005f694
mov byte [rdi + 0x99], 0
mov rcx, qword [rdi + 0x30]
test rcx, rcx
je 0x14005f692
lock dec dword [rcx + 8]
je 0x14005f776
xor ebp, ebp
cmp r14, qword [0x14012fdc8]
jne 0x14005f6ac
mov rcx, rsi
call fcn.140057c80
mov rax, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, rsi
call rax
test bpl, bpl
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jne 0x14005ebb6
xor r12d, r12d
xor r15d, r15d
cmp byte [rsp + 0x2d0], 0
jne 0x14005ebd8
jmp 0x14005ebe5
mov rax, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14005f694
lock dec dword [rcx]
jne 0x14005f5cf
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
jmp 0x14005f5cf
mov rcx, qword [rsp + 0x1f8]
test rcx, rcx
je 0x14005f71c
lock dec dword [rcx + 8]
je 0x14005f8a5
mov rax, qword [rsp + 0x1e8]
test rax, rax
je 0x14005f734
mov rcx, qword [rsp + 0x1f0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x1e0]
test rcx, rcx
je 0x14005f747
lock dec dword [rcx + 8]
je 0x14005f7bc
mov rax, qword [rsp + 0x1d0]
test rax, rax
je 0x14005f51f
mov rcx, qword [rsp + 0x1d8]
mov qword [rax], rcx
cmp byte [rsp + 0x148], 0
je 0x14005f558
jmp 0x14005f529
call fcn.140067e10
mov rax, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14005f692
test eax, eax
jne 0x14005f4f4
lea rax, [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov rcx, r14
lea rdx, [rsp + 0x150]
lea r8, [rsp + 0x128]
mov r9, rsi
call fcn.140068160
jmp 0x14005f4f4
call fcn.140067e10
jmp 0x14005f747
lock dec dword [rsi]
jne 0x14005f511
mov rax, qword [rsi + 0x10]
lea rcx, [0x1400f44f0]
cmp rax, rcx
je 0x14005f7ea
mov rcx, rsi
call qword [0x140152008]
jmp 0x14005f511
mov rcx, qword [rsi + 0x28]
mov rax, rcx
and rax, r13
cmp rax, qword [0x14012fdc8]
jne 0x14005f802
call fcn.14005c910
mov rcx, rsi
call fcn.140093dd0
jmp 0x14005f511
mov rax, qword [rsp + 0x2f0]
mov rcx, rsi
cmp rax, rsi
je 0x14005f859
mov r13, rax
add r13, 0xffffffffffffffe8
je 0x14006085a
mov rcx, qword [rax - 0x10]
test rcx, rcx
je 0x14005f83f
mov rax, qword [rax - 8]
call qword [0x140152008]
mov rax, r13
cmp r13, rsi
jne 0x14005f822
mov rcx, qword [rsp + 0x2e8]
movabs r13, 0xfffffffc00000000
mov qword [rsp + 0x2f0], rsi
call fcn.140093dd0
jmp 0x14005f585
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005f633
lea rsi, [r14 + 0x50]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14006099c
mov rcx, qword [r14 + 0x58]
call fcn.14006b2e0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14005f5fe
call fcn.140067e10
jmp 0x14005f71c
mov rcx, rdi
lea rdx, [rsp + 0x1d0]
lea r8, [rsp + 0xf8]
call qword [0x140152008]
jmp 0x14005f09c
cmp eax, 2
je 0x14005ee21
test eax, eax
jne 0x1400605df
mov rax, qword [r14 + 0x10]
mov eax, dword [rax]
test al, 1
sete al
mov dword [rsp + 0x58], eax
jmp 0x14005ee21
lock dec dword [rcx]
jne 0x14005f04a
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
jmp 0x14005f04a
lea rdx, [rsp + 0x110]
call fcn.140093d20
mov rax, qword [rdi + 0x58]
cmp qword [rdi + 0x50], rax
jb 0x1400608a3
mov rcx, qword [rdi + 0x48]
shl rax, 7
mov rax, qword [rcx + rax + 0x28]
mov rcx, qword [rsp + 0x110]
cmp rcx, rax
cmovl rax, rcx
mov qword [rdi + 0x88], rax
movabs r13, 0xfffffffc00000000
jmp 0x14005f97c
mov rcx, qword [rdi + 0x70]
cmp rcx, qword [rdi + 0x78]
jne 0x14005f90a
cmp qword [rdi + 0x50], rax
jb 0x140060701
mov rcx, qword [rdi + 0x48]
shl rax, 7
mov rax, qword [rcx + rax + 0x28]
mov qword [rdi + 0x88], rax
mov qword [rdi + 0x90], 0
jmp 0x14005f08b
lea rcx, [rsp + 0x250]
call fcn.140058c10
jmp 0x14005e9e7
mov r8, qword [rdi + 0x60]
cmp rdx, r8
mov ecx, 0
cmova rcx, rax
sub rcx, rdx
add rcx, r8
dec rax
mov rdx, rax
sub rdx, rcx
cmp rdx, rcx
jb 0x14005f06f
mov rdx, rcx
shr rdx, 2
add rdx, rcx
cmp rdx, 4
mov ecx, 3
cmovb rdx, rcx
cmp rdx, rax
jae 0x14005f06f
mov rcx, r12
call fcn.140005640
jmp 0x14005f06f
mov rcx, qword [0x1401473f8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005fa81
lea rdi, [rsp + 0x1d0]
mov rcx, rdi
call qword [0x140152008]
mov rax, qword [rdi]
jmp 0x14005fa81
mov rax, qword [0x14013e628]
lea rcx, [0x1400931e0]
cmp rax, rcx
jne 0x14005fa17
mov qword [rsp + 0x1d0], 0
lea rcx, [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x1d0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005f9f3
imul rax, rax, 0xf4240
cqo
idiv qword [0x1401473f8]
xor edx, edx
cmp rsi, rax
setns dl
add rdx, r14
mov rcx, rsi
sub rcx, rax
cmovo rcx, rdx
jg 0x14005e971
xor ebp, ebp
jmp 0x14005e9d9
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005fb99
cmp qword [rsp + 0x60], rdi
jb 0x1400608a6
mov r13, rax
mov rax, qword [rsp + 0x58]
mov r14, qword [rax + rdi*8]
test r14, r14
je 0x1400608a9
mov rbp, rcx
mov rax, qword [rsp + 0x58]
mov qword [rax + rdi*8], 0
mov rax, qword [r14 + 8]
mov rcx, r14
call qword [0x140152008]
lock dec dword [r14]
jne 0x14005fb01
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [0x140152008]
inc rdi
xor eax, eax
cmp rdi, qword [rsp + 0x60]
cmove rdi, rax
mov rax, r13
cmp rdi, r13
mov rcx, rbp
jne 0x14005fab1
cmp rax, rcx
jbe 0x1400609aa
cmp qword [rsp + 0x60], r13
jb 0x1400608ac
cmp rbp, r13
jg 0x1400608af
mov rdi, r13
shl rdi, 3
shl rbp, 3
mov r14, rbp
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + rbp]
test rcx, rcx
jne 0x14005fb65
mov rbp, r14
add rbp, 8
cmp rdi, rbp
je 0x14005fc92
jmp 0x14005fb42
lock dec dword [rcx]
jne 0x14005fb53
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
jmp 0x14005fb53
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005fc35
lea r14, [rdi + 0x50]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14005faa3
mov rcx, qword [rdi + 0x58]
call fcn.14006b2e0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs r13, 0xfffffffc00000000
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x14005fc02
mov rax, qword [rdi + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x14005fc02
jmp 0x14005fb84
mov rdi, qword [rsp + 0xe8]
test rdi, rdi
je 0x14005ece7
mov qword [rsp + 0xe0], 0
mov al, byte [rsi + 0xd]
and al, 0x7f
cmp al, 2
je 0x14005fbc8
lock dec dword [rdi + 0x18]
je 0x14005fc24
lock dec dword [rsi + 8]
jne 0x14005ecfc
mov rcx, rsi
mov edx, 1
call fcn.14006fed0
jmp 0x14005ecfc
lea r14, [rdi + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x14005fb76
mov rcx, qword [rdi + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call r13
mov rcx, r14
call rbp
test al, al
je 0x14005fcc6
mov rax, qword [rdi + 0x30]
mov qword [rsp + 0x58], rax
mov rax, qword [rdi + 0x38]
mov qword [rsp + 0x60], rax
movups xmmword [rdi + 0x30], xmm7
mov r13, qword [rdi + 0x40]
mov rbp, qword [rdi + 0x48]
movups xmmword [rdi + 0x40], xmm7
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, r13
mov rax, rbp
mov rdi, r13
cmp r13, rbp
jne 0x14005fab1
lea rcx, fcn.140062f70
mov rdx, qword [rsp + 0x58]
xor r8d, r8d
call fcn.140064cd0
movabs r13, 0xfffffffc00000000
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x14005ecf3
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005fc55
mov rax, qword [r14 + 0x10]
mov eax, dword [rax]
test al, 1
je 0x14005f17c
lea rsi, [rsp + 0x250]
mov rax, qword [rsi]
mov qword [rsi], 0
lea rdx, [rsp + 0xf8]
mov qword [rdx], rax
mov rcx, rsi
call fcn.1400fc2c0
cmp byte [rsi + 0x80], 0
jne 0x14005f17c
call fcn.1400c7b30
mov rax, qword [rcx + 0x30]
cvtsi2sd xmm0, qword [rax + 0x90]
mulsd xmm0, xmm8
ucomisd xmm9, xmm0
jb 0x1400608f7
maxsd xmm0, xmm10
cvttsd2si r12, xmm0
jmp 0x14005e71a
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14005e9f7
mov eax, dword [0x14013e9b0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0x120]
cmp rsi, 2
jb 0x14005fd9f
mov byte [rsi + 4], 0
mov edi, pe_nt_image_headers64
lea rdx, [rsi + rdi]
mov rcx, rsi
xor r8d, r8d
call fcn.1400629a0
add rdi, 0x10
cmp rdi, 0x4f8
jne 0x14005fd83
cmp r12, r13
jle 0x14005e9f7
setns al
movzx eax, al
add rax, r14
mov rdx, r12
sub rdx, r13
cmovo rdx, rax
lea rax, [r14 + r13]
add rax, 2
cmp rax, 2
cmovb rdx, r14
cmp r12, r14
cmove rdx, r14
mov rcx, qword [rsp + 0x68]
call fcn.140058030
jmp 0x14005e9f7
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005fed7
cmp qword [rsp + 0x60], rdi
jb 0x1400608b2
mov r13, rax
mov rax, qword [rsp + 0x58]
mov r14, qword [rax + rdi*8]
test r14, r14
je 0x1400608b5
mov rbp, rcx
mov rax, qword [rsp + 0x58]
mov qword [rax + rdi*8], 0
mov rax, qword [r14 + 8]
mov rcx, r14
call qword [0x140152008]
lock dec dword [r14]
jne 0x14005fe3f
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [0x140152008]
inc rdi
xor eax, eax
cmp rdi, qword [rsp + 0x60]
cmove rdi, rax
mov rax, r13
cmp rdi, r13
mov rcx, rbp
jne 0x14005fdef
cmp rax, rcx
jbe 0x140060a38
cmp qword [rsp + 0x60], r13
jb 0x1400608b8
cmp rbp, r13
jg 0x1400608bb
mov rdi, r13
shl rdi, 3
shl rbp, 3
mov r14, rbp
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + rbp]
test rcx, rcx
jne 0x14005fea3
mov rbp, r14
add rbp, 8
cmp rdi, rbp
je 0x14005ffd0
jmp 0x14005fe80
lock dec dword [rcx]
jne 0x14005fe91
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
jmp 0x14005fe91
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005ff73
lea r14, [rdi + 0x50]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14005fde1
mov rcx, qword [rdi + 0x58]
call fcn.14006b2e0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs r13, 0xfffffffc00000000
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x14005ff40
mov rax, qword [rdi + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x14005ff40
jmp 0x14005fec2
mov rdi, qword [rsp + 0xd0]
test rdi, rdi
je 0x14005ebf6
mov qword [rsp + 0xc8], 0
mov al, byte [rsi + 0xd]
and al, 0x7f
cmp al, 2
je 0x14005ff06
lock dec dword [rdi + 0x18]
je 0x14005ff62
lock dec dword [rsi + 8]
jne 0x14005ec0b
mov rcx, rsi
mov edx, 1
call fcn.14006fed0
jmp 0x14005ec0b
lea r14, [rdi + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x14005feb4
mov rcx, qword [rdi + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
call r13
mov rcx, r14
call rbp
test al, al
je 0x140060004
mov rax, qword [rdi + 0x30]
mov qword [rsp + 0x58], rax
mov rax, qword [rdi + 0x38]
mov qword [rsp + 0x60], rax
movups xmmword [rdi + 0x30], xmm7
mov r13, qword [rdi + 0x40]
mov rbp, qword [rdi + 0x48]
movups xmmword [rdi + 0x40], xmm7
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, r13
mov rax, rbp
mov rdi, r13
cmp r13, rbp
jne 0x14005fdef
lea rcx, fcn.140062f70
mov rdx, qword [rsp + 0x58]
xor r8d, r8d
call fcn.140064cd0
movabs r13, 0xfffffffc00000000
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x14005ec02
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005ff93
test byte [0x14013d9f0], 0x19
je 0x14005e9d9
mov rsi, qword [0x140145990]
lea rdi, [rsp + 0x2e0]
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
lea r8, [0x14013d9f0]
lea r9, str.WaitableEvent::Wait_Complete
mov rcx, rdi
mov dl, 0x49
call fcn.140060ad0
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400600c9
xor rsi, qword [rsp + 0x68]
mov al, byte [rsp + 0x2f8]
mov rdx, qword [rsp + 0x2e8]
lea rdi, [rsp + 0x150]
mov qword [rdi + 8], rcx
mov qword [rdi + 0x10], rdx
xor r14d, r14d
mov qword [rdi + 0x18], r14
mov byte [rdi + 0x20], al
mov edx, 0x30
mov r8, rsi
call fcn.14008d240
lea rcx, [rsp + 0x1d0]
mov qword [rcx], r14
mov qword [rdi], r14
movupd xmm0, xmmword [rdi + 8]
movups xmm1, xmmword [rdi + 0x11]
movupd xmmword [rcx + 8], xmm0
movups xmmword [rcx + 0x11], xmm1
call fcn.140060ae0
mov rcx, rdi
call fcn.140060ae0
mov rcx, qword [rsp + 0x2f0]
test rcx, rcx
je 0x1400600e3
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140152008]
movabs r14, 0x7fffffffffffffff
jmp 0x14005e9d9
mov rdx, qword [rsp + 0x68]
call fcn.1400045f0
jmp 0x14005e9f7
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005eec0
lea rdi, [rsp + 0x250]
mov rcx, rdi
call fcn.140085890
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorps xmm6, xmm6
movups xmmword [rsp + 0x20], xmm6
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x14013d0e0]
lea r8, str.WorkerThread_active
mov cl, 0x45
xor r9d, r9d
call fcn.140060ca0
test byte [0x14013d0e0], 0x19
je 0x140060272
lea rdi, [rsp + 0x250]
mov rcx, rdi
call fcn.140085890
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
movups xmmword [rsp + 0x20], xmm6
mov dword [rsp + 0x48], 8
mov qword [rsp + 0x40], 0
lea rdx, [0x14013d0e0]
lea r8, str.WorkerThread_dead
mov cl, 0x49
xor r9d, r9d
call fcn.140060ca0
jmp 0x140060272
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140152008]
jmp 0x14006024b
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14006021a
call sub.KERNEL32.dll_WakeConditionVariable
jmp 0x140060235
mov rdi, qword [rbx + 0x48]
mov rcx, qword [rdi + 0x18]
mov qword [rdi + 0x18], 0
test rcx, rcx
je 0x140060205
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x140152008]
mov rsi, qword [rdi + 0x30]
add rsi, 0x28
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400601cd
mov rax, qword [rdi + 0x30]
inc qword [rax + 0x170]
mov rax, qword [rdi + 0x30]
mov rcx, qword [rax + 0x178]
test rcx, rcx
jne 0x1400601d8
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, qword [rbx + 0x60]
test rcx, rcx
jne 0x1400601be
mov rsi, qword [rbx + 0x10]
mov qword [rbx + 0x10], 0
test rsi, rsi
jne 0x1400602e5
test byte [0x14013d0e0], 0x19
mov rsi, qword [rsp + 0x70]
jne 0x14006010f
test rsi, rsi
je 0x140060296
mov rax, qword [rsi + 8]
mov rcx, rsi
call qword [0x140152008]
lock dec dword [rsi]
jne 0x140060296
mov rax, qword [rsi + 0x10]
mov rcx, rsi
call qword [0x140152008]
mov rcx, qword [rsp + 0x308]
xor rcx, rsp
call fcn.140095f80
movaps xmm6, xmmword [rsp + 0x310]
movaps xmm7, xmmword [rsp + 0x320]
movaps xmm8, xmmword [rsp + 0x330]
movaps xmm9, xmmword [rsp + 0x340]
movaps xmm10, xmmword [rsp + 0x350]
add rsp, 0x368
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lock dec dword [rsi + 8]
jne 0x140060260
mov rcx, rsi
call fcn.1400c7270
mov rcx, rsi
call fcn.140093dd0
jmp 0x140060260
mov esi, 3
jmp 0x14005ed6e
lea rcx, [0x140149378]
call fcn.140093f10
cmp dword [0x140149378], 0xffffffff
jne 0x14005e7aa
mov rax, qword [rsp + 0x250]
mov qword [0x140149370], rax
lea rcx, [0x140149378]
call fcn.140093f78
jmp 0x14005e7aa
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005ed43
lea rcx, [0x14014936c]
call fcn.140093f10
cmp dword [0x14014936c], 0xffffffff
jne 0x14005e751
lea rcx, str.DelayFirstWorkerWake
call fcn.140062700
mov byte [0x140149368], al
lea rcx, [0x14014936c]
call fcn.140093f78
jmp 0x14005e751
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005e6c8
mov r8d, 0xa
lea rdx, [rsp + 0x2e0]
call fcn.140059180
jmp 0x14005eb01
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edi, eax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test edi, edi
jne 0x14005ed59
jmp 0x1400601df
xor eax, eax
jmp 0x14005e875
lea rsi, [rsp + 0x150]
mov rcx, rsi
call qword [0x140152008]
mov rsi, qword [rsi]
jmp 0x14005e95a
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edi, eax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test edi, edi
jne 0x14005e6de
jmp 0x14005ecd6
lea rcx, [rsp + 0x250]
call qword [0x140152008]
jmp 0x14005e64b
mov qword [rsp + 0x1d0], 0
mov rsi, qword [rsp + 0x250]
mov qword [rsp + 0x250], rax
test rsi, rsi
jne 0x1400604ce
lea rax, [rsp + 0x1d8]
movupd xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x258]
movups xmmword [rax + 0x10], xmm1
movupd xmmword [rax], xmm0
mov ecx, 0xa
lea r8, [rsp + 0x278]
mov rdi, r8
lea rdx, [rsp + 0x1f8]
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov al, byte [rdx + 0x54]
mov byte [r8 + 0x54], al
mov eax, dword [rdx + 0x50]
mov dword [r8 + 0x50], eax
jmp 0x14005f12c
mov rcx, qword [rsi + 0x28]
mov rax, rcx
movabs rdx, 0xfffffffc00000000
and rax, rdx
cmp rax, qword [0x14012fdc8]
jne 0x1400604c4
call fcn.14005c910
mov rcx, rsi
call fcn.140093dd0
jmp 0x1400604ec
lock dec dword [rsi]
jne 0x1400604f6
mov rax, qword [rsi + 0x10]
lea rcx, [0x1400f44f0]
cmp rax, rcx
je 0x1400604a2
mov rcx, rsi
call qword [0x140152008]
movabs r13, 0xfffffffc00000000
mov rdx, qword [rsp + 0x1d0]
lea rax, [rsp + 0x1d8]
movupd xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x258]
movups xmmword [rax + 0x10], xmm1
movupd xmmword [rax], xmm0
mov ecx, 0xa
lea r9, [rsp + 0x278]
mov rdi, r9
lea r8, [rsp + 0x1f8]
mov rsi, r8
rep movsq qword [rdi], qword [rsi]
mov al, byte [r8 + 0x54]
mov byte [r9 + 0x54], al
mov eax, dword [r8 + 0x50]
mov dword [r9 + 0x50], eax
test rdx, rdx
je 0x14005f12c
lock dec dword [rdx]
jne 0x14005f12c
mov rax, qword [rdx + 0x10]
mov rcx, rdx
call qword [0x140152008]
jmp 0x14005f12c
int3
lock dec dword [rcx + 8]
jne 0x14005ed0d
mov edx, 1
call fcn.14006fed0
jmp 0x14005ed0d
mov ecx, esi
call fcn.140004980
mov dword [rbx + 0x6c], esi
jmp 0x14005ed77
int3
int3
int3
int3
int3
int3
lock dec dword [rcx + 8]
jne 0x14005ec1c
mov edx, 1
call fcn.14006fed0
jmp 0x14005ec1c
lock dec dword [rcx + 8]
jne 0x14005ec63
mov edx, 1
call fcn.14006fed0
jmp 0x14005ec63
call fcn.1400c8080
jmp 0x1400605ee
mov rcx, r14
call fcn.1400fc7b0
mov dword [rsp + 0x58], 0
jmp 0x14005ee21
lock dec dword [r8 + 8]
jne 0x14005ec4a
mov rcx, r8
mov edx, 1
call fcn.14006fed0
jmp 0x14005ec4a
call fcn.140067e10
jmp 0x14005f540
int3
lea rcx, [rsp + 0xc8]
lea rdx, [rsp + 0x1d0]
lea r8, [rsp + 0xf8]
call fcn.1400fdc90
jmp 0x14005f09c
cmp rax, r13
jb 0x1400608a0
mov r12, qword [r12]
shl r13, 7
lea rdx, [rsp + 0x2e0]
call fcn.140093d20
mov rax, qword [r12 + r13 + 0x28]
lea rcx, [rsp + 0x2e0]
cmp rax, qword [rcx]
jg 0x140060689
lea rdx, [rsp + 0x1d0]
mov rcx, rdi
call fcn.1400fc910
jmp 0x14006069c
lea rdx, [rsp + 0x1d0]
mov rcx, r15
xor r8d, r8d
call fcn.1400fd620
movabs r13, 0xfffffffc00000000
jmp 0x14005f06f
mov rcx, qword [rsp + 0xe8]
test rcx, rcx
je 0x14005ec2d
mov qword [rsp + 0xe0], 0
lea rsi, [rsp + 0x250]
mov rdx, rsi
call fcn.14000e7e0
mov r8, qword [rsi]
jmp 0x14005ec41
lea rdx, [rsp + 0x150]
lea r9, [rsp + 0x128]
mov rcx, r14
mov r8, rsi
call qword [0x140152008]
jmp 0x14005f5cf
int3
lea rcx, [r14 + r9]
add rcx, 2
mov r13, r14
cmp rcx, 1
ja 0x14005e88c
mov r13, r14
cmp r9, rax
je 0x14005e88c
int3
lea rax, [r14 + r8]
add rax, 2
lea r9, [r14 + 1]
cmp rax, 1
jbe 0x140060750
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x14005e7f5
cmp r8, r13
movabs r14, 0x7fffffffffffffff
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x14005e7f5
int3
int3
int3
mov rcx, qword [0x1401473f8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rsi, rax
add rsi, r8
jmp 0x14005e95a
lea r15, [rsp + 0x2e0]
mov rdx, r15
call fcn.140093d20
mov rax, qword [r15]
mov qword [rdi + 0x88], rax
mov rcx, qword [rdi + 0x70]
cmp rcx, qword [rdi + 0x78]
je 0x1400607ea
lea r15, [rsp + 0x130]
mov rdx, r15
call fcn.140093cc0
mov rax, qword [r15]
mov qword [rdi + 0x90], rax
movabs r13, 0xfffffffc00000000
jmp 0x14005f08b
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.1400c7b30
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x1d0], rdx
mov rcx, qword [rdx]
lea r8, [rsp + 0x1d0]
mov qword [rdx], r8
mov qword [rsp + 0x1d8], rcx
mov qword [rsp + 0x1e0], 0
jmp 0x14005f3d9
mov rcx, rsi
call fcn.14005d1a0
jmp 0x14005eaa8
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.1400c7b30
lea rcx, [rsp + 0x110]
call fcn.1400c7b30
lea rcx, [rsp + 0xf8]
call fcn.1400c7b30
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
mov rcx, qword [0x1401473f8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005e643
xor r12d, r12d
ucomisd xmm0, qword [0x14011e3b8]
cmovae r12, r14
jmp 0x14005e71a
lea rax, str.basic_string_const_char__detected_nullptr
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string
lea r9, str.__s___nullptr
mov r8d, 0x3a7
call fcn.1400c7b30
lea rax, str.char_traits::copy_overlapped_range
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__stringchar_traits.h
lea r9, str.__s2_____s1____s2_____s1____n
mov r8d, 0xf3
call fcn.1400c7b30
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140152008]
jmp 0x14005daed
mov rcx, qword [0x1401473f8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005dca5
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005f88e
cmp qword [rsp + 0x60], rbp
jb 0x1400608be
jl 0x1400608c1
je 0x1400609f5
shl qword [rsp + 0x60], 3
shl rbp, 3
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + rbp]
test rcx, rcx
je 0x1400609e4
lock dec dword [rcx]
jne 0x1400609e4
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
mov rax, rbp
add rax, 8
mov rbp, rax
cmp qword [rsp + 0x60], rax
jne 0x1400609c7
test r13, r13
js 0x1400608c4
je 0x14005fc92
mov r14, r13
shl r14, 3
xor edi, edi
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + rdi]
test rcx, rcx
je 0x140060a2a
lock dec dword [rcx]
jne 0x140060a2a
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
add rdi, 8
cmp r14, rdi
jne 0x140060a0d
jmp 0x14005fc92
cmp qword [rsp + 0x60], rbp
jb 0x1400608c7
jl 0x1400608ca
je 0x140060a83
shl qword [rsp + 0x60], 3
shl rbp, 3
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + rbp]
test rcx, rcx
je 0x140060a72
lock dec dword [rcx]
jne 0x140060a72
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
mov rax, rbp
add rax, 8
mov rbp, rax
cmp qword [rsp + 0x60], rax
jne 0x140060a55
test r13, r13
js 0x1400608cd
je 0x14005ffd0
mov r14, r13
shl r14, 3
xor edi, edi
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + rdi]
test rcx, rcx
je 0x140060ab8
lock dec dword [rcx]
jne 0x140060ab8
mov rax, qword [rcx + 0x10]
call qword [0x140152008]
add rdi, 8
cmp r14, rdi
jne 0x140060a9b
jmp 0x14005ffd0