Function at 0x1400c0810
Capabilities:
Check for time delay via queryperformancecounter
Check os version

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 r13, rcx
mov rax, qword [0x140231028]
xor rax, rsp
mov qword [rsp + 0x1d8], rax
mov qword [rsp + 0x140], 0xb
mov al, byte [0x14024358b]
test al, al
jne 0x1400c36fe
mov qword [rsp + 0x140], 0xb
mov al, byte [0x14024358b]
test al, al
jne 0x1400c3744
mov rcx, qword [r13 + 0x48]
test rcx, rcx
jne 0x1400c361a
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
call qword [0x140223bc8]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x10]
mov rcx, rax
mov rdx, r13
mov rax, r8
call qword [0x140223bc8]
mov eax, dword [0x140243ab8]
test eax, eax
je 0x1400c09aa
mov rax, qword [r13 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x1400c08f2
cmp dword [r13 + 0x50], 0
je 0x1400c09aa
mov rcx, qword [0x140243aa8]
test rcx, rcx
je 0x1400c35f7
lea rsi, [rsp + 0x188]
mov rdx, rsi
mov r8d, 2
call fcn.140030d10
mov rax, qword [rsi]
mov qword [rsp + 0x88], rax
mov al, 1
mov qword [rsp + 0x80], rax
movabs r15, 0x7fffffffffffffff
mov eax, dword [0x1402403d0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x128]
mov qword [rsp + 0x60], rcx
lea r12, [rsp + 0x1b8]
lea rax, [rax + 0x160]
mov qword [rsp + 0x98], rax
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movaps xmm6, xmmword [0x1401fd0c0]
movsd xmm7, qword [0x14021a550]
movsd xmm8, qword [0x14020f710]
movsd xmm9, qword [0x14020f708]
xorps xmm10, xmm10
mov qword [rsp + 0x48], r13
jmp 0x1400c1062
xor eax, eax
mov qword [rsp + 0x88], rax
xor eax, eax
jmp 0x1400c0925
lea r14, [r15 + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x1400c35fe
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x1400c0a6f
jmp 0x1400c2d69
cmp qword [rsp + 0x50], 0
je 0x1400c0a7f
mov rax, qword [rsp + 0x40]
mov al, byte [rax + 0xd]
and al, 0x7f
cmp al, 2
je 0x1400c0a3d
mov r15, qword [rsp + 0x50]
lock dec dword [r15 + 0x18]
je 0x1400c09bb
mov rax, qword [rsp + 0x40]
lock dec dword [rax + 8]
jne 0x1400c0f1e
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c0f1e
lea rsi, [rax + 0x2b0]
mov ebx, 7
cmp qword [rax + 0x2b0], 0
jne 0x1400c0cf3
jmp 0x1400c29cb
lea rsi, [rax + 0x250]
mov ebx, 6
cmp qword [rax + 0x250], 0
jne 0x1400c0cf3
jmp 0x1400c2b06
lea rsi, [rax + 0x1f0]
mov ebx, 5
cmp qword [rax + 0x1f0], 0
jne 0x1400c0cf3
jmp 0x1400c29f6
lea rsi, [rax + 0x190]
mov ebx, 4
cmp qword [rax + 0x190], 0
jne 0x1400c0cf3
jmp 0x1400c2a22
lea r14, [r15 + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x1400c3512
lea rcx, [r15 + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
call rbx
mov rcx, r14
call rbp
test al, al
je 0x1400c3520
mov r15, qword [rsp + 0xb8]
test r15, r15
je 0x1400c0f2f
mov qword [rsp + 0xb0], 0
mov al, byte [rsi + 0xd]
and al, 0x7f
cmp al, 2
je 0x1400c289a
lock dec dword [r15 + 0x18]
je 0x1400c0b26
lock dec dword [rsi + 8]
jne 0x1400c0f44
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c0f44
lea rsi, [rax + 0x130]
mov ebx, 3
cmp qword [rax + 0x130], 0
jne 0x1400c0cf3
jmp 0x1400c2add
lea rsi, [rax + 0xd0]
mov ebx, 2
cmp qword [rax + 0xd0], 0
jne 0x1400c0cf3
jmp 0x1400c2a4b
lea rsi, [rax + 0x70]
mov ebx, 1
cmp qword [rax + 0x70], 0
jne 0x1400c0cf3
jmp 0x1400c2a74
lea rsi, [rax + 0x10]
xor ebx, ebx
cmp qword [rsi], 0
jne 0x1400c0cf3
jmp 0x1400c2a9d
mov rcx, r14
call fcn.140097320
jmp 0x1400c0d7a
mov r8d, dword [r14 + 0x20]
cmp r8, 0x7f
ja 0x1400c286b
mov r15, qword [r14]
mov rdx, qword [r15 + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x1400c286b
cmp rax, qword [r15 + 8]
jb 0x1400c286b
lea rcx, [rdx - 3]
call fcn.14012dd60
add qword [r15 + 0x18], 0xfffffffffffffffd
mov al, byte [r14 + 0x20]
mov rcx, qword [r14 + 0x18]
mov byte [rcx], al
mov al, 2
movabs r15, 0x7fffffffffffffff
mov byte [r14 + 0x24], al
mov qword [r14 + 0x18], 0
jmp 0x1400c0d8c
cmp qword [rsi], 0
je 0x1400c2925
test rsi, rsi
je 0x1400c0ecb
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x140127120]
cmp rax, rdx
jne 0x1400c333d
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
cmp rax, qword [rsi + 0x50]
je 0x1400c0dce
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [fcn.1400c9000]
cmp rax, rdx
jne 0x1400c336e
lea rdx, [rsp + 0x188]
call fcn.1400c9000
mov r14, qword [rsp + 0x188]
test r14, r14
je 0x1400c0d9c
mov r12, qword [rsp + 0x190]
cmp byte [r14 + 0x24], 0
jne 0x1400c0d8c
cmp qword [r14 + 0x10], 0
jne 0x1400c0c78
mov rax, qword [r14 + 0x18]
test rax, rax
jne 0x1400c0c85
mov byte [r14 + 0x24], 1
test r12, r12
je 0x1400c0d9c
mov rcx, r12
mov rdx, r14
call fcn.1400ab200
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x140127120]
cmp rax, rdx
jne 0x1400c3348
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
lea r12, [rsp + 0x1b8]
mov qword [rsi + 0x50], rax
cmp byte [rsi + 0x48], 1
je 0x1400c3454
cmp ebx, 6
ja 0x1400c0ecb
mov eax, ebx
inc ebx
inc rax
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx]
lea rdx, [rax + rax*2]
shl rax, 7
shl rdx, 5
lea rsi, [rcx + rdx]
add rsi, 0x10
mov edx, 0x400
lea r8, [0x1402331d8]
mov ebp, edi
mov r9d, 1
mov ecx, ebx
shl r9d, cl
bt ebp, ebx
jb 0x1400c0ce9
add rdx, 0xffffffffffffff80
sub r8, 0xffffffffffffff80
add rsi, 0x60
inc ebx
cmp rax, rdx
jne 0x1400c0e12
jmp 0x1400c0ecb
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
test rax, rax
je 0x1400c280d
mov edi, esi
mov rdx, qword [rax + 8]
cmp byte [rdx + 0xc], 0
jne 0x1400c1109
mov rcx, qword [0x140231db8]
mov byte [rdx + 0xc], 1
mov rdx, qword [rax + 8]
mov r8d, dword [rcx + 0x10]
cmp dword [rdx + 8], r8d
jne 0x1400c3381
test dil, 1
jne 0x1400c0c63
test dil, 2
jne 0x1400c0c4a
test dil, 4
jne 0x1400c0c2b
test dil, 8
jne 0x1400c0c0c
test dil, 0x10
jne 0x1400c0b07
test dil, 0x20
jne 0x1400c0ae8
test dil, 0x40
jne 0x1400c0ac9
test dil, dil
js 0x1400c0aaa
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov rax, qword [rax + 8]
mov byte [rax + 0xc], 0
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c1109
mov rcx, r14
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0xb0]
mov r9, r13
call qword [0x140223bc8]
jmp 0x1400c0f5f
add rcx, 0x18
call rbx
cmp qword [rsp + 0x40], 0
jne 0x1400c0a59
mov rsi, qword [rsp + 0xb0]
test rsi, rsi
jne 0x1400c0bb3
mov qword [rsp + 0xb0], 0
test rsi, rsi
jne 0x1400c0be8
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
jne 0x1400c2f2b
movabs r15, 0x7fffffffffffffff
mov rax, qword [r13 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x1400c276f
mov esi, dword [r13 + 0x50]
cmp dword [r13 + 0x54], esi
jne 0x1400c2bde
cmp qword [rsp + 0xf0], 0
jne 0x1400c2e0d
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rcx
test rax, rax
jne 0x1400c169b
mov sil, 1
cmp byte [rsp + 0x118], 1
jne 0x1400c1059
cmp byte [rsp + 0x100], 1
jne 0x1400c1059
mov rax, qword [rsp + 0x98]
mov rdi, qword [rax]
test rdi, rdi
je 0x1400c1059
mov rax, qword [rdi + 0x10]
test rax, rax
js 0x1400c2d35
cmp dword [rdi + 0x24], 1
jne 0x1400c32a9
cmp qword [rdi + 0x18], 0
jne 0x1400c31c2
movabs rax, 0xbfffffffffffffff
lock and qword [rdi + 0x10], rax
mov rbx, qword [rsp + 0x108]
cmp qword [rdi + 0x18], 0
jne 0x1400c31e8
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]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test sil, sil
je 0x1400c2324
movzx eax, byte [r13 + 0x30]
test al, al
jne 0x1400c2324
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
lea rcx, [0x1400c3c50]
cmp rax, rcx
jne 0x1400c1f1f
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + 0x18]
mov al, byte [rax]
test al, al
jne 0x1400c2324
mov rdi, qword [r13 + 0x38]
lea rsi, [rdi + 0x60]
mov rcx, rsi
call rbp
test al, al
je 0x1400c2717
mov rax, qword [rdi + 0x68]
test rax, rax
jne 0x1400c22f7
mov rcx, rsi
call rbx
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0x110], xmm6
mov byte [rsp + 0x100], 0
mov byte [rsp + 0x118], 0
mov qword [rsp + 0x140], 0xb
movzx eax, byte [0x14024358b]
test al, al
jne 0x1400c3240
mov esi, dword [0x1402331d4]
test esi, esi
jne 0x1400c0e3e
cmp byte [rsp + 0x118], 1
je 0x1400c306d
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
lea rcx, [0x1400c3c40]
cmp rax, rcx
jne 0x1400c2066
mov rsi, qword [r13 + 0x70]
mov rax, qword [rsi]
lea rcx, [fcn.140163920]
cmp qword [rax + 0x30], rcx
jne 0x1400c2278
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x170], rax
mov rax, qword [rsi]
mov rax, qword [rax + 0x28]
lea rcx, [0x1401292b0]
cmp rax, rcx
jne 0x1400c1f72
cmp byte [rsi - 8], 1
mov rax, r15
jne 0x1400c11ab
mov rax, qword [rsi - 0x18]
cvtsi2sd xmm0, qword [rax + 0x30]
mulsd xmm0, xmm7
ucomisd xmm0, xmm8
mov rcx, r15
mov eax, 0
cmovb rcx, rax
ucomisd xmm9, xmm0
maxsd xmm0, xmm8
cvttsd2si rax, xmm0
cmovb rax, rcx
mov qword [rsp + 0x170], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x128], rax
mov rax, qword [fcn.1400b3290]
lea rcx, [0x1400b3340]
cmp rax, rcx
jne 0x1400c2c28
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 0x1400c320e
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402439e0]
mov r14, rax
mov qword [rsp + 0xf0], rax
mov rax, qword [rsi]
lea rcx, [fcn.1401b4700]
cmp qword [rax + 0x50], rcx
jne 0x1400c30ac
mov eax, dword [0x14024a450]
mov ecx, dword [0x1402403d0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400c2733
cmp byte [0x14024a44c], 0
je 0x1400c2ede
mov eax, dword [0x14024a460]
mov ecx, dword [0x1402403d0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400c26e6
mov rax, qword [rsi + 8]
test rax, rax
jne 0x1400c12a7
mov rax, qword [0x14024a458]
add rax, 0x3938700
cmovo rax, r15
cmp rax, r14
mov ebx, 0x3938700
mov r8d, 0xf4240
cmovl rbx, r8
add rbx, r14
cmovo rbx, r15
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 0x1400c1311
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, r15
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 [rsi]
mov rax, qword [rax + 0x48]
lea rcx, [0x1400cb7d0]
cmp rax, rcx
jne 0x1400c2132
lea rdi, [r15 + rbx]
add rdi, 2
cmp rdi, 2
jb 0x1400c22c9
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 [rsi + 0x10]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x140], rax
mov rax, qword [fcn.1400b3290]
lea rcx, [0x1400b3340]
cmp rax, rcx
jne 0x1400c2c08
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 0x1400c3198
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402439e0]
mov qword [rsp + 0x140], rax
mov rcx, qword [r12]
mov edx, r14d
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x1400c2162
mov byte [rsi + 0x20], 0
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x170], 0xb
movzx eax, byte [0x14024358b]
test al, al
jne 0x1400c32f0
movzx eax, byte [r13 + 0x30]
test al, al
jne 0x1400c212b
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
lea rcx, [0x1400c3c50]
cmp rax, rcx
jne 0x1400c1f38
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + 0x18]
mov al, byte [rax]
test al, al
jne 0x1400c212b
mov rdi, qword [r13 + 0x38]
lea rsi, [rdi + 0x60]
mov rcx, rsi
call rbp
test al, al
je 0x1400c2725
mov rax, qword [rdi + 0x68]
test rax, rax
jne 0x1400c2b95
mov rcx, rsi
call rbx
cmp byte [rsp + 0x80], 0
je 0x1400c1513
cmp byte [rsp + 0x118], 1
je 0x1400c2ef4
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 [r13 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x1400c295e
mov esi, dword [r13 + 0x50]
cmp dword [r13 + 0x54], esi
jne 0x1400c2f81
movaps xmmword [rsp + 0xf0], xmm6
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
lea rcx, [0x1400c3c40]
cmp rax, rcx
jne 0x1400c20fc
mov rsi, qword [r13 + 0x70]
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
lea rcx, [0x140125700]
cmp rax, rcx
jne 0x1400c1f88
movups xmmword [r12 + 0x10], xmm6
movups xmmword [r12], xmm6
mov rbx, qword [rsi - 0x18]
mov qword [rsp + 0x190], rbx
mov byte [rsp + 0x1c8], 0
movups xmmword [r12 - 0x10], xmm10
movups xmmword [r12 - 0x20], xmm10
lea rdi, fcn.140100a80
mov qword [rsp + 0x188], rdi
mov dword [rsp + 0x1d0], 0
add rbx, 0x68
mov rcx, rbx
call rbp
test al, al
je 0x1400c2058
add rsi, 0xffffffffffffffc0
mov rcx, rsi
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0x188]
mov r9, r13
call fcn.1400c3c70
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x188], rdi
cmp dword [rsp + 0x1d0], 0
jg 0x1400c1ecd
lea rax, [0x1401ffe38]
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x1b0]
mov rax, rdx
mov rbx, r12
and rax, 1
jne 0x1400c2bfb
mov rdi, rdx
shr rdi, 1
mov cl, 1
cmp rdx, 2
jae 0x1400c2544
mov rdx, r12
test rax, rax
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x1400c2cab
test cl, cl
je 0x1400c245a
test rax, rax
jne 0x1400c2cb8
mov qword [rsp + 0x1b0], 0
cmp byte [rsp + 0x1c8], 0
jne 0x1400c2968
mov rdi, qword [rsp + 0x198]
test rdi, rdi
jne 0x1400c1fa8
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x1400c2087
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0xe8]
call fcn.1400c7300
mov rcx, qword [r13 + 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.1400c4ee0
mov r8, qword [rsp + 0xf0]
test r8, r8
jne 0x1400c2f4c
mov qword [rsp + 0x140], r8
mov qword [rsp + 0xf0], 0
test r8, r8
jne 0x1400c2f06
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x188], 0
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0xf0], rax
test rcx, rcx
jne 0x1400c2f91
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.1400c7300
cmp byte [rsp + 0x80], 0
je 0x1400c1832
cmp byte [rsp + 0x118], 1
jne 0x1400c180e
cmp byte [rsp + 0x100], 1
jne 0x1400c180e
mov rax, qword [rsp + 0x98]
mov rsi, qword [rax]
test rsi, rsi
je 0x1400c180e
mov rax, qword [rsi + 0x10]
test rax, rax
js 0x1400c2d24
cmp dword [rsi + 0x24], 1
jne 0x1400c311a
cmp qword [rsi + 0x18], 0
jne 0x1400c3086
movabs rax, 0xbfffffffffffffff
lock and qword [rsi + 0x10], rax
mov rdi, qword [rsp + 0x108]
cmp qword [rsi + 0x18], 0
jne 0x1400c30ca
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 [r13]
mov rax, qword [rax + 0x18]
lea rcx, [0x1400c3c40]
cmp rax, rcx
jne 0x1400c1f51
mov r14, qword [r13 + 0x70]
mov rdi, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf8]
mov qword [rsp + 0xb0], rdi
movaps xmmword [rsp + 0xf0], xmm10
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0xb8], rcx
mov rax, qword [r14]
mov rax, qword [rax + 0x20]
lea rcx, [0x1400ec690]
cmp rax, rcx
jne 0x1400c0eee
test rdi, rdi
jne 0x1400c1e89
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rax - 0xaa]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
lea r15, [rsp + 0x1b8]
movups xmmword [r15 + 0x10], xmm6
movups xmmword [r15], xmm6
mov rsi, qword [r14 - 0x18]
mov qword [rsp + 0x190], rsi
mov byte [rsp + 0x1c8], 0
movups xmmword [r12 - 0x10], xmm10
movups xmmword [r12 - 0x20], xmm10
lea rax, fcn.140100a80
mov qword [rsp + 0x188], rax
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 rsi, 0x68
mov rcx, rsi
call rbp
test al, al
je 0x1400c211d
cmp byte [r14 - 5], 1
mov qword [rsp + 0x70], rdi
je 0x1400c2e7e
cmp byte [r14 - 0x27], 0
je 0x1400c2ecb
mov rax, qword [r14 - 0x18]
mov rcx, qword [rax + 0x118]
dec rcx
cmp byte [r14 - 0x28], 0
mov qword [rax + 0x118], rcx
je 0x1400c1ec1
mov rdx, qword [rax + 0x80]
cmp rdx, qword [rax + 0x88]
je 0x1400c19a4
cmp rcx, qword [rax + 0x108]
jae 0x1400c1e79
mov word [rax + 0xb8], 0
cmp byte [r14 - 0x25], 1
jne 0x1400c19b9
mov byte [r14 - 0x25], 0
cmp byte [r14 - 0x27], 1
jne 0x1400c19c5
mov byte [r14 - 0x27], 0
lea rbp, [r14 - 0x40]
mov r13, qword [r14 - 0x18]
test rdi, rdi
jne 0x1400c1cfe
mov qword [rsp + 0x68], rbp
mov rbp, qword [r13 + 0x98]
mov r9, qword [r13 + 0x120]
test rbp, rbp
jne 0x1400c1e16
xor ebp, ebp
mov r12, qword [r13 + 0xa8]
mov r10, qword [r13 + 0x110]
mov rbx, qword [r13 + 0x120]
mov rdi, qword [r13 + 0x118]
add r12, qword [r13 + 0xa0]
je 0x1400c1d83
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x1400c1d83
mov rax, qword [r13 + 0x80]
cmp rax, qword [r13 + 0x88]
je 0x1400c2e26
mov cl, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x1400c1b41
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x1400adc80]
cmp rdx, r8
je 0x1400c1b2f
lea rax, [0x140129660]
cmp rdx, rax
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x90], r10
jne 0x1400c3353
mov eax, dword [rcx + 0x40]
test al, 1
jne 0x1400c2864
mov r15, qword [rcx + 0x70]
test r15, r15
je 0x1400c2dc5
mov edx, 1
lock xadd dword [r15], edx
test edx, edx
jle 0x1400c2dc2
mov qword [rsp + 0xa8], rsi
cmp edx, 0x7fffffff
je 0x1400c2dbf
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 [0x140223bc8]
mov rsi, rax
lock dec dword [r15]
je 0x1400c3168
cmp rsi, 0x20
mov eax, 0x20
cmovae rsi, rax
sub rsi, qword [rsp + 0xa0]
mov eax, 0
cmovae rax, rsi
lea r15, [rsp + 0x1b8]
mov rsi, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x78]
mov r10, qword [rsp + 0x90]
lea rcx, [r12 + rax]
dec rcx
add r12, rax
cmp rcx, 1
adc r12, 0xffffffffffffffff
sub rdi, rbx
add rbp, r9
cmp r10, rbp
cmovb rbp, r10
cmp rbp, rbx
cmovbe rbp, rbx
add rdi, r12
add rdi, rbp
mov rax, qword [r13 + 0x108]
cmp rax, rdi
cmovb rdi, rax
mov eax, 0x100
cmp rdi, rax
cmovae rdi, rax
mov rax, qword [r14 - 0x18]
mov rcx, qword [rax + 0x1c0]
cmp rdi, rcx
jae 0x1400c1def
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
mov r13, qword [rsp + 0x48]
lea r12, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, rsi
call rbx
mov rcx, qword [rsp + 0x160]
test rcx, rcx
jne 0x1400c2b2f
cmp byte [rsp + 0x158], 1
je 0x1400c2996
lea rax, fcn.140100a80
mov qword [rsp + 0x188], rax
cmp dword [rsp + 0x1d0], 0
jg 0x1400c1cac
lea rax, [0x1401ffe38]
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x1b0]
mov rax, rdx
mov rdi, r15
and rax, 1
jne 0x1400c2bee
mov rsi, rdx
shr rsi, 1
mov cl, 1
cmp rdx, 2
jae 0x1400c2499
mov rdx, r15
test rax, rax
mov rdi, qword [rsp + 0x70]
jne 0x1400c2c1b
test cl, cl
je 0x1400c2285
test rax, rax
jne 0x1400c2c99
mov qword [rsp + 0x1b0], 0
cmp byte [rsp + 0x1c8], 0
jne 0x1400c28f7
mov rbp, qword [rsp + 0x198]
test rbp, rbp
jne 0x1400c1d8b
test rdi, rdi
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x1400c0f1e
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1400c0f12
jmp 0x1400c0f0c
xor esi, esi
mov qword [rsp + 0x168], 0x9d
mov al, byte [0x14024361d]
test al, al
jne 0x1400c33dd
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 0x1400c2e10
inc esi
cmp esi, dword [rsp + 0x1d0]
jge 0x1400c1c03
jmp 0x1400c1cae
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x138], rax
mov rcx, r13
mov rdi, rsi
lea rsi, [rsp + 0x188]
mov rdx, rsi
lea r8, [rsp + 0x140]
lea r9, [rsp + 0x128]
call fcn.1400ed8e0
mov rcx, rbp
lea rdx, [rsp + 0xc0]
mov r8, rsi
mov rsi, rdi
mov r13, qword [rsp + 0x48]
mov r9, r13
call fcn.1400c3c70
xor eax, eax
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x58], rax
jmp 0x1400c1bc2
xor r12d, r12d
jmp 0x1400c1b41
mov rsi, qword [rsp + 0x1a0]
mov rcx, rbp
cmp rsi, rbp
je 0x1400c1ddd
mov rax, rsi
add rsi, 0xfffffffffffffff0
je 0x1400c2e13
mov r14, qword [rsi]
test r14, r14
jne 0x1400c25fe
mov qword [rsi], 0
test r14, r14
jne 0x1400c2623
mov rcx, qword [rsi]
test rcx, rcx
jne 0x1400c3433
cmp rsi, rbp
jne 0x1400c1d9b
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rbp
call fcn.1401298a0
jmp 0x1400c1c89
mov rcx, qword [rsp + 0x68]
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0x188]
mov r13, qword [rsp + 0x48]
mov r9, r13
call fcn.1400c3c70
jmp 0x1400c1bb3
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x1400c19f2
mov rax, qword [r13 + 0x80]
cmp rax, qword [r13 + 0x88]
je 0x1400c2e26
cmp byte [rax + 0x10], 0
jne 0x1400c19f4
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x1400adc80]
cmp rdx, r8
jne 0x1400c3487
lea rcx, [rax + rbp]
dec rcx
add rbp, rax
cmp rcx, 1
adc rbp, 0xffffffffffffffff
jmp 0x1400c19f4
movzx ecx, word [rdx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x1400c19ad
lea rsi, [rdi + 0x18]
movaps xmmword [rsp + 0xb0], xmm10
mov rcx, rsi
call rbp
test al, al
lea r15, [rsp + 0x1b8]
je 0x1400c1eb6
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x58], rdi
jmp 0x1400c18cc
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c1ea7
dec qword [rax + 0x120]
jmp 0x1400c1987
xor esi, esi
mov qword [rsp + 0x128], 0x9d
mov al, byte [0x14024361d]
test al, al
jne 0x1400c349b
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 0x1400c31bf
inc esi
cmp esi, dword [rsp + 0x1d0]
jge 0x1400c1602
jmp 0x1400c1ecf
lea rcx, [0x1400c4ed0]
cmp rax, rcx
jne 0x1400c339b
mov al, byte [r13 + 0x78]
jmp 0x1400c1091
lea rcx, [0x1400c4ed0]
cmp rax, rcx
jne 0x1400c33a9
mov al, byte [r13 + 0x78]
jmp 0x1400c14a8
lea rcx, [0x1400c3c40]
cmp rax, rcx
je 0x1400c1852
mov rcx, r13
call qword [0x140223bc8]
mov r14, rax
jmp 0x1400c1856
mov rcx, rsi
lea rdx, [rsp + 0x170]
call qword [0x140223bc8]
jmp 0x1400c11b3
mov rcx, rsi
lea rdx, [rsp + 0xf0]
mov r8, r13
call qword [0x140223bc8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c168a
mov r15, qword [rsp + 0x1a0]
mov rcx, rdi
cmp r15, rdi
je 0x1400c1ff7
mov rax, r15
add r15, 0xfffffffffffffff0
je 0x1400c2e13
mov rsi, qword [r15]
test rsi, rsi
jne 0x1400c2013
mov qword [r15], 0
test rsi, rsi
jne 0x1400c203b
mov rcx, qword [r15]
test rcx, rcx
jne 0x1400c34f1
cmp r15, rdi
mov r13, qword [rsp + 0x48]
jne 0x1400c1fb8
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rdi
call fcn.1401298a0
movabs r15, 0x7fffffffffffffff
jmp 0x1400c168a
mov r13, qword [rax - 8]
test r13, r13
je 0x1400c1fcd
mov qword [r15], 0
mov al, byte [rsi + 0xd]
and al, 0x7f
cmp al, 2
je 0x1400c2c41
lock dec dword [r13 + 0x18]
je 0x1400c2779
lock dec dword [rsi + 8]
jne 0x1400c1fd9
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c1fd9
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c15c4
lea rcx, [0x1400c3c40]
cmp rax, rcx
je 0x1400c112f
mov rcx, r13
call qword [0x140223bc8]
mov rsi, rax
jmp 0x1400c1133
mov al, byte [r13 + 0x30]
test al, al
jne 0x1400c20ef
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
mov rcx, r13
call qword [0x140223bc8]
test al, al
jne 0x1400c20ef
mov rdi, qword [r13 + 0x38]
lea rsi, [rdi + 0x60]
mov rcx, rsi
call rbp
test al, al
je 0x1400c2b87
mov rax, qword [rdi + 0x68]
test rax, rax
jne 0x1400c2cd7
mov rcx, rsi
call rbx
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
call qword [0x140223bc8]
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x40]
mov rcx, rax
mov rax, rdx
call qword [0x140223bc8]
mov rax, qword [rsp + 0xf0]
jmp 0x1400c0fae
lea rcx, [0x1400c3c40]
cmp rax, rcx
je 0x1400c1553
mov rcx, r13
call qword [0x140223bc8]
mov rsi, rax
jmp 0x1400c1557
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c194c
xor esi, esi
jmp 0x1400c0fba
lea rcx, [0x1400127f0]
cmp rax, rcx
jne 0x1400c33cc
lea rcx, [rsi + 0x10]
mov rdx, rbx
call fcn.1400b37f0
test al, al
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x1400c145e
jmp 0x1400c221d
mov ebp, eax
mov rax, qword [rsp + 0x140]
cmp rdi, 2
jb 0x1400c3175
lea rcx, [rax + rbx]
sar rcx, 0x3f
btc rcx, 0x3f
add rax, rbx
cmovo rax, rcx
mov r13, rax
mov rax, qword [fcn.1400b3290]
lea rcx, [0x1400b3340]
cmp rax, rcx
jne 0x1400c2d46
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 0x1400c385a
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402439e0]
cmp rax, r13
mov r13, qword [rsp + 0x48]
jle 0x1400c142f
cmp ebp, 0x102
lea r12, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x1400c352e
mov byte [rsi + 0x20], 1
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call fcn.1400cb560
mov rcx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x170]
cmp rax, rcx
jle 0x1400c145e
setns dl
movzx r8d, dl
add r8, r15
mov rdx, rax
sub rdx, rcx
lea rcx, [r15 + rcx + 2]
cmovo rdx, r8
cmp rcx, 2
cmovb rdx, r15
cmp rax, r15
cmove rdx, r15
mov rax, qword [rsi]
mov rax, qword [rax + 0x48]
mov rcx, rsi
call qword [0x140223bc8]
jmp 0x1400c145e
mov rcx, rsi
call fcn.140163920
jmp 0x1400c145e
lea rdi, [rdx + rsi*8]
add rdi, 0xfffffffffffffff8
neg rsi
test rdi, rdi
je 0x1400c2e13
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400c22ab
lock dec dword [rcx + 8]
je 0x1400c3827
add rdi, 0xfffffffffffffff8
inc rsi
jne 0x1400c2290
mov rax, qword [rsp + 0x1b0]
and eax, 1
mov rdi, qword [rsp + 0x70]
jmp 0x1400c1c55
lea r14, [r15 + 1]
test rbx, rbx
cmovns r14, r15
jmp 0x1400c13a0
lock dec dword [rcx + 8]
jne 0x1400c2375
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c2375
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x1400c2d05
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x1400c10c0
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
call qword [0x140223bc8]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov rdx, r13
mov rax, r8
call qword [0x140223bc8]
mov rcx, qword [r13 + 0x48]
test rcx, rcx
jne 0x1400c362c
mov rcx, qword [r13 + 0x10]
mov qword [r13 + 0x10], 0
test rcx, rcx
mov rsi, qword [rsp + 0x88]
jne 0x1400c22d9
mov qword [rsp + 0x140], 0xb
mov al, byte [0x14024358b]
test al, al
jne 0x1400c378a
mov qword [rsp + 0x140], 0xb
mov al, byte [0x14024358b]
test al, al
jne 0x1400c37d0
mov ecx, dword [0x1402331d4]
test ecx, ecx
jne 0x1400c3537
test rsi, rsi
jne 0x1400c240b
mov rcx, qword [rsp + 0x1d8]
xor rcx, rsp
call fcn.14012c2d0
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 [0x140223bc8]
lock dec dword [rsi]
jne 0x1400c23bc
mov rax, qword [rsi + 0x10]
lea rcx, [0x1401eb230]
cmp rax, rcx
je 0x1400c2438
mov rcx, rsi
call qword [0x140223bc8]
jmp 0x1400c23bc
mov rcx, qword [rsi + 0x28]
test rcx, rcx
jne 0x1400c244e
mov rcx, rsi
call fcn.1401298a0
jmp 0x1400c23bc
lock dec dword [rcx]
jne 0x1400c2441
call fcn.1401298a0
jmp 0x1400c2441
lea rsi, [rdx + rdi*8]
add rsi, 0xfffffffffffffff8
neg rdi
test rsi, rsi
je 0x1400c2e13
mov rcx, qword [rsi]
test rcx, rcx
je 0x1400c2480
lock dec dword [rcx + 8]
je 0x1400c389b
add rsi, 0xfffffffffffffff8
inc rdi
jne 0x1400c2465
mov rax, qword [rsp + 0x1b0]
and eax, 1
jmp 0x1400c1656
shl rsi, 3
xor ebx, ebx
mov r14, qword [rdi + rbx]
test r14, r14
je 0x1400c24be
mov eax, 1
lock xadd dword [r14 + 8], eax
cmp eax, 0x7fffffff
je 0x1400c2dc8
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x1400c24e8
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x1400c2dcb
mov rcx, r14
call fcn.14004a390
mov rcx, qword [rsp + 0x190]
cmp byte [rcx + 0x1a0], 1
je 0x1400c36ed
test r14, r14
je 0x1400c2515
lock dec dword [r14 + 8]
je 0x1400c3881
add rbx, 8
cmp rsi, rbx
jne 0x1400c249f
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 [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c1c3c
shl rdi, 3
xor r14d, r14d
mov rsi, qword [rbx + r14]
test rsi, rsi
je 0x1400c2569
mov eax, 1
lock xadd dword [rsi + 8], eax
cmp eax, 0x7fffffff
je 0x1400c3531
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x1400c2593
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x1400c3534
mov rcx, rsi
call fcn.14004a390
mov rcx, qword [rsp + 0x190]
cmp byte [rcx + 0x1a0], 1
je 0x1400c3816
test rsi, rsi
je 0x1400c25bf
lock dec dword [rsi + 8]
je 0x1400c3975
add r14, 8
cmp rdi, r14
jne 0x1400c254b
mov rcx, qword [rsp + 0x1b0]
mov rdi, rcx
shr rdi, 1
mov eax, ecx
and eax, 1
cmp rcx, 2
setb cl
jmp 0x1400c163b
mov rax, qword [r15 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x1400c261c
jmp 0x1400c2e39
mov r15, qword [rax - 8]
test r15, r15
je 0x1400c1db4
mov qword [rsi], 0
mov al, byte [r14 + 0xd]
and al, 0x7f
cmp al, 2
je 0x1400c25e7
lock dec dword [r15 + 0x18]
je 0x1400c2648
lock dec dword [r14 + 8]
jne 0x1400c1dc4
mov rax, qword [r14]
mov rax, qword [rax + 0x30]
mov rcx, r14
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c1dc4
lea r13, [r15 + 0x20]
mov rcx, r13
mov rdi, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call rdi
test al, al
je 0x1400c383e
lea rcx, [r15 + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r13
call rbx
mov rcx, r13
call rdi
test al, al
je 0x1400c384c
mov rax, qword [r15 + 0x40]
mov qword [rsp + 0x68], rax
mov rax, qword [r15 + 0x48]
mov qword [rsp + 0x78], rax
movups xmmword [r15 + 0x40], xmm10
mov r12, qword [r15 + 0x50]
mov rdi, qword [r15 + 0x58]
movups xmmword [r15 + 0x50], xmm10
mov rcx, r13
call rbx
mov rax, rdi
mov r13, r12
cmp r12, rdi
jne 0x1400c38ce
lea rcx, fcn.1400bbbd0
mov rdx, qword [rsp + 0x68]
xor r8d, r8d
call fcn.1400b7130
mov r13, qword [rsp + 0x48]
lea r12, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x70]
jmp 0x1400c1dbb
lea rcx, [0x14024a460]
call fcn.1401299b4
cmp dword [0x14024a460], 0xffffffff
jne 0x1400c1297
mov qword [0x14024a458], r14
lea rcx, [0x14024a460]
call fcn.140129a1c
jmp 0x1400c1297
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c10ae
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c14c5
lea rcx, [0x14024a450]
call fcn.1401299b4
cmp dword [0x14024a450], 0xffffffff
jne 0x1400c1265
lea rcx, str.xf__
call fcn.1400cba30
mov byte [0x14024a44c], al
lea rcx, [0x14024a450]
call fcn.140129a1c
jmp 0x1400c1265
mov esi, 3
jmp 0x1400c0f75
lea r14, [r13 + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x1400c38b2
lea rcx, [r13 + 0x28]
call qword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov rcx, r14
call rbx
mov rcx, r14
call rbp
test al, al
je 0x1400c38c0
mov rax, qword [r13 + 0x40]
mov qword [rsp + 0x50], rax
mov rax, qword [r13 + 0x48]
mov qword [rsp + 0x40], rax
movups xmmword [r13 + 0x40], xmm10
mov rbp, qword [r13 + 0x50]
mov r12, qword [r13 + 0x58]
movups xmmword [r13 + 0x50], xmm10
mov rcx, r14
call rbx
mov rax, r12
mov r13, rbp
cmp rbp, r12
jne 0x1400c398f
lea rcx, fcn.1400bbbd0
mov rdx, qword [rsp + 0x50]
xor r8d, r8d
call fcn.1400b7130
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c1fd4
mov rax, qword [0x140231db8]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140223bc8]
lea rcx, [rax + 0x6218]
lea rdx, [0x1402331c8]
mov qword [rax + 0x6218], rdx
mov qword [rax + 0x6220], rax
mov rax, qword [rsp + 0x60]
mov qword [rax], rcx
mov edi, dword [0x1402331d4]
and edi, esi
je 0x1400c1109
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
jmp 0x1400c0e51
xor eax, eax
jmp 0x1400c1b2f
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 0x1400c0cce
mov rax, qword [r15 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x1400c0bdd
lea rbx, [r15 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400c3a93
mov rcx, qword [r15 + 0x68]
call fcn.1400cd9c0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13, qword [rsp + 0x48]
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c0bdd
mov rcx, qword [rsp + 0x190]
call fcn.140163b60
cmp qword [rsp + 0x1b0], 0
je 0x1400c1c78
lea rcx, [rsp + 0x1b0]
call fcn.14019ac70
jmp 0x1400c1c78
mov ebp, dword [0x1402331d4]
and ebp, edi
test ebp, r9d
je 0x1400c2957
mov cl, byte [r8 + rax]
test cl, 1
je 0x1400c2957
add r8, rax
lea rcx, [0x1402331c8]
mov rdx, rsi
mov r9d, ebx
call fcn.140030fd0
mov edi, ebp
jmp 0x1400c0cf3
mov edi, ebp
jmp 0x1400c0e26
mov esi, 3
jmp 0x1400c1529
mov rcx, qword [rsp + 0x190]
call fcn.140163b60
cmp qword [rsp + 0x1b0], 0
je 0x1400c1679
lea rcx, [rsp + 0x1b0]
call fcn.14019ac70
jmp 0x1400c1679
mov rcx, qword [rsp + 0x150]
test rcx, rcx
je 0x1400c29b9
add rcx, 0x18
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x150], 0
lea rcx, [rsp + 0x140]
call fcn.1400c6c10
jmp 0x1400c1be6
mov eax, dword [0x1402331d4]
test al, al
jns 0x1400c0ecb
mov cl, byte [0x140233558]
test cl, 1
je 0x1400c0ecb
and edi, eax
lea r8, [0x140233558]
jmp 0x1400c2ac6
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 0x20
je 0x1400c0eb8
mov cl, byte [0x140233458]
test cl, 1
je 0x1400c0eb8
lea r8, [0x140233458]
jmp 0x1400c2ac6
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 0x10
je 0x1400c0eae
mov cl, byte [0x1402333d8]
test cl, 1
je 0x1400c0eae
lea r8, [0x1402333d8]
jmp 0x1400c2ac6
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 4
je 0x1400c0e9a
mov cl, byte [0x1402332d8]
test cl, 1
je 0x1400c0e9a
lea r8, [0x1402332d8]
jmp 0x1400c2ac6
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 2
je 0x1400c0e90
mov cl, byte [0x140233258]
test cl, 1
je 0x1400c0e90
lea r8, [0x140233258]
jmp 0x1400c2ac6
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 1
je 0x1400c0e86
mov cl, byte [0x1402331d8]
test cl, 1
je 0x1400c0e86
lea r8, [0x1402331d8]
xor ebx, ebx
lea rcx, [0x1402331c8]
mov rdx, rsi
mov r9d, ebx
call fcn.140030fd0
jmp 0x1400c0cf3
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 8
je 0x1400c0ea4
mov cl, byte [0x140233358]
test cl, 1
je 0x1400c0ea4
lea r8, [0x140233358]
jmp 0x1400c2ac6
mov ecx, dword [0x1402331d4]
and edi, ecx
test cl, 0x40
je 0x1400c0ec2
mov cl, byte [0x1402334d8]
test cl, 1
je 0x1400c0ec2
lea r8, [0x1402334d8]
jmp 0x1400c2ac6
cmp byte [rsp + 0x158], 0
je 0x1400c2dba
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 [0x140223bc8]
jmp 0x1400c1bd8
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c20b9
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x1400c2bc3
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
je 0x1400c212b
jmp 0x1400c14d7
cmp ebx, 0x102
je 0x1400c2ba6
mov ecx, ebx
call fcn.14018dcc0
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c14d2
mov ecx, esi
call fcn.140026480
mov dword [r13 + 0x54], esi
jmp 0x1400c0f7f
mov rdi, qword [rsp + 0x1b8]
jmp 0x1400c1c2a
mov rbx, qword [rsp + 0x1b8]
jmp 0x1400c1629
lea rcx, [rsp + 0x140]
call qword [0x140223bc8]
jmp 0x1400c142f
mov rdx, qword [rsp + 0x1b8]
jmp 0x1400c1c4d
lea rbx, [rsp + 0xf0]
mov rcx, rbx
call qword [0x140223bc8]
mov r14, qword [rbx]
jmp 0x1400c122c
mov rax, qword [r13 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x1400c2030
lea rbx, [r13 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400c3abd
mov rcx, qword [r13 + 0x68]
call fcn.1400cd9c0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c2030
mov rcx, qword [rsp + 0x1b8]
call fcn.1401298a0
jmp 0x1400c1c5e
mov rdx, qword [rsp + 0x1b8]
jmp 0x1400c164e
mov rcx, qword [rsp + 0x1b8]
call fcn.1401298a0
jmp 0x1400c165f
cmp ebx, 0x102
je 0x1400c2ce8
jmp 0x1400c3c29
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x1400c2cca
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x1400c20cb
jmp 0x1400c20ef
cmp ebx, 0x102
je 0x1400c230c
mov ecx, ebx
call fcn.14018dcc0
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c10bb
mov rcx, qword [0x140243aa8]
call fcn.1401632a0
jmp 0x1400c17af
mov rcx, qword [0x140243aa8]
call fcn.1401632a0
jmp 0x1400c0ff3
lea r15, [rsp + 0x188]
mov rcx, r15
call qword [0x140223bc8]
mov rax, qword [r15]
movabs r15, 0x7fffffffffffffff
jmp 0x1400c21e9
mov rax, qword [rsp + 0x50]
lea rsi, [rax + 0x60]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400c3aa1
call fcn.140163630
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
lea rcx, [0x14020233c]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.140163630
lea rcx, [0x14020233c]
lea rdx, str....._third_partylibc_srcinclude_vector:618:_assertion__empty___failed:_front___called_on_an_empty_vector_n
call fcn.140163630
lea rbx, [r15 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400c3aaf
mov rcx, qword [r15 + 0x68]
call fcn.1400cd9c0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13, qword [rsp + 0x48]
lea r12, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x70]
jmp 0x1400c261c
mov rcx, qword [r14 - 0x18]
call fcn.140095900
cmp byte [r14 - 0x27], 0
je 0x1400c2ecb
cmp byte [r14 - 0x28], 0
jne 0x1400c2e9e
mov rcx, qword [r14 - 0x18]
call fcn.14019ab50
mov word [r14 - 7], 0
mov byte [r14 - 5], 0
lea r12, [rsp + 0x1b8]
lea r15, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x70]
jmp 0x1400c195c
lea rcx, [0x14020233c]
lea rdx, str....._third_partylibc_srcincludeoptional:795:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.140163630
mov qword [rsp + 0x128], 0xf4240
mov ebx, 0xf4240
jmp 0x1400c1347
lea rcx, [rsp + 0x100]
call fcn.1401125d0
jmp 0x1400c14ef
lock dec dword [r8 + 8]
jne 0x1400c1712
mov rax, qword [r8]
mov rax, qword [rax + 0x30]
mov rcx, r8
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c1712
lock dec dword [rcx + 8]
jne 0x1400c0f55
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c0f55
mov rcx, qword [rsp + 0xf8]
test rcx, rcx
je 0x1400c16f5
mov qword [rsp + 0xf0], 0
lea rsi, [rsp + 0x140]
mov rdx, rsi
call fcn.140020b10
mov r8, qword [rsi]
jmp 0x1400c1709
mov ecx, esi
call fcn.140026480
mov dword [r13 + 0x54], esi
jmp 0x1400c1533
lock dec dword [rcx + 8]
jne 0x1400c2fa9
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
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 r13, qword [rsp + 0x48]
movabs r15, 0x7fffffffffffffff
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
je 0x1400c174f
lock dec dword [rcx + 8]
je 0x1400c3059
mov rcx, qword [rsp + 0x188]
test rcx, rcx
mov r13, qword [rsp + 0x48]
movabs r15, 0x7fffffffffffffff
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
je 0x1400c174f
lock dec dword [rcx + 8]
jne 0x1400c174f
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c174f
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c3002
lea rsi, [rsp + 0x100]
mov rcx, rsi
call fcn.1401125d0
mov byte [rsi + 0x18], 0
jmp 0x1400c1117
lea rcx, [rsi + 0x18]
mov rdi, qword [rsi + 0x10]
call fcn.14018e130
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x1400c17c4
lea rbx, [rsp + 0x128]
mov rcx, rsi
mov rdx, rbx
mov r8, r14
call fcn.1401b4700
mov rbx, qword [rbx]
jmp 0x1400c1347
lea rcx, [rsi + 0x18]
mov rbx, qword [rsi + 0x10]
call fcn.14018e130
movabs rcx, 0xff00000000000000
and rcx, rbx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x1400c17e6
lea rcx, [rsi + 0x18]
mov rdi, qword [rsi + 0x10]
call fcn.14018e130
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x1400c312f
cmp byte [rsp + 0x110], 1
jne 0x1400c17d3
cmp qword [rsi + 0x18], 0
jne 0x1400c30f7
movabs rax, 0x4000000000000000
lock or qword [rsi + 0x10], rax
mov r13, qword [rsp + 0x48]
movabs r15, 0x7fffffffffffffff
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c17d3
mov rcx, r15
call fcn.140119a70
jmp 0x1400c1af4
mov r13, rbx
cmp rax, rbx
je 0x1400c218d
add rax, r15
add rax, 2
mov r13, rbx
cmp rax, 1
ja 0x1400c218d
int3
mov rcx, qword [0x1402439e0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400c1427
int3
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
call fcn.14018e130
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x1400c1008
lea rcx, [rdi + 0x18]
mov r14, qword [rdi + 0x10]
call fcn.14018e130
movabs rcx, 0xff00000000000000
and rcx, r14
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x1400c102a
mov rcx, qword [0x1402439e0]
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 0x1400c122c
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140204430]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x45
lea rdx, [rsp + 0x140]
mov r9d, 2
call fcn.1400326c0
jmp 0x1400c10fb
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
call fcn.14018e130
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x1400c32be
cmp byte [rsp + 0x110], 1
jne 0x1400c1017
cmp qword [rdi + 0x18], 0
jne 0x1400c3286
movabs rax, 0x4000000000000000
lock or qword [rdi + 0x10], rax
mov r13, qword [rsp + 0x48]
movabs r15, 0x7fffffffffffffff
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
jmp 0x1400c1017
movzx ecx, al
mov rax, qword [0x140241b20]
xor rax, qword [r13 + 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.14001dfa0
jmp 0x1400c1479
call qword [0x140223bc8]
jmp 0x1400c0d22
call qword [0x140223bc8]
jmp 0x1400c0dc2
mov rax, rdx
call qword [0x140223bc8]
mov r10, qword [rsp + 0x90]
mov r9, qword [rsp + 0x78]
jmp 0x1400c1b2f
lea rdx, [rsp + 0x188]
call qword [0x140223bc8]
jmp 0x1400c0d53
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140223bc8]
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
jmp 0x1400c0e7c
mov rcx, r13
call qword [0x140223bc8]
jmp 0x1400c1091
mov rcx, r13
call qword [0x140223bc8]
jmp 0x1400c14a8
int3
int3
int3
int3
int3
int3
int3
mov rcx, rsi
mov rdx, rbx
call qword [0x140223bc8]
jmp 0x1400c214e
movzx ecx, al
mov eax, 0x1b0
add rax, qword [rsp + 0x190]
xor rax, qword [0x140241b20]
mov qword [rsp + 0x140], rax
lea rax, [0x14021a558]
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.1400f44a0
jmp 0x1400c1cc8
lock dec dword [rcx + 8]
jne 0x1400c1dd0
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c1dd0
mov rcx, qword [rsi]
lea rax, [0x140168f80]
lea rdx, [rsp + 0x188]
mov qword [rdx + 0x18], rax
lea rax, [0x140203ed0]
mov qword [rdx + 0x20], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140223bc8]
jmp 0x1400c0dd8
mov rax, rdx
mov rdi, r9
call qword [0x140223bc8]
mov r9, rdi
jmp 0x1400c1e62
movzx ecx, al
mov eax, 0x1b0
add rax, qword [rsp + 0x190]
xor rax, qword [0x140241b20]
mov qword [rsp + 0x140], rax
lea rax, [0x14021a558]
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.1400f44a0
jmp 0x1400c1ee9
lock dec dword [rcx + 8]
jne 0x1400c1fe5
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c1fe5
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c0b37
int3
int3
int3
call fcn.1401b4950
jmp 0x1400c23b7
xor eax, eax
jmp 0x1400c091b
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140223bc8]
jmp 0x1400c08a4
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140223bc8]
jmp 0x1400c2358
add rcx, 0x190
call fcn.1400ffbb0
jmp 0x1400c2505
movzx ecx, al
lea rax, str.WorkerThread_born
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140204430]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], 0x49
lea rdx, [rsp + 0x140]
mov r9d, 3
call fcn.1400326c0
jmp 0x1400c087d
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140204430]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x42
lea rdx, [rsp + 0x140]
mov r9d, 1
call fcn.1400326c0
jmp 0x1400c0897
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140204430]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x45
lea rdx, [rsp + 0x140]
mov r9d, 2
call fcn.1400326c0
jmp 0x1400c238f
movzx ecx, al
lea rax, str.WorkerThread_dead
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140204430]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], 0x49
lea rdx, [rsp + 0x140]
mov r9d, 3
call fcn.1400326c0
jmp 0x1400c23a9
add rcx, 0x190
call fcn.1400ffbb0
jmp 0x1400c25b0
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c22ab
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c2660
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c267c
mov rcx, qword [0x1402439e0]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1400c21e9
mov rax, qword [r14]
mov rax, qword [rax + 8]
mov rcx, r14
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c2515
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c2480
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c278a
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c27a6
mov rbx, rax
mov r15, qword [rsp + 0x68]
mov rax, qword [rsp + 0x78]
cmp rax, r13
jb 0x1400c2de0
mov rcx, qword [r15 + r13*8]
test rcx, rcx
je 0x1400c2ddd
mov rdi, rax
lea rax, [rsp + 0x140]
mov qword [rax], rcx
xor edx, edx
mov qword [r15 + r13*8], rdx
mov rax, qword [rcx + 8]
call qword [0x140223bc8]
lea rcx, [rsp + 0x140]
call fcn.1400b6860
inc r13
cmp r13, rdi
mov eax, 0
cmove r13, rax
mov rax, rbx
cmp r13, rbx
jne 0x1400c38ce
cmp rax, r12
jbe 0x1400c3acb
cmp rdi, rbx
jb 0x1400c2dda
cmp r12, rbx
jg 0x1400c2dd7
lea r15, [r15 + r12*8]
shl rbx, 3
shl r12, 3
sub rbx, r12
mov rcx, r15
call fcn.1400b6860
add r15, 8
add rbx, 0xfffffffffffffff8
je 0x1400c26b4
jmp 0x1400c395d
mov rax, qword [rsi]
mov rax, qword [rax + 8]
mov rcx, rsi
mov edx, 1
call qword [0x140223bc8]
jmp 0x1400c25bf
mov rbx, rax
mov r14, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
cmp rax, r13
jb 0x1400c33b7
mov rcx, qword [r14 + r13*8]
test rcx, rcx
je 0x1400c33ba
mov r12, rax
lea rax, [rsp + 0x140]
mov qword [rax], rcx
xor edx, edx
mov qword [r14 + r13*8], rdx
mov rax, qword [rcx + 8]
call qword [0x140223bc8]
lea rcx, [rsp + 0x140]
call fcn.1400b6860
inc r13
cmp r13, r12
mov eax, 0
cmove r13, rax
mov rax, rbx
cmp r13, rbx
jne 0x1400c398f
cmp rax, rbp
jbe 0x1400c3a32
cmp r12, rbx
jb 0x1400c33bd
cmp rbp, rbx
jg 0x1400c33c0
lea r14, [r14 + rbp*8]
shl rbx, 3
shl rbp, 3
sub rbx, rbp
mov rcx, r14
call fcn.1400b6860
add r14, 8
add rbx, 0xfffffffffffffff8
je 0x1400c27de
jmp 0x1400c3a1a
cmp r12, rbp
jb 0x1400c33c3
jl 0x1400c33c6
je 0x1400c3a64
lea r13, [r14 + rbp*8]
shl r12, 3
shl rbp, 3
sub r12, rbp
mov rcx, r13
call fcn.1400b6860
add r13, 8
add r12, 0xfffffffffffffff8
jne 0x1400c3a52
test rbx, rbx
js 0x1400c33c9
je 0x1400c27de
shl rbx, 3
mov r14, qword [rsp + 0x50]
mov rcx, r14
call fcn.1400b6860
add r14, 8
add rbx, 0xfffffffffffffff8
jne 0x1400c3a7c
jmp 0x1400c27de
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c28c5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c2e4e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400c2c6c
cmp rdi, r12
jb 0x1400c2dd4
jl 0x1400c2dd1
je 0x1400c3afd
lea r13, [r15 + r12*8]
shl rdi, 3
shl r12, 3
sub rdi, r12
mov rcx, r13
call fcn.1400b6860
add r13, 8
add rdi, 0xfffffffffffffff8
jne 0x1400c3aeb
test rbx, rbx
js 0x1400c2dce
mov ecx, ebx
call fcn.14018dcc0
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x1400c20c6