Function at 0x1401243b0
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 [0x1402b3040]
xor rax, rsp
mov qword [rsp + 0x1d8], rax
mov qword [rsp + 0x140], 0xa
mov al, byte [0x1402c585a]
test al, al
jne 0x14012729e
mov qword [rsp + 0x140], 0xa
mov al, byte [0x1402c585a]
test al, al
jne 0x1401272e4
mov rcx, qword [r13 + 0x48]
test rcx, rcx
jne 0x1401271ba
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
call qword [0x1402a3e88]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x10]
mov rcx, rax
mov rdx, r13
mov rax, r8
call qword [0x1402a3e88]
mov eax, dword [0x1402c5d98]
test eax, eax
je 0x14012454a
mov rax, qword [r13 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140124492
cmp dword [r13 + 0x50], 0
je 0x14012454a
mov rcx, qword [0x1402c5d88]
test rcx, rcx
je 0x140127197
lea rsi, [rsp + 0x188]
mov rdx, rsi
mov r8d, 2
call fcn.14002c8b0
mov rax, qword [rsi]
mov qword [rsp + 0x88], rax
mov al, 1
mov qword [rsp + 0x80], rax
movabs r15, 0x7fffffffffffffff
mov eax, dword [0x1402c2670]
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 [0x14026f080]
movsd xmm7, qword [0x14028f250]
movsd xmm8, qword [0x140282390]
movsd xmm9, qword [0x140282388]
xorps xmm10, xmm10
mov qword [rsp + 0x48], r13
jmp 0x140124c02
xor eax, eax
mov qword [rsp + 0x88], rax
xor eax, eax
jmp 0x1401244c5
lea r14, [r15 + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x14012719e
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x14012460f
jmp 0x140126909
cmp qword [rsp + 0x50], 0
je 0x14012461f
mov rax, qword [rsp + 0x40]
mov al, byte [rax + 0xd]
and al, 0x7f
cmp al, 2
je 0x1401245dd
mov r15, qword [rsp + 0x50]
lock dec dword [r15 + 0x18]
je 0x14012455b
mov rax, qword [rsp + 0x40]
lock dec dword [rax + 8]
jne 0x140124abe
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140124abe
lea rsi, [rax + 0x2b0]
mov ebx, 7
cmp qword [rax + 0x2b0], 0
jne 0x140124893
jmp 0x14012656b
lea rsi, [rax + 0x250]
mov ebx, 6
cmp qword [rax + 0x250], 0
jne 0x140124893
jmp 0x1401266a6
lea rsi, [rax + 0x1f0]
mov ebx, 5
cmp qword [rax + 0x1f0], 0
jne 0x140124893
jmp 0x140126596
lea rsi, [rax + 0x190]
mov ebx, 4
cmp qword [rax + 0x190], 0
jne 0x140124893
jmp 0x1401265c2
lea r14, [r15 + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x1401270b2
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 0x1401270c0
mov r15, qword [rsp + 0xb8]
test r15, r15
je 0x140124acf
mov qword [rsp + 0xb0], 0
mov al, byte [rsi + 0xd]
and al, 0x7f
cmp al, 2
je 0x14012643a
lock dec dword [r15 + 0x18]
je 0x1401246c6
lock dec dword [rsi + 8]
jne 0x140124ae4
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140124ae4
lea rsi, [rax + 0x130]
mov ebx, 3
cmp qword [rax + 0x130], 0
jne 0x140124893
jmp 0x14012667d
lea rsi, [rax + 0xd0]
mov ebx, 2
cmp qword [rax + 0xd0], 0
jne 0x140124893
jmp 0x1401265eb
lea rsi, [rax + 0x70]
mov ebx, 1
cmp qword [rax + 0x70], 0
jne 0x140124893
jmp 0x140126614
lea rsi, [rax + 0x10]
xor ebx, ebx
cmp qword [rsi], 0
jne 0x140124893
jmp 0x14012663d
mov rcx, r14
call fcn.1400fc960
jmp 0x14012491a
mov r8d, dword [r14 + 0x20]
cmp r8, 0x7f
ja 0x14012640b
mov r15, qword [r14]
mov rdx, qword [r15 + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x14012640b
cmp rax, qword [r15 + 8]
jb 0x14012640b
lea rcx, [rdx - 3]
call fcn.1401cd6f0
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 0x14012492c
cmp qword [rsi], 0
je 0x1401264c5
test rsi, rsi
je 0x140124a6b
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14018cdd0]
cmp rax, rdx
jne 0x140126edd
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
cmp rax, qword [rsi + 0x50]
je 0x14012496e
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [fcn.14012cba0]
cmp rax, rdx
jne 0x140126f0e
lea rdx, [rsp + 0x188]
call fcn.14012cba0
mov r14, qword [rsp + 0x188]
test r14, r14
je 0x14012493c
mov r12, qword [rsp + 0x190]
cmp byte [r14 + 0x24], 0
jne 0x14012492c
cmp qword [r14 + 0x10], 0
jne 0x140124818
mov rax, qword [r14 + 0x18]
test rax, rax
jne 0x140124825
mov byte [r14 + 0x24], 1
test r12, r12
je 0x14012493c
mov rcx, r12
mov rdx, r14
call fcn.140110840
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14018cdd0]
cmp rax, rdx
jne 0x140126ee8
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 0x140126ff4
cmp ebx, 6
ja 0x140124a6b
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, [0x1402b5278]
mov ebp, edi
mov r9d, 1
mov ecx, ebx
shl r9d, cl
bt ebp, ebx
jb 0x140124889
add rdx, 0xffffffffffffff80
sub r8, 0xffffffffffffff80
add rsi, 0x60
inc ebx
cmp rax, rdx
jne 0x1401249b2
jmp 0x140124a6b
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
test rax, rax
je 0x1401263ad
mov edi, esi
mov rdx, qword [rax + 8]
cmp byte [rdx + 0xc], 0
jne 0x140124ca9
mov rcx, qword [0x1402b3e18]
mov byte [rdx + 0xc], 1
mov rdx, qword [rax + 8]
mov r8d, dword [rcx + 0x10]
cmp dword [rdx + 8], r8d
jne 0x140126f21
test dil, 1
jne 0x140124803
test dil, 2
jne 0x1401247ea
test dil, 4
jne 0x1401247cb
test dil, 8
jne 0x1401247ac
test dil, 0x10
jne 0x1401246a7
test dil, 0x20
jne 0x140124688
test dil, 0x40
jne 0x140124669
test dil, dil
js 0x14012464a
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 0x140124ca9
mov rcx, r14
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0xb0]
mov r9, r13
call qword [0x1402a3e88]
jmp 0x140124aff
add rcx, 0x18
call rbx
cmp qword [rsp + 0x40], 0
jne 0x1401245f9
mov rsi, qword [rsp + 0xb0]
test rsi, rsi
jne 0x140124753
mov qword [rsp + 0xb0], 0
test rsi, rsi
jne 0x140124788
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
jne 0x140126acb
movabs r15, 0x7fffffffffffffff
mov rax, qword [r13 + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x14012630f
mov esi, dword [r13 + 0x50]
cmp dword [r13 + 0x54], esi
jne 0x14012677e
cmp qword [rsp + 0xf0], 0
jne 0x1401269ad
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rcx
test rax, rax
jne 0x14012523b
mov sil, 1
cmp byte [rsp + 0x118], 1
jne 0x140124bf9
cmp byte [rsp + 0x100], 1
jne 0x140124bf9
mov rax, qword [rsp + 0x98]
mov rdi, qword [rax]
test rdi, rdi
je 0x140124bf9
mov rax, qword [rdi + 0x10]
test rax, rax
js 0x1401268d5
cmp dword [rdi + 0x24], 1
jne 0x140126e49
cmp qword [rdi + 0x18], 0
jne 0x140126d62
movabs rax, 0xbfffffffffffffff
lock and qword [rdi + 0x10], rax
mov rbx, qword [rsp + 0x108]
cmp qword [rdi + 0x18], 0
jne 0x140126d88
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 0x140125ec4
movzx eax, byte [r13 + 0x30]
test al, al
jne 0x140125ec4
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
lea rcx, [0x1401277f0]
cmp rax, rcx
jne 0x140125abf
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + 0x18]
mov al, byte [rax]
test al, al
jne 0x140125ec4
mov rdi, qword [r13 + 0x38]
lea rsi, [rdi + 0x60]
mov rcx, rsi
call rbp
test al, al
je 0x1401262b7
mov rax, qword [rdi + 0x68]
test rax, rax
jne 0x140125e97
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], 0xa
movzx eax, byte [0x1402c585a]
test al, al
jne 0x140126de0
mov esi, dword [0x1402b5274]
test esi, esi
jne 0x1401249de
cmp byte [rsp + 0x118], 1
je 0x140126c0d
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
lea rcx, [0x1401277e0]
cmp rax, rcx
jne 0x140125c06
mov rsi, qword [r13 + 0x70]
mov rax, qword [rsi]
lea rcx, [fcn.1401cec50]
cmp qword [rax + 0x30], rcx
jne 0x140125e18
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x170], rax
mov rax, qword [rsi]
mov rax, qword [rax + 0x28]
lea rcx, [0x14018efc0]
cmp rax, rcx
jne 0x140125b12
cmp byte [rsi - 8], 1
mov rax, r15
jne 0x140124d4b
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.140118b20]
lea rcx, [0x140118bd0]
cmp rax, rcx
jne 0x1401267c8
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 0x140126dae
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c5cb8]
mov r14, rax
mov qword [rsp + 0xf0], rax
mov rax, qword [rsi]
lea rcx, [fcn.140226860]
cmp qword [rax + 0x50], rcx
jne 0x140126c4c
mov eax, dword [0x1402cc8f0]
mov ecx, dword [0x1402c2670]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1401262d3
cmp byte [0x1402cc8ec], 0
je 0x140126a7e
mov eax, dword [0x1402cc900]
mov ecx, dword [0x1402c2670]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140126286
mov rax, qword [rsi + 8]
test rax, rax
jne 0x140124e47
mov rax, qword [0x1402cc8f8]
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 0x140124eb1
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, [0x14012f370]
cmp rax, rcx
jne 0x140125cd2
lea rdi, [r15 + rbx]
add rdi, 2
cmp rdi, 2
jb 0x140125e69
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.140118b20]
lea rcx, [0x140118bd0]
cmp rax, rcx
jne 0x1401267a8
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 0x140126d38
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c5cb8]
mov qword [rsp + 0x140], rax
mov rcx, qword [r12]
mov edx, r14d
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x140125d02
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], 0xa
movzx eax, byte [0x1402c585a]
test al, al
jne 0x140126e90
movzx eax, byte [r13 + 0x30]
test al, al
jne 0x140125ccb
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
lea rcx, [0x1401277f0]
cmp rax, rcx
jne 0x140125ad8
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + 0x18]
mov al, byte [rax]
test al, al
jne 0x140125ccb
mov rdi, qword [r13 + 0x38]
lea rsi, [rdi + 0x60]
mov rcx, rsi
call rbp
test al, al
je 0x1401262c5
mov rax, qword [rdi + 0x68]
test rax, rax
jne 0x140126735
mov rcx, rsi
call rbx
cmp byte [rsp + 0x80], 0
je 0x1401250b3
cmp byte [rsp + 0x118], 1
je 0x140126a94
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 0x1401264fe
mov esi, dword [r13 + 0x50]
cmp dword [r13 + 0x54], esi
jne 0x140126b21
movaps xmmword [rsp + 0xf0], xmm6
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
lea rcx, [0x1401277e0]
cmp rax, rcx
jne 0x140125c9c
mov rsi, qword [r13 + 0x70]
mov rax, qword [rsi]
mov rax, qword [rax + 0x18]
lea rcx, [0x14018b730]
cmp rax, rcx
jne 0x140125b28
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.140165230
mov qword [rsp + 0x188], rdi
mov dword [rsp + 0x1d0], 0
add rbx, 0x68
mov rcx, rbx
call rbp
test al, al
je 0x140125bf8
add rsi, 0xffffffffffffffc0
mov rcx, rsi
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0x188]
mov r9, r13
call fcn.140127810
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x188], rdi
cmp dword [rsp + 0x1d0], 0
jg 0x140125a6d
lea rax, [0x140271e78]
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x1b0]
mov rax, rdx
mov rbx, r12
and rax, 1
jne 0x14012679b
mov rdi, rdx
shr rdi, 1
mov cl, 1
cmp rdx, 2
jae 0x1401260e4
mov rdx, r12
test rax, rax
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x14012684b
test cl, cl
je 0x140125ffa
test rax, rax
jne 0x140126858
mov qword [rsp + 0x1b0], 0
cmp byte [rsp + 0x1c8], 0
jne 0x140126508
mov rdi, qword [rsp + 0x198]
test rdi, rdi
jne 0x140125b48
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x140125c27
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0xe8]
call fcn.14012aea0
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.140128a80
mov r8, qword [rsp + 0xf0]
test r8, r8
jne 0x140126aec
mov qword [rsp + 0x140], r8
mov qword [rsp + 0xf0], 0
test r8, r8
jne 0x140126aa6
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x188], 0
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0xf0], rax
test rcx, rcx
jne 0x140126b31
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.14012aea0
cmp byte [rsp + 0x80], 0
je 0x1401253d2
cmp byte [rsp + 0x118], 1
jne 0x1401253ae
cmp byte [rsp + 0x100], 1
jne 0x1401253ae
mov rax, qword [rsp + 0x98]
mov rsi, qword [rax]
test rsi, rsi
je 0x1401253ae
mov rax, qword [rsi + 0x10]
test rax, rax
js 0x1401268c4
cmp dword [rsi + 0x24], 1
jne 0x140126cba
cmp qword [rsi + 0x18], 0
jne 0x140126c26
movabs rax, 0xbfffffffffffffff
lock and qword [rsi + 0x10], rax
mov rdi, qword [rsp + 0x108]
cmp qword [rsi + 0x18], 0
jne 0x140126c6a
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, [0x1401277e0]
cmp rax, rcx
jne 0x140125af1
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, [0x140150e40]
cmp rax, rcx
jne 0x140124a8e
test rdi, rdi
jne 0x140125a29
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.140165230
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 0x140125cbd
cmp byte [r14 - 5], 1
mov qword [rsp + 0x70], rdi
je 0x140126a1e
cmp byte [r14 - 0x27], 0
je 0x140126a6b
mov rax, qword [r14 - 0x18]
mov rcx, qword [rax + 0x118]
dec rcx
cmp byte [r14 - 0x28], 0
mov qword [rax + 0x118], rcx
je 0x140125a61
mov rdx, qword [rax + 0x80]
cmp rdx, qword [rax + 0x88]
je 0x140125544
cmp rcx, qword [rax + 0x108]
jae 0x140125a19
mov word [rax + 0xb8], 0
cmp byte [r14 - 0x25], 1
jne 0x140125559
mov byte [r14 - 0x25], 0
cmp byte [r14 - 0x27], 1
jne 0x140125565
mov byte [r14 - 0x27], 0
lea rbp, [r14 - 0x40]
mov r13, qword [r14 - 0x18]
test rdi, rdi
jne 0x14012589e
mov qword [rsp + 0x68], rbp
mov rbp, qword [r13 + 0x98]
mov r9, qword [r13 + 0x120]
test rbp, rbp
jne 0x1401259b6
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 0x140125923
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x140125923
mov rax, qword [r13 + 0x80]
cmp rax, qword [r13 + 0x88]
je 0x1401269c6
mov cl, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x1401256e1
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x1401132c0]
cmp rdx, r8
je 0x1401256cf
lea rax, [0x14018f370]
cmp rdx, rax
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x90], r10
jne 0x140126ef3
mov eax, dword [rcx + 0x40]
test al, 1
jne 0x140126404
mov r15, qword [rcx + 0x70]
test r15, r15
je 0x140126965
mov edx, 1
lock xadd dword [r15], edx
test edx, edx
jle 0x140126962
mov qword [rsp + 0xa8], rsi
cmp edx, 0x7fffffff
je 0x14012695f
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 [0x1402a3e88]
mov rsi, rax
lock dec dword [r15]
je 0x140126d08
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 0x14012598f
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 0x1401266cf
cmp byte [rsp + 0x158], 1
je 0x140126536
lea rax, fcn.140165230
mov qword [rsp + 0x188], rax
cmp dword [rsp + 0x1d0], 0
jg 0x14012584c
lea rax, [0x140271e78]
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x1b0]
mov rax, rdx
mov rdi, r15
and rax, 1
jne 0x14012678e
mov rsi, rdx
shr rsi, 1
mov cl, 1
cmp rdx, 2
jae 0x140126039
mov rdx, r15
test rax, rax
mov rdi, qword [rsp + 0x70]
jne 0x1401267bb
test cl, cl
je 0x140125e25
test rax, rax
jne 0x140126839
mov qword [rsp + 0x1b0], 0
cmp byte [rsp + 0x1c8], 0
jne 0x140126497
mov rbp, qword [rsp + 0x198]
test rbp, rbp
jne 0x14012592b
test rdi, rdi
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
je 0x140124abe
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140124ab2
jmp 0x140124aac
xor esi, esi
mov qword [rsp + 0x168], 0x9a
mov al, byte [0x1402c58ea]
test al, al
jne 0x140126f7d
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 0x1401269b0
inc esi
cmp esi, dword [rsp + 0x1d0]
jge 0x1401257a3
jmp 0x14012584e
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.140152090
mov rcx, rbp
lea rdx, [rsp + 0xc0]
mov r8, rsi
mov rsi, rdi
mov r13, qword [rsp + 0x48]
mov r9, r13
call fcn.140127810
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 0x140125762
xor r12d, r12d
jmp 0x1401256e1
mov rsi, qword [rsp + 0x1a0]
mov rcx, rbp
cmp rsi, rbp
je 0x14012597d
mov rax, rsi
add rsi, 0xfffffffffffffff0
je 0x1401269b3
mov r14, qword [rsi]
test r14, r14
jne 0x14012619e
mov qword [rsi], 0
test r14, r14
jne 0x1401261c3
mov rcx, qword [rsi]
test rcx, rcx
jne 0x140126fd3
cmp rsi, rbp
jne 0x14012593b
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rbp
call fcn.14018f5b0
jmp 0x140125829
mov rcx, qword [rsp + 0x68]
lea rdx, [rsp + 0xc0]
lea r8, [rsp + 0x188]
mov r13, qword [rsp + 0x48]
mov r9, r13
call fcn.140127810
jmp 0x140125753
mov rax, qword [r13 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x140125592
mov rax, qword [r13 + 0x80]
cmp rax, qword [r13 + 0x88]
je 0x1401269c6
cmp byte [rax + 0x10], 0
jne 0x140125594
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x1401132c0]
cmp rdx, r8
jne 0x140127027
lea rcx, [rax + rbp]
dec rcx
add rbp, rax
cmp rcx, 1
adc rbp, 0xffffffffffffffff
jmp 0x140125594
movzx ecx, word [rdx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x14012554d
lea rsi, [rdi + 0x18]
movaps xmmword [rsp + 0xb0], xmm10
mov rcx, rsi
call rbp
test al, al
lea r15, [rsp + 0x1b8]
je 0x140125a56
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x58], rdi
jmp 0x14012546c
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140125a47
dec qword [rax + 0x120]
jmp 0x140125527
xor esi, esi
mov qword [rsp + 0x128], 0x9a
mov al, byte [0x1402c58ea]
test al, al
jne 0x14012703b
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 0x140126d5f
inc esi
cmp esi, dword [rsp + 0x1d0]
jge 0x1401251a2
jmp 0x140125a6f
lea rcx, [0x140128a70]
cmp rax, rcx
jne 0x140126f3b
mov al, byte [r13 + 0x78]
jmp 0x140124c31
lea rcx, [0x140128a70]
cmp rax, rcx
jne 0x140126f49
mov al, byte [r13 + 0x78]
jmp 0x140125048
lea rcx, [0x1401277e0]
cmp rax, rcx
je 0x1401253f2
mov rcx, r13
call qword [0x1402a3e88]
mov r14, rax
jmp 0x1401253f6
mov rcx, rsi
lea rdx, [rsp + 0x170]
call qword [0x1402a3e88]
jmp 0x140124d53
mov rcx, rsi
lea rdx, [rsp + 0xf0]
mov r8, r13
call qword [0x1402a3e88]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14012522a
mov r15, qword [rsp + 0x1a0]
mov rcx, rdi
cmp r15, rdi
je 0x140125b97
mov rax, r15
add r15, 0xfffffffffffffff0
je 0x1401269b3
mov rsi, qword [r15]
test rsi, rsi
jne 0x140125bb3
mov qword [r15], 0
test rsi, rsi
jne 0x140125bdb
mov rcx, qword [r15]
test rcx, rcx
jne 0x140127091
cmp r15, rdi
mov r13, qword [rsp + 0x48]
jne 0x140125b58
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x1a0], rdi
call fcn.14018f5b0
movabs r15, 0x7fffffffffffffff
jmp 0x14012522a
mov r13, qword [rax - 8]
test r13, r13
je 0x140125b6d
mov qword [r15], 0
mov al, byte [rsi + 0xd]
and al, 0x7f
cmp al, 2
je 0x1401267e1
lock dec dword [r13 + 0x18]
je 0x140126319
lock dec dword [rsi + 8]
jne 0x140125b79
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140125b79
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140125164
lea rcx, [0x1401277e0]
cmp rax, rcx
je 0x140124ccf
mov rcx, r13
call qword [0x1402a3e88]
mov rsi, rax
jmp 0x140124cd3
mov al, byte [r13 + 0x30]
test al, al
jne 0x140125c8f
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
mov rcx, r13
call qword [0x1402a3e88]
test al, al
jne 0x140125c8f
mov rdi, qword [r13 + 0x38]
lea rsi, [rdi + 0x60]
mov rcx, rsi
call rbp
test al, al
je 0x140126727
mov rax, qword [rdi + 0x68]
test rax, rax
jne 0x140126877
mov rcx, rsi
call rbx
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
call qword [0x1402a3e88]
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x40]
mov rcx, rax
mov rax, rdx
call qword [0x1402a3e88]
mov rax, qword [rsp + 0xf0]
jmp 0x140124b4e
lea rcx, [0x1401277e0]
cmp rax, rcx
je 0x1401250f3
mov rcx, r13
call qword [0x1402a3e88]
mov rsi, rax
jmp 0x1401250f7
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401254ec
xor esi, esi
jmp 0x140124b5a
lea rcx, [0x14000a220]
cmp rax, rcx
jne 0x140126f6c
lea rcx, [rsi + 0x10]
mov rdx, rbx
call fcn.14011a120
test al, al
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x140124ffe
jmp 0x140125dbd
mov ebp, eax
mov rax, qword [rsp + 0x140]
cmp rdi, 2
jb 0x140126d15
lea rcx, [rax + rbx]
sar rcx, 0x3f
btc rcx, 0x3f
add rax, rbx
cmovo rax, rcx
mov r13, rax
mov rax, qword [fcn.140118b20]
lea rcx, [0x140118bd0]
cmp rax, rcx
jne 0x1401268e6
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 0x1401273fa
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c5cb8]
cmp rax, r13
mov r13, qword [rsp + 0x48]
jle 0x140124fcf
cmp ebp, 0x102
lea r12, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x1401270ce
mov byte [rsi + 0x20], 1
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call fcn.14012f100
mov rcx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x170]
cmp rax, rcx
jle 0x140124ffe
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 [0x1402a3e88]
jmp 0x140124ffe
mov rcx, rsi
call fcn.1401cec50
jmp 0x140124ffe
lea rdi, [rdx + rsi*8]
add rdi, 0xfffffffffffffff8
neg rsi
test rdi, rdi
je 0x1401269b3
mov rcx, qword [rdi]
test rcx, rcx
je 0x140125e4b
lock dec dword [rcx + 8]
je 0x1401273c7
add rdi, 0xfffffffffffffff8
inc rsi
jne 0x140125e30
mov rax, qword [rsp + 0x1b0]
and eax, 1
mov rdi, qword [rsp + 0x70]
jmp 0x1401257f5
lea r14, [r15 + 1]
test rbx, rbx
cmovns r14, r15
jmp 0x140124f40
lock dec dword [rcx + 8]
jne 0x140125f15
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140125f15
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x1401268a5
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x140124c60
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
call qword [0x1402a3e88]
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov rcx, rax
mov rdx, r13
mov rax, r8
call qword [0x1402a3e88]
mov rcx, qword [r13 + 0x48]
test rcx, rcx
jne 0x1401271cc
mov rcx, qword [r13 + 0x10]
mov qword [r13 + 0x10], 0
test rcx, rcx
mov rsi, qword [rsp + 0x88]
jne 0x140125e79
mov qword [rsp + 0x140], 0xa
mov al, byte [0x1402c585a]
test al, al
jne 0x14012732a
mov qword [rsp + 0x140], 0xa
mov al, byte [0x1402c585a]
test al, al
jne 0x140127370
mov ecx, dword [0x1402b5274]
test ecx, ecx
jne 0x1401270d7
test rsi, rsi
jne 0x140125fab
mov rcx, qword [rsp + 0x1d8]
xor rcx, rsp
call fcn.140191d80
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 [0x1402a3e88]
lock dec dword [rsi]
jne 0x140125f5c
mov rax, qword [rsi + 0x10]
lea rcx, [0x14025d280]
cmp rax, rcx
je 0x140125fd8
mov rcx, rsi
call qword [0x1402a3e88]
jmp 0x140125f5c
mov rcx, qword [rsi + 0x28]
test rcx, rcx
jne 0x140125fee
mov rcx, rsi
call fcn.14018f5b0
jmp 0x140125f5c
lock dec dword [rcx]
jne 0x140125fe1
call fcn.14018f5b0
jmp 0x140125fe1
lea rsi, [rdx + rdi*8]
add rsi, 0xfffffffffffffff8
neg rdi
test rsi, rsi
je 0x1401269b3
mov rcx, qword [rsi]
test rcx, rcx
je 0x140126020
lock dec dword [rcx + 8]
je 0x14012743b
add rsi, 0xfffffffffffffff8
inc rdi
jne 0x140126005
mov rax, qword [rsp + 0x1b0]
and eax, 1
jmp 0x1401251f6
shl rsi, 3
xor ebx, ebx
mov r14, qword [rdi + rbx]
test r14, r14
je 0x14012605e
mov eax, 1
lock xadd dword [r14 + 8], eax
cmp eax, 0x7fffffff
je 0x140126968
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x140126088
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x14012696b
mov rcx, r14
call fcn.140046ea0
mov rcx, qword [rsp + 0x190]
cmp byte [rcx + 0x1a0], 1
je 0x14012728d
test r14, r14
je 0x1401260b5
lock dec dword [r14 + 8]
je 0x140127421
add rbx, 8
cmp rsi, rbx
jne 0x14012603f
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 0x1401257dc
shl rdi, 3
xor r14d, r14d
mov rsi, qword [rbx + r14]
test rsi, rsi
je 0x140126109
mov eax, 1
lock xadd dword [rsi + 8], eax
cmp eax, 0x7fffffff
je 0x1401270d1
mov rax, qword [rsp + 0x190]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x140126133
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x1401270d4
mov rcx, rsi
call fcn.140046ea0
mov rcx, qword [rsp + 0x190]
cmp byte [rcx + 0x1a0], 1
je 0x1401273b6
test rsi, rsi
je 0x14012615f
lock dec dword [rsi + 8]
je 0x140127515
add r14, 8
cmp rdi, r14
jne 0x1401260eb
mov rcx, qword [rsp + 0x1b0]
mov rdi, rcx
shr rdi, 1
mov eax, ecx
and eax, 1
cmp rcx, 2
setb cl
jmp 0x1401251db
mov rax, qword [r15 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x1401261bc
jmp 0x1401269d9
mov r15, qword [rax - 8]
test r15, r15
je 0x140125954
mov qword [rsi], 0
mov al, byte [r14 + 0xd]
and al, 0x7f
cmp al, 2
je 0x140126187
lock dec dword [r15 + 0x18]
je 0x1401261e8
lock dec dword [r14 + 8]
jne 0x140125964
mov rax, qword [r14]
mov rax, qword [rax + 0x30]
mov rcx, r14
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140125964
lea r13, [r15 + 0x20]
mov rcx, r13
mov rdi, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
call rdi
test al, al
je 0x1401273de
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 0x1401273ec
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 0x14012746e
lea rcx, fcn.14011f770
mov rdx, qword [rsp + 0x68]
xor r8d, r8d
call fcn.14011d850
mov r13, qword [rsp + 0x48]
lea r12, [rsp + 0x1b8]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x70]
jmp 0x14012595b
lea rcx, [0x1402cc900]
call fcn.14018f730
cmp dword [0x1402cc900], 0xffffffff
jne 0x140124e37
mov qword [0x1402cc8f8], r14
lea rcx, [0x1402cc900]
call fcn.14018f6c4
jmp 0x140124e37
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140124c4e
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140125065
lea rcx, [0x1402cc8f0]
call fcn.14018f730
cmp dword [0x1402cc8f0], 0xffffffff
jne 0x140124e05
lea rcx, str.DelayFirstWorkerWake
call fcn.14012f5d0
mov byte [0x1402cc8ec], al
lea rcx, [0x1402cc8f0]
call fcn.14018f6c4
jmp 0x140124e05
mov esi, 3
jmp 0x140124b15
lea r14, [r13 + 0x20]
mov rcx, r14
call rbp
test al, al
je 0x140127452
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 0x140127460
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 0x14012752f
lea rcx, fcn.14011f770
mov rdx, qword [rsp + 0x50]
xor r8d, r8d
call fcn.14011d850
lea r12, [rsp + 0x1b8]
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140125b74
mov rax, qword [0x1402b3e18]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402a3e88]
lea rcx, [rax + 0x6218]
lea rdx, [0x1402b5268]
mov qword [rax + 0x6218], rdx
mov qword [rax + 0x6220], rax
mov rax, qword [rsp + 0x60]
mov qword [rax], rcx
mov edi, dword [0x1402b5274]
and edi, esi
je 0x140124ca9
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
jmp 0x1401249f1
xor eax, eax
jmp 0x1401256cf
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 0x14012486e
mov rax, qword [r15 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x14012477d
lea rbx, [r15 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140127633
mov rcx, qword [r15 + 0x68]
call fcn.140131560
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 0x14012477d
mov rcx, qword [rsp + 0x190]
call fcn.1401cee90
cmp qword [rsp + 0x1b0], 0
je 0x140125818
lea rcx, [rsp + 0x1b0]
call fcn.14020cdd0
jmp 0x140125818
mov ebp, dword [0x1402b5274]
and ebp, edi
test ebp, r9d
je 0x1401264f7
mov cl, byte [r8 + rax]
test cl, 1
je 0x1401264f7
add r8, rax
lea rcx, [0x1402b5268]
mov rdx, rsi
mov r9d, ebx
call fcn.14002cb70
mov edi, ebp
jmp 0x140124893
mov edi, ebp
jmp 0x1401249c6
mov esi, 3
jmp 0x1401250c9
mov rcx, qword [rsp + 0x190]
call fcn.1401cee90
cmp qword [rsp + 0x1b0], 0
je 0x140125219
lea rcx, [rsp + 0x1b0]
call fcn.14020cdd0
jmp 0x140125219
mov rcx, qword [rsp + 0x150]
test rcx, rcx
je 0x140126559
add rcx, 0x18
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [rsp + 0x150], 0
lea rcx, [rsp + 0x140]
call fcn.14012a7b0
jmp 0x140125786
mov eax, dword [0x1402b5274]
test al, al
jns 0x140124a6b
mov cl, byte [0x1402b55f8]
test cl, 1
je 0x140124a6b
and edi, eax
lea r8, [0x1402b55f8]
jmp 0x140126666
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 0x20
je 0x140124a58
mov cl, byte [0x1402b54f8]
test cl, 1
je 0x140124a58
lea r8, [0x1402b54f8]
jmp 0x140126666
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 0x10
je 0x140124a4e
mov cl, byte [0x1402b5478]
test cl, 1
je 0x140124a4e
lea r8, [0x1402b5478]
jmp 0x140126666
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 4
je 0x140124a3a
mov cl, byte [0x1402b5378]
test cl, 1
je 0x140124a3a
lea r8, [0x1402b5378]
jmp 0x140126666
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 2
je 0x140124a30
mov cl, byte [0x1402b52f8]
test cl, 1
je 0x140124a30
lea r8, [0x1402b52f8]
jmp 0x140126666
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 1
je 0x140124a26
mov cl, byte [0x1402b5278]
test cl, 1
je 0x140124a26
lea r8, [0x1402b5278]
xor ebx, ebx
lea rcx, [0x1402b5268]
mov rdx, rsi
mov r9d, ebx
call fcn.14002cb70
jmp 0x140124893
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 8
je 0x140124a44
mov cl, byte [0x1402b53f8]
test cl, 1
je 0x140124a44
lea r8, [0x1402b53f8]
jmp 0x140126666
mov ecx, dword [0x1402b5274]
and edi, ecx
test cl, 0x40
je 0x140124a62
mov cl, byte [0x1402b5578]
test cl, 1
je 0x140124a62
lea r8, [0x1402b5578]
jmp 0x140126666
cmp byte [rsp + 0x158], 0
je 0x14012695a
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 [0x1402a3e88]
jmp 0x140125778
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140125c59
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x140126763
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
je 0x140125ccb
jmp 0x140125077
cmp ebx, 0x102
je 0x140126746
mov ecx, ebx
call fcn.1401ffdf0
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140125072
mov ecx, esi
call fcn.14001fbf0
mov dword [r13 + 0x54], esi
jmp 0x140124b1f
mov rdi, qword [rsp + 0x1b8]
jmp 0x1401257ca
mov rbx, qword [rsp + 0x1b8]
jmp 0x1401251c9
lea rcx, [rsp + 0x140]
call qword [0x1402a3e88]
jmp 0x140124fcf
mov rdx, qword [rsp + 0x1b8]
jmp 0x1401257ed
lea rbx, [rsp + 0xf0]
mov rcx, rbx
call qword [0x1402a3e88]
mov r14, qword [rbx]
jmp 0x140124dcc
mov rax, qword [r13 + 0x10]
mov ecx, 0xfffffffe
lock xadd dword [rax], ecx
cmp ecx, 3
jne 0x140125bd0
lea rbx, [r13 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14012765d
mov rcx, qword [r13 + 0x68]
call fcn.140131560
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 0x140125bd0
mov rcx, qword [rsp + 0x1b8]
call fcn.14018f5b0
jmp 0x1401257fe
mov rdx, qword [rsp + 0x1b8]
jmp 0x1401251ee
mov rcx, qword [rsp + 0x1b8]
call fcn.14018f5b0
jmp 0x1401251ff
cmp ebx, 0x102
je 0x140126888
jmp 0x1401277c9
mov rcx, qword [rax]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
jne 0x14012686a
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jne 0x140125c6b
jmp 0x140125c8f
cmp ebx, 0x102
je 0x140125eac
mov ecx, ebx
call fcn.1401ffdf0
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140124c5b
mov rcx, qword [0x1402c5d88]
call fcn.1401ce770
jmp 0x14012534f
mov rcx, qword [0x1402c5d88]
call fcn.1401ce770
jmp 0x140124b93
lea r15, [rsp + 0x188]
mov rcx, r15
call qword [0x1402a3e88]
mov rax, qword [r15]
movabs r15, 0x7fffffffffffffff
jmp 0x140125d89
mov rax, qword [rsp + 0x50]
lea rsi, [rax + 0x60]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140127641
call fcn.1401ceb00
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
lea rcx, [0x140274353]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.1401ceb00
lea rcx, [0x140274353]
lea rdx, str....._third_partylibc_srcinclude_vector:618:_assertion__empty___failed:_front___called_on_an_empty_vector_n
call fcn.1401ceb00
lea rbx, [r15 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14012764f
mov rcx, qword [r15 + 0x68]
call fcn.140131560
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 0x1401261bc
mov rcx, qword [r14 - 0x18]
call fcn.1400b9550
cmp byte [r14 - 0x27], 0
je 0x140126a6b
cmp byte [r14 - 0x28], 0
jne 0x140126a3e
mov rcx, qword [r14 - 0x18]
call fcn.14020ccb0
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 0x1401254fc
lea rcx, [0x140274353]
lea rdx, str....._third_partylibc_srcincludeoptional:795:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.1401ceb00
mov qword [rsp + 0x128], 0xf4240
mov ebx, 0xf4240
jmp 0x140124ee7
lea rcx, [rsp + 0x100]
call fcn.140177b80
jmp 0x14012508f
lock dec dword [r8 + 8]
jne 0x1401252b2
mov rax, qword [r8]
mov rax, qword [rax + 0x30]
mov rcx, r8
mov edx, 1
call qword [0x1402a3e88]
jmp 0x1401252b2
lock dec dword [rcx + 8]
jne 0x140124af5
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140124af5
mov rcx, qword [rsp + 0xf8]
test rcx, rcx
je 0x140125295
mov qword [rsp + 0xf0], 0
lea rsi, [rsp + 0x140]
mov rdx, rsi
call fcn.14001a9e0
mov r8, qword [rsi]
jmp 0x1401252a9
mov ecx, esi
call fcn.14001fbf0
mov dword [r13 + 0x54], esi
jmp 0x1401250d3
lock dec dword [rcx + 8]
jne 0x140126b49
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
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 0x1401252ef
lock dec dword [rcx + 8]
je 0x140126bf9
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 0x1401252ef
lock dec dword [rcx + 8]
jne 0x1401252ef
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x1401252ef
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140126ba2
lea rsi, [rsp + 0x100]
mov rcx, rsi
call fcn.140177b80
mov byte [rsi + 0x18], 0
jmp 0x140124cb7
lea rcx, [rsi + 0x18]
mov rdi, qword [rsi + 0x10]
call fcn.140200260
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x140125364
lea rbx, [rsp + 0x128]
mov rcx, rsi
mov rdx, rbx
mov r8, r14
call fcn.140226860
mov rbx, qword [rbx]
jmp 0x140124ee7
lea rcx, [rsi + 0x18]
mov rbx, qword [rsi + 0x10]
call fcn.140200260
movabs rcx, 0xff00000000000000
and rcx, rbx
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x140125386
lea rcx, [rsi + 0x18]
mov rdi, qword [rsi + 0x10]
call fcn.140200260
movabs rcx, 0xff00000000000000
and rcx, rdi
or rcx, rax
mov qword [rsi + 0x10], rcx
jmp 0x140126ccf
cmp byte [rsp + 0x110], 1
jne 0x140125373
cmp qword [rsi + 0x18], 0
jne 0x140126c97
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 0x140125373
mov rcx, r15
call fcn.14017f1b0
jmp 0x140125694
mov r13, rbx
cmp rax, rbx
je 0x140125d2d
add rax, r15
add rax, 2
mov r13, rbx
cmp rax, 1
ja 0x140125d2d
int3
mov rcx, qword [0x1402c5cb8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140124fc7
int3
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
call fcn.140200260
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x140124ba8
lea rcx, [rdi + 0x18]
mov r14, qword [rdi + 0x10]
call fcn.140200260
movabs rcx, 0xff00000000000000
and rcx, r14
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x140124bca
mov rcx, qword [0x1402c5cb8]
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 0x140124dcc
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140276590]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], Ordinal_73
lea rdx, [rsp + 0x140]
mov r9d, 2
call fcn.14002e260
jmp 0x140124c9b
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
call fcn.140200260
movabs rcx, 0xff00000000000000
and rcx, rbx
or rcx, rax
mov qword [rdi + 0x10], rcx
jmp 0x140126e5e
cmp byte [rsp + 0x110], 1
jne 0x140124bb7
cmp qword [rdi + 0x18], 0
jne 0x140126e26
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 0x140124bb7
movzx ecx, al
mov rax, qword [0x1402c3dc8]
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.140017980
jmp 0x140125019
call qword [0x1402a3e88]
jmp 0x1401248c2
call qword [0x1402a3e88]
jmp 0x140124962
mov rax, rdx
call qword [0x1402a3e88]
mov r10, qword [rsp + 0x90]
mov r9, qword [rsp + 0x78]
jmp 0x1401256cf
lea rdx, [rsp + 0x188]
call qword [0x1402a3e88]
jmp 0x1401248f3
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x1402a3e88]
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
jmp 0x140124a1c
mov rcx, r13
call qword [0x1402a3e88]
jmp 0x140124c31
mov rcx, r13
call qword [0x1402a3e88]
jmp 0x140125048
int3
int3
int3
int3
int3
int3
int3
mov rcx, rsi
mov rdx, rbx
call qword [0x1402a3e88]
jmp 0x140125cee
movzx ecx, al
mov eax, 0x1b0
add rax, qword [rsp + 0x190]
xor rax, qword [0x1402c3dc8]
mov qword [rsp + 0x140], rax
lea rax, [0x14028f258]
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.140158c50
jmp 0x140125868
lock dec dword [rcx + 8]
jne 0x140125970
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140125970
mov rcx, qword [rsi]
lea rax, [0x1401d55b0]
lea rdx, [rsp + 0x188]
mov qword [rdx + 0x18], rax
lea rax, [0x140275fb0]
mov qword [rdx + 0x20], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x1402a3e88]
jmp 0x140124978
mov rax, rdx
mov rdi, r9
call qword [0x1402a3e88]
mov r9, rdi
jmp 0x140125a02
movzx ecx, al
mov eax, 0x1b0
add rax, qword [rsp + 0x190]
xor rax, qword [0x1402c3dc8]
mov qword [rsp + 0x140], rax
lea rax, [0x14028f258]
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.140158c50
jmp 0x140125a89
lock dec dword [rcx + 8]
jne 0x140125b85
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140125b85
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401246d7
int3
int3
int3
call fcn.140226ab0
jmp 0x140125f57
xor eax, eax
jmp 0x1401244bb
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402a3e88]
jmp 0x140124444
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x1402a3e88]
jmp 0x140125ef8
add rcx, 0x190
call fcn.140164360
jmp 0x1401260a5
movzx ecx, al
lea rax, str.WorkerThread_born
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140276590]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], reloc.WLDAP32.dll_Ordinal_73
lea rdx, [rsp + 0x140]
mov r9d, 3
call fcn.14002e260
jmp 0x14012441d
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140276590]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], 0x42
lea rdx, [rsp + 0x140]
mov r9d, 1
call fcn.14002e260
jmp 0x140124437
movzx ecx, al
lea rax, str.WorkerThread_active
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140276590]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 0
mov byte [rsp + 0x28], Ordinal_73
lea rdx, [rsp + 0x140]
mov r9d, 2
call fcn.14002e260
jmp 0x140125f2f
movzx ecx, al
lea rax, str.WorkerThread_dead
lea r8, [rsp + 0x188]
mov qword [r8], rax
lea rax, [0x140276590]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x30], 8
mov byte [rsp + 0x28], reloc.WLDAP32.dll_Ordinal_73
lea rdx, [rsp + 0x140]
mov r9d, 3
call fcn.14002e260
jmp 0x140125f49
add rcx, 0x190
call fcn.140164360
jmp 0x140126150
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140125e4b
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140126200
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14012621c
mov rcx, qword [0x1402c5cb8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140125d89
mov rax, qword [r14]
mov rax, qword [rax + 8]
mov rcx, r14
mov edx, 1
call qword [0x1402a3e88]
jmp 0x1401260b5
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [0x1402a3e88]
jmp 0x140126020
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14012632a
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140126346
mov rbx, rax
mov r15, qword [rsp + 0x68]
mov rax, qword [rsp + 0x78]
cmp rax, r13
jb 0x140126980
mov rcx, qword [r15 + r13*8]
test rcx, rcx
je 0x14012697d
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 [0x1402a3e88]
lea rcx, [rsp + 0x140]
call fcn.14011d030
inc r13
cmp r13, rdi
mov eax, 0
cmove r13, rax
mov rax, rbx
cmp r13, rbx
jne 0x14012746e
cmp rax, r12
jbe 0x14012766b
cmp rdi, rbx
jb 0x14012697a
cmp r12, rbx
jg 0x140126977
lea r15, [r15 + r12*8]
shl rbx, 3
shl r12, 3
sub rbx, r12
mov rcx, r15
call fcn.14011d030
add r15, 8
add rbx, 0xfffffffffffffff8
je 0x140126254
jmp 0x1401274fd
mov rax, qword [rsi]
mov rax, qword [rax + 8]
mov rcx, rsi
mov edx, 1
call qword [0x1402a3e88]
jmp 0x14012615f
mov rbx, rax
mov r14, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
cmp rax, r13
jb 0x140126f57
mov rcx, qword [r14 + r13*8]
test rcx, rcx
je 0x140126f5a
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 [0x1402a3e88]
lea rcx, [rsp + 0x140]
call fcn.14011d030
inc r13
cmp r13, r12
mov eax, 0
cmove r13, rax
mov rax, rbx
cmp r13, rbx
jne 0x14012752f
cmp rax, rbp
jbe 0x1401275d2
cmp r12, rbx
jb 0x140126f5d
cmp rbp, rbx
jg 0x140126f60
lea r14, [r14 + rbp*8]
shl rbx, 3
shl rbp, 3
sub rbx, rbp
mov rcx, r14
call fcn.14011d030
add r14, 8
add rbx, 0xfffffffffffffff8
je 0x14012637e
jmp 0x1401275ba
cmp r12, rbp
jb 0x140126f63
jl 0x140126f66
je 0x140127604
lea r13, [r14 + rbp*8]
shl r12, 3
shl rbp, 3
sub r12, rbp
mov rcx, r13
call fcn.14011d030
add r13, 8
add r12, 0xfffffffffffffff8
jne 0x1401275f2
test rbx, rbx
js 0x140126f69
je 0x14012637e
shl rbx, 3
mov r14, qword [rsp + 0x50]
mov rcx, r14
call fcn.14011d030
add r14, 8
add rbx, 0xfffffffffffffff8
jne 0x14012761c
jmp 0x14012637e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140126465
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401269ee
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14012680c
cmp rdi, r12
jb 0x140126974
jl 0x140126971
je 0x14012769d
lea r13, [r15 + r12*8]
shl rdi, 3
shl r12, 3
sub rdi, r12
mov rcx, r13
call fcn.14011d030
add r13, 8
add rdi, 0xfffffffffffffff8
jne 0x14012768b
test rbx, rbx
js 0x14012696e
mov ecx, ebx
call fcn.1401ffdf0
mov rbx, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140125c66