Function at 0x140169f90
Capabilities:
Check for time delay via queryperformancecounter
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x6f8
movaps xmmword [rsp + 0x6e0], xmm6
mov dword [rsp + 0xa8], r9d
mov r13, r8
mov rbp, rcx
mov rax, qword [0x1402cb038]
xor rax, rsp
mov qword [rsp + 0x6d8], rax
movabs r14, 0xaaaaaaaaaaaaaaaa
movaps xmm6, xmmword [0x14029ca60]
movups xmmword [rdx + 0x10], xmm6
mov qword [rsp + 0xd8], rdx
movups xmmword [rdx], xmm6
movzx eax, byte [0x1402da240]
mov byte [rsp + 0x97], al
test al, 0x19
jne 0x14016d404
xor eax, eax
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xc8], r14
mov rbx, qword [rbp + 0x70]
test rbx, rbx
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0x58], r13
je 0x14016a059
lea rdi, [0x1401c5880]
lea r12, [0x1401c69d0]
xor esi, esi
xchg qword [rbx], rsi
test rsi, rsi
jne 0x14016bdb8
mov rbx, qword [rbx + 0x218]
test rbx, rbx
jne 0x14016a03f
movzx edi, byte [0x1402da240]
test dil, 0x19
jne 0x14016d472
xor eax, eax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x78], r14
mov r15, r14
mov r12d, 1
lock xadd qword [rbp + 0x20], r12
mov rbx, qword [rbp + 0x248]
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
je 0x14016a1e8
cmp dword [rax + 0x14], 1
je 0x14016d2c9
mov rsi, qword [rax]
cmp byte [r13 + 8], 0
jne 0x14016a1db
mov rax, qword [fcn.1401c9410]
lea rcx, [rsp + 0x160]
call qword [0x1402f5008]
cmp byte [r13 + 8], 0
jne 0x14016d27d
test r13, r13
je 0x14016d06a
mov rax, qword [rsp + 0x160]
mov qword [r13], rax
mov byte [r13 + 8], 1
cmp rsi, rax
jg 0x14016a1e8
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
je 0x14016d93b
mov rsi, qword [rax + 0x18]
mov rcx, rsi
mov r13, qword [rsp + 0x58]
mov rdx, r13
mov r8, r12
call fcn.140173ed0
mov rcx, qword [rsi + 0xa8]
test rcx, rcx
jne 0x14016d007
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
movabs r14, 0xaaaaaaaaaaaaaaaa
je 0x14016a1e8
jmp 0x14016df58
mov rax, qword [fcn.1401c9410]
lea rcx, [rsp + 0x160]
call qword [0x1402f5008]
cmp byte [r13 + 8], 0
jne 0x14016d28e
test r13, r13
je 0x14016d06a
mov rax, qword [rsp + 0x160]
mov qword [r13], rax
mov byte [r13 + 8], 1
cmp rsi, rax
jg 0x14016a21e
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
je 0x14016d93b
mov rsi, qword [rax + 0x18]
mov rcx, rsi
mov r13, qword [rsp + 0x58]
mov rdx, r13
mov r8, r12
call fcn.140173ed0
mov rcx, qword [rsi + 0xa8]
test rcx, rcx
jne 0x14016d01b
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
movabs r14, 0xaaaaaaaaaaaaaaaa
je 0x14016a21e
jmp 0x14016dade
mov rax, qword [r13]
cmp rsi, rax
jle 0x14016a0f8
mov rbx, qword [rbp + 0x250]
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
je 0x14016a21e
cmp dword [rax + 0x14], 1
je 0x14016d32c
mov rsi, qword [rax]
cmp byte [r13 + 8], 0
je 0x14016a14a
mov rax, qword [r13]
cmp rsi, rax
jle 0x14016a18d
test dil, 0x19
jne 0x14016d0b9
cmp byte [r13 + 8], 0
je 0x14016a240
mov rax, qword [r13]
cmp rax, qword [rbp + 0x260]
jge 0x14016c824
lea rax, [rbp - 8]
mov qword [rsp + 0x98], rax
lea r13, [rsp + 0x6b0]
mov rax, qword [rbp + 0x140]
test rax, rax
jne 0x14016b7b0
xor esi, esi
test byte [0x1402da250], 0x19
jne 0x14016d53d
test rsi, rsi
je 0x14016ad60
cmp qword [rsi + 0x28], 0
je 0x14016a33f
mov r8d, 0x540
lea rcx, [rsp + 0x168]
mov dl, 0xaa
call fcn.1401d06e0
mov qword [rsp + 0x160], 0
cmp qword [rsi + 0x10], 0
je 0x14016a33f
mov rcx, qword [rsi]
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
inc rax
cmp rax, rdx
mov r8d, 0
cmovne r8, rax
mov rdi, qword [rcx + 0x18]
imul rbx, r8, 0xa8
mov rcx, qword [rdi + rbx]
test rcx, rcx
je 0x14016b312
mov rax, qword [rcx + 0x18]
lea rdx, [0x1401ca7d0]
cmp rax, rdx
je 0x14016a315
lea rdx, [0x1401cb8c0]
cmp rax, rdx
je 0x14016b2e5
xor edx, edx
call qword [0x1402f5008]
test al, al
jne 0x14016b301
cmp qword [rdi + rbx + 0xa0], 0
jne 0x14016b2b8
mov rdi, qword [rsp + 0x160]
cmp rdi, 2
jae 0x14016c405
test rdi, rdi
jne 0x14016c138
cmp qword [rsi + 0x10], 0
je 0x14016d0b2
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
inc rax
cmp rax, qword [rcx]
mov edx, 0
cmovne rdx, rax
imul rax, rdx, 0xa8
add rax, qword [rcx + 0x18]
cmp byte [rax + 0x80], 0
je 0x14016c9ee
mov r12, qword [rsi + 0x30]
cmp qword [r12 + 0x180], 0
jne 0x14016b9bd
cmp qword [r12 + 0x188], 0
jne 0x14016b9bd
cmp dword [rbp + 0x80], 0
jne 0x14016a3b1
cmp qword [rbp + 0x228], 0
jne 0x14016b9bd
mov dword [rsp + 0xa8], 0
mov dword [rsp + 0x98], 0
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x150], xmm0
movupd xmmword [rsp + 0x140], xmm0
movaps xmmword [rsp + 0x1b0], xmm6
mov rcx, qword [rsi]
mov rdx, qword [rcx + 8]
inc rdx
xor eax, eax
cmp rdx, qword [rcx]
mov rcx, qword [rcx + 0x18]
cmove rdx, rax
imul rdx, rdx, 0xa8
mov r8, qword [rcx + rdx]
mov qword [rsp + 0x78], r8
mov qword [rcx + rdx], 0
movups xmm0, xmmword [rcx + rdx + 0x18]
movaps xmmword [rsp + 0xf0], xmm0
movups xmm0, xmmword [rcx + rdx + 8]
movaps xmmword [rsp + 0xe0], xmm0
mov r8, qword [rcx + rdx + 0x75]
mov qword [rsp + 0x1ad], r8
movups xmm0, xmmword [rcx + rdx + 0x68]
movaps xmmword [rsp + 0x1a0], xmm0
movupd xmm0, xmmword [rcx + rdx + 0x28]
movupd xmm1, xmmword [rcx + rdx + 0x38]
movups xmm2, xmmword [rcx + rdx + 0x48]
movups xmm3, xmmword [rcx + rdx + 0x58]
movaps xmmword [rsp + 0x190], xmm3
movaps xmmword [rsp + 0x180], xmm2
movapd xmmword [rsp + 0x170], xmm1
movapd xmmword [rsp + 0x160], xmm0
movzx r8d, word [rcx + rdx + 0x80]
mov word [rsp + 0x1b8], r8w
movzx r8d, byte [rcx + rdx + 0x82]
mov byte [rsp + 0x1ba], r8b
mov r8, qword [rcx + rdx + 0x88]
mov qword [rsp + 0x88], r8
mov r8, qword [rcx + rdx + 0x90]
mov qword [rsp + 0x70], r8
mov qword [rcx + rdx + 0x88], 0
mov rbx, qword [rcx + rdx + 0x98]
mov qword [rcx + rdx + 0x98], 0
mov r15, qword [rcx + rdx + 0xa0]
mov rcx, qword [rsi]
mov rdx, qword [rcx + 8]
mov rdi, qword [rcx + 0x18]
inc rdx
cmp rdx, qword [rcx]
cmove rdx, rax
mov qword [rcx + 8], rdx
imul r13, rdx, 0xa8
mov rcx, qword [rdi + r13 + 0x98]
test rcx, rcx
jne 0x14016b5d7
lea r14, [rdi + r13]
mov rdi, qword [rdi + r13 + 0x88]
test rdi, rdi
jne 0x14016c1a1
mov rcx, qword [r14]
test rcx, rcx
jne 0x14016b5bf
mov rax, qword [rsi]
mov rcx, qword [rax + 0x10]
cmp rcx, qword [rax + 8]
movabs r14, 0xaaaaaaaaaaaaaaaa
jne 0x14016a55e
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x14016c830
dec qword [rsi + 0x10]
jne 0x14016a7a3
cmp dword [rsi + 0x70], 0
jne 0x14016a6e6
mov r13, qword [rsi + 0x30]
cmp qword [rsi + 8], 0
je 0x14016a633
mov qword [rsp + 0x110], r14
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x14016c177
mov qword [rsp + 0x6b0], 0
lea rcx, [rsp + 0x6b0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6b0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14016d513
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rsp + 0x110], rax
cmp rax, qword [rsi + 0x20]
jl 0x14016a633
mov rax, qword [rsi + 0x18]
inc rax
cmp rax, 5
mov edx, 4
cmovae rdx, rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x18], rcx
test rax, rax
je 0x14016a633
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x14016a61e
cmp rcx, r8
jb 0x14016cc7d
lea rdi, [r13 + 0x28]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016c85c
mov rax, qword [rsi]
mov rcx, qword [r13 + 0x30]
mov qword [rsi], rcx
mov qword [r13 + 0x30], rax
mov rax, qword [rsi + 8]
mov rcx, qword [r13 + 0x38]
mov qword [rsi + 8], rcx
mov qword [r13 + 0x38], rax
mov rax, qword [rsi + 0x10]
mov rcx, qword [r13 + 0x40]
mov qword [rsi + 0x10], rcx
mov qword [r13 + 0x40], rax
mov rax, qword [rsi + 0x18]
mov rcx, qword [r13 + 0x48]
mov qword [rsi + 0x18], rcx
mov qword [r13 + 0x48], rax
mov rax, qword [rsi + 0x20]
mov rcx, qword [r13 + 0x50]
mov qword [rsi + 0x20], rcx
mov qword [r13 + 0x50], rax
cmp byte [r13 + 0x168], 0
jne 0x14016bb47
mov rax, qword [r13 + 0xb8]
cmp qword [rax + 0x10], 0
sete byte [r13 + 0x58]
cmp qword [r13 + 0xa8], 0
movzx eax, byte [r13 + 0x138]
jne 0x14016a6d9
test al, al
je 0x14016c9aa
movzx eax, byte [r13 + 0x158]
xor al, 1
mov byte [r13 + 0x59], al
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsi + 8], 0
je 0x14016a7a3
mov qword [rsp + 0x110], r14
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x14016c154
mov qword [rsp + 0x6b0], 0
lea rcx, [rsp + 0x6b0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6b0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14016d4ec
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rsp + 0x110], rax
cmp rax, qword [rsi + 0x20]
jl 0x14016a7a3
mov rax, qword [rsi + 0x18]
inc rax
cmp rax, 5
mov edx, 4
cmovae rdx, rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x18], rcx
test rax, rax
je 0x14016a7a3
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x14016a78e
cmp rcx, r8
jb 0x14016cc51
mov rcx, qword [rsi + 0x28]
mov rdx, rsi
call fcn.14016e8a0
test byte [0x1402da240], 9
jne 0x14016d7e4
mov r14, qword [rbp + 0x2a8]
mov rdi, qword [rbp + 0x2b0]
mov rsi, rdi
sub rsi, r14
sar rsi, 3
mov r13, rdi
sub r13, r14
je 0x14016c99b
lea rcx, [rsi + r13*2]
dec rcx
mov rax, qword [rbp + 0x2c0]
mov rdx, qword [rbp + 0x2c8]
add rdx, rax
cmp rcx, rdx
je 0x14016ce20
mov rsi, qword [rsp + 0x58]
cmp rdi, r14
je 0x14016d06a
mov rcx, qword [rbp + 0x2c8]
add rcx, qword [rbp + 0x2c0]
movabs r8, 0xf0f0f0f0f0f0f0f1
mov rax, rcx
mul r8
mov r9, rdx
shr r9, 4
mov rax, qword [r14 + r9*8]
and rdx, 0xfffffffffffffff0
add rdx, r9
sub rcx, rdx
imul rcx, rcx, 0xe8
mov rdx, rax
add rdx, rcx
je 0x14016d06a
lea r9, [rsp + 0x1b8]
mov r10, qword [rsp + 0x78]
mov qword [rdx], r10
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movups xmmword [rdx + 0x18], xmm1
movups xmmword [rdx + 8], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmm3, xmmword [rsp + 0x190]
movups xmmword [rdx + 0x28], xmm0
movups xmmword [rdx + 0x38], xmm1
movups xmmword [rdx + 0x48], xmm2
movups xmmword [rdx + 0x58], xmm3
movaps xmm0, xmmword [rsp + 0x1a0]
movups xmmword [rdx + 0x68], xmm0
mov r10, qword [rsp + 0x1ad]
mov qword [rdx + 0x75], r10
movzx r10d, word [r9]
mov word [rdx + 0x80], r10w
movzx r9d, byte [r9 + 2]
mov byte [rdx + 0x82], r9b
mov r9, qword [rsp + 0x88]
mov qword [rdx + 0x88], r9
mov r9, qword [rsp + 0x70]
mov qword [rdx + 0x90], r9
mov qword [rdx + 0x98], rbx
mov qword [rdx + 0xa0], r15
mov qword [rax + rcx + 0xa8], r12
mov r9d, dword [r12 + 8]
mov dword [rax + rcx + 0xb0], r9d
mov dword [rax + rcx + 0xb8], 0
mov r9d, dword [rsp + 0xa8]
mov byte [rax + rcx + 0xbc], r9b
mov r9d, dword [rsp + 0x98]
mov byte [rax + rcx + 0xbd], r9b
movupd xmm0, xmmword [rsp + 0x13e]
movupd xmm1, xmmword [rsp + 0x14e]
movupd xmmword [rax + rcx + 0xbe], xmm0
movupd xmmword [rax + rcx + 0xce], xmm1
movzx r9d, word [rsp + 0x15e]
mov word [rax + rcx + 0xde], r9w
mov r9, qword [r12 + 0xb8]
movzx r9d, byte [r9 + 0x38]
mov byte [rax + rcx + 0xe0], r9b
movzx edx, byte [rdx + 0x82]
mov dword [rax + rcx + 0xe4], edx
mov rcx, qword [rbp + 0x2c8]
inc rcx
mov qword [rbp + 0x2c8], rcx
add rcx, qword [rbp + 0x2c0]
mov r9, qword [rbp + 0x2a8]
mov rax, rcx
mul r8
mov rax, rdx
shr rax, 4
mov r8, qword [r9 + rax*8]
cmp qword [rbp + 0x2b0], r9
je 0x14016c9a2
and rdx, 0xfffffffffffffff0
add rdx, rax
sub rcx, rdx
imul r12, rcx, 0xe8
add r12, r8
movabs rbx, 0xaaaaaaaaaaaaaaaa
cmp r12, r8
je 0x14016d117
movzx r14d, byte [0x1402da240]
test r14b, 0x19
jne 0x14016d5ff
xor eax, eax
mov qword [rsp + 0x78], rax
mov rdi, rbx
mov r15, rbx
mov rax, qword [r12 - 0x40]
cmp byte [rax + 0x1f8], 0
jne 0x14016b5ae
cmp qword [rax + 0x180], 0
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x70], r15
jne 0x14016b62c
cmp qword [rax + 0x188], 0
jne 0x14016b62c
cmp dword [rbp + 0x80], 0
jne 0x14016aa74
cmp qword [rbp + 0x228], 0
jne 0x14016b62c
xor esi, esi
lea r13, [r12 - 0xe8]
mov rax, qword [r12 - 0x40]
cmp byte [rax + 0x1f9], 0
je 0x14016acf7
mov r10, qword [r12 - 0x58]
mov rdi, qword [rax + 0x178]
movzx r15d, byte [0x1402da240]
test r15b, 0x19
jne 0x14016d713
xor eax, eax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x68], rbx
mov rax, qword [rbp + 0x1a8]
cmp rax, qword [rbp + 0x1b0]
je 0x14016acc3
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x170], rax
lea rax, [rbp + 0x1c0]
mov qword [rsp + 0x168], rax
mov rax, qword [rbp + 0x1c0]
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0x160]
mov qword [rax + 8], rcx
mov qword [rbp + 0x1c0], rcx
mov qword [rsp + 0x178], 0
mov rcx, 0xffffffffffffffff
cmp dword [rbp + 0x1e8], 0
jne 0x14016d3ed
mov qword [rsp + 0x180], rcx
mov rbx, qword [rsp + 0x170]
mov rdx, qword [rbx + 8]
sub rdx, qword [rbx]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
xor eax, eax
test rdx, rdx
je 0x14016ab81
mov r8, qword [rbx]
mov r9, qword [rbx + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x14016d038
cmp qword [r8 + rax*8], 0
je 0x14016d38f
test rbx, rbx
je 0x14016acc3
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
sub r8, rdx
sar r8, 3
cmp r8, rcx
cmovb rcx, r8
cmp rax, rcx
je 0x14016ac3f
cmp r8, rax
jbe 0x14016d038
cmp rdi, r10
seta r8b
mov rcx, qword [rdx + rax*8]
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, r13
mov rbx, r10
call qword [0x1402f5008]
mov r10, rbx
mov rbx, qword [rsp + 0x170]
test rbx, rbx
je 0x14016acc3
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x180]
inc rax
mov qword [rsp + 0x178], rax
mov rdx, qword [rbx + 8]
sub rdx, qword [rbx]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
cmp rax, rdx
jae 0x14016ab8a
mov r8, qword [rbx]
mov r9, qword [rbx + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x14016d038
cmp qword [r8 + rax*8], 0
jne 0x14016ab8a
jmp 0x14016d235
mov dword [rsp + 0x98], esi
mov byte [rsp + 0xa8], r14b
mov qword [rsp + 0x58], r13
mov rax, qword [rbx + 0x20]
cmp rax, qword [rbx + 0x18]
jne 0x14016ac80
mov r13, qword [rbx]
mov r14, qword [rbx + 8]
cmp r13, r14
je 0x14016ac80
lea rsi, [r13 + 8]
cmp qword [r13], 0
je 0x14016c8dd
mov r13, rsi
cmp rsi, r14
jne 0x14016ac69
cmp qword [rsp + 0x170], 0
mov r13, qword [rsp + 0x58]
movzx r14d, byte [rsp + 0xa8]
mov esi, dword [rsp + 0x98]
je 0x14016acc3
mov qword [rsp + 0x170], 0
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x168]
mov qword [rax + 8], rcx
mov qword [rcx], rax
test r15b, 0x19
jne 0x14016d3bd
test byte [0x1402da240], 0x19
jne 0x14016d660
cmp rdi, r10
seta r8b
mov rcx, qword [r12 - 0x40]
mov rdx, r13
call fcn.14016e4e0
test sil, sil
jne 0x14016ae46
test r14b, 0x19
jne 0x14016d29f
cmp qword [r12 - 0x48], 0
mov r14, qword [rsp + 0xd8]
jne 0x14016b162
mov rax, qword [r12 - 0x50]
test rax, rax
je 0x14016ad2b
movzx eax, byte [rax + 4]
test al, al
je 0x14016b0dd
mov esi, dword [r12 - 0x38]
movzx ebx, byte [r12 - 8]
mov rax, qword [r12 - 0x40]
mov rdi, qword [rax + 0x190]
test rdi, rdi
jne 0x14016adae
shl rsi, 0x20
or rsi, rbx
mov qword [r14], r13
mov qword [r14 + 8], rdi
mov qword [r14 + 0x10], rsi
mov byte [r14 + 0x18], 1
jmp 0x14016ad71
mov r14, qword [rsp + 0xd8]
mov byte [r14], 0
mov byte [r14 + 0x18], 0
test byte [rsp + 0x97], 0x19
jne 0x14016d0e4
mov rcx, qword [rsp + 0x6d8]
xor rcx, rsp
call fcn.1401ce5b0
mov rax, r14
movaps xmm6, xmmword [rsp + 0x6e0]
add rsp, 0x6f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, 1
lock xadd dword [rdi], eax
test eax, eax
jle 0x14016d3ab
cmp eax, 0x7fffffff
je 0x14016d3ae
mov eax, 1
lock xadd dword [rdi], eax
test eax, eax
jle 0x14016d3b1
cmp eax, 0x7fffffff
je 0x14016d3b4
lock dec dword [rdi]
jne 0x14016adf8
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [0x1402f5008]
mov qword [r14], r13
mov qword [r14 + 8], rdi
mov eax, 1
lock xadd dword [rdi], eax
test eax, eax
jle 0x14016d3b7
cmp eax, 0x7fffffff
je 0x14016d3ba
shl rsi, 0x20
or rsi, rbx
mov qword [r14 + 0x10], rsi
mov byte [r14 + 0x18], 1
lock dec dword [rdi]
jne 0x14016ad71
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [0x1402f5008]
jmp 0x14016ad71
cmp dword [rbp + 0x80], 0
jne 0x14016b074
movzx r15d, byte [0x1402da240]
test r15b, 0x19
jne 0x14016d9f5
xor eax, eax
mov qword [rsp + 0x58], rax
movabs rdi, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xa8], rdi
mov rax, qword [rbp + 0x1f0]
cmp rax, qword [rbp + 0x1f8]
je 0x14016b06a
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x170], rax
lea rax, [rbp + 0x208]
mov qword [rsp + 0x168], rax
mov rax, qword [rbp + 0x208]
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0x160]
mov qword [rax + 8], rcx
mov qword [rbp + 0x208], rcx
mov qword [rsp + 0x178], 0
mov rcx, 0xffffffffffffffff
cmp dword [rbp + 0x230], 0
jne 0x14016d7cd
mov qword [rsp + 0x180], rcx
mov rbx, qword [rsp + 0x170]
mov rdx, qword [rbx + 8]
sub rdx, qword [rbx]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
xor eax, eax
test rdx, rdx
je 0x14016af3d
mov r8, qword [rbx]
mov r9, qword [rbx + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x14016d038
cmp qword [r8 + rax*8], 0
je 0x14016d6f7
test rbx, rbx
je 0x14016b06a
nop word cs:[rax + rax]
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
sub r8, rdx
sar r8, 3
cmp r8, rcx
cmovb rcx, r8
cmp rax, rcx
je 0x14016aff7
cmp r8, rax
jbe 0x14016d038
mov rcx, qword [rdx + rax*8]
mov rdx, qword [r12 - 0x28]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402f5008]
mov rbx, qword [rsp + 0x170]
test rbx, rbx
je 0x14016b06a
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x180]
inc rax
mov qword [rsp + 0x178], rax
mov rdx, qword [rbx + 8]
sub rdx, qword [rbx]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
cmp rax, rdx
jae 0x14016af50
mov r8, qword [rbx]
mov r9, qword [rbx + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x14016d038
cmp qword [r8 + rax*8], 0
jne 0x14016af50
jmp 0x14016d096
mov edi, r14d
mov r14, r13
mov rax, qword [rbx + 0x20]
cmp rax, qword [rbx + 0x18]
jne 0x14016b036
mov rsi, qword [rbx]
mov r13, qword [rbx + 8]
cmp rsi, r13
je 0x14016b036
nop word cs:[rax + rax]
lea rbp, [rsi + 8]
cmp qword [rsi], 0
je 0x14016b185
mov rsi, rbp
cmp rbp, r13
jne 0x14016b020
cmp qword [rsp + 0x170], 0
mov r13, r14
mov r14d, edi
je 0x14016b06a
mov qword [rsp + 0x170], 0
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x168]
mov qword [rax + 8], rcx
mov qword [rcx], rax
test r15b, 0x19
jne 0x14016b28b
test byte [0x1402da240], 0x19
jne 0x14016d967
mov rax, qword [r12 - 0x40]
mov rdi, qword [rax + 0x180]
test rdi, rdi
je 0x14016acf7
mov ecx, 1
lock xadd dword [rdi], ecx
test ecx, ecx
jle 0x14016d4e6
cmp ecx, 0x7fffffff
je 0x14016d4e9
lea r8, [r12 - 0x30]
mov rax, qword [rax + 0x180]
mov rax, qword [rax + 8]
mov rcx, rdi
mov rdx, r13
call qword [0x1402f5008]
lock dec dword [rdi]
jne 0x14016acf7
jmp 0x14016d7bb
cmp qword [r12 - 0x48], 0
je 0x14016ad2b
mov rax, qword [r12 - 0x50]
test rax, rax
je 0x14016b288
movzx eax, byte [rax + 4]
test al, al
jne 0x14016b288
mov rsi, qword [r12 - 0x48]
mov rax, qword [rsi + 0x18]
mov byte [rax + 4], 1
mov ecx, 8
call fcn.1401cbbc4
mov dword [rax], 0
mov byte [rax + 4], 0
test rax, rax
je 0x14016b13e
mov ecx, 1
lock xadd dword [rax], ecx
cmp ecx, 0x7fffffff
je 0x14016d53a
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x18], rax
test rcx, rcx
je 0x14016ad2b
lock dec dword [rcx]
jne 0x14016ad2b
call fcn.1401cbbbc
jmp 0x14016ad2b
mov rax, qword [r12 - 0x50]
test rax, rax
je 0x14016b178
movzx eax, byte [rax + 4]
test al, al
je 0x14016ad15
mov rcx, r13
call fcn.140206980
jmp 0x14016ad2b
cmp rbp, r13
je 0x14016b1ce
mov rax, qword [rbp]
test rax, rax
je 0x14016b1c1
cmp rbp, rsi
je 0x14016b1bd
mov rcx, qword [rsi]
mov rdx, qword [0x1402cbde0]
and rdx, rcx
cmp rdx, qword [0x1402cbdc8]
je 0x14016e3d7
mov qword [rsi], rax
mov qword [rbp], 0
add rsi, 8
add rbp, 8
cmp rbp, r13
jne 0x14016b18a
mov r13, qword [rbx + 8]
mov rbp, r13
sub rbp, rsi
jb 0x14016e3ab
je 0x14016b036
mov rax, rsi
add rax, rbp
cmp rax, r13
je 0x14016b234
sar rbp, 3
shl rbp, 3
test rbp, rbp
je 0x14016b21f
mov rcx, qword [rsi]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14016b281
lea rax, [rsi + rbp]
mov rcx, qword [rax]
mov qword [rsi], rcx
mov qword [rax], 0
lea rax, [rsi + rbp]
add rax, 8
add rsi, 8
cmp rax, r13
jne 0x14016b1f3
mov r13, qword [rbx + 8]
cmp r13, rsi
je 0x14016b271
add r13, 0xfffffffffffffff8
test r13, r13
je 0x14016e37f
mov rcx, qword [r13]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14016b27a
mov qword [r13], 0
lea rax, [r13 - 8]
cmp r13, rsi
mov r13, rax
jne 0x14016b23d
mov qword [rbx + 8], rsi
jmp 0x14016b036
call fcn.140150dc0
jmp 0x14016b25d
call fcn.140150dc0
jmp 0x14016b20e
int3
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
je 0x14016b074
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xc0]
call fcn.1402332a0
jmp 0x14016b074
mov rax, qword [rdi + rbx + 0x98]
test rax, rax
je 0x14016b301
movzx eax, byte [rax + 4]
test al, al
je 0x14016a324
jmp 0x14016b301
lea rcx, [rsp + 0x160]
call fcn.140155460
jmp 0x14016b453
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x14016b301
movzx eax, byte [rax + 4]
test al, al
jne 0x14016b301
cmp qword [rcx + 0x30], 0
jne 0x14016a315
mov rcx, qword [rsi]
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
mov rdi, qword [rcx + 0x18]
inc rax
cmp rax, rdx
mov ecx, 0
cmovne rcx, rax
mov r8, qword [rsp + 0x160]
mov r10d, 8
test r8b, 1
je 0x14016b33a
mov r10, qword [rsp + 0x170]
imul rax, rcx, 0xa8
lea rdx, [rdi + rax]
mov r9, r8
shr r9, 1
cmp r9, r10
je 0x14016b2d3
lea rcx, [rsp + 0x168]
test r8b, 1
je 0x14016b366
mov rcx, qword [rsp + 0x168]
imul r8, r9, 0xa8
mov r9, rcx
add r9, r8
je 0x14016d06a
mov r10, qword [rdx]
mov qword [r9], r10
mov qword [rdx], 0
movups xmm0, xmmword [rdx + 8]
movups xmm1, xmmword [rdx + 0x18]
movups xmmword [r9 + 0x18], xmm1
movups xmmword [r9 + 8], xmm0
mov r10, qword [rdx + 0x75]
mov qword [r9 + 0x75], r10
movups xmm0, xmmword [rdx + 0x68]
movups xmmword [r9 + 0x68], xmm0
movupd xmm0, xmmword [rdx + 0x28]
movupd xmm1, xmmword [rdx + 0x38]
movups xmm2, xmmword [rdx + 0x48]
movups xmm3, xmmword [rdx + 0x58]
movups xmmword [r9 + 0x58], xmm3
movups xmmword [r9 + 0x48], xmm2
movupd xmmword [r9 + 0x38], xmm1
movupd xmmword [r9 + 0x28], xmm0
movzx edx, byte [rdi + rax + 0x82]
mov byte [rcx + r8 + 0x82], dl
movzx edx, word [rdi + rax + 0x80]
mov word [rcx + r8 + 0x80], dx
mov rdx, qword [rdi + rax + 0x88]
mov qword [rcx + r8 + 0x88], rdx
mov qword [rdi + rax + 0x88], 0
mov rdx, qword [rdi + rax + 0x90]
mov qword [rcx + r8 + 0x90], rdx
mov rdx, qword [rdi + rax + 0x98]
mov qword [rcx + r8 + 0x98], rdx
mov qword [rdi + rax + 0x98], 0
mov rax, qword [rdi + rax + 0xa0]
mov qword [rcx + r8 + 0xa0], rax
add qword [rsp + 0x160], 2
mov rax, qword [rsi]
mov rcx, qword [rax + 8]
mov rbx, qword [rax + 0x18]
inc rcx
cmp rcx, qword [rax]
jne 0x14016b468
xor ecx, ecx
mov qword [rax + 8], rcx
imul r14, rcx, 0xa8
mov rcx, qword [rbx + r14 + 0x98]
test rcx, rcx
jne 0x14016b4cf
mov rdi, qword [rbx + r14 + 0x88]
test rdi, rdi
jne 0x14016b4c7
add rbx, r14
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14016b4db
mov rax, qword [rsi]
mov rcx, qword [rax + 0x10]
cmp rcx, qword [rax + 8]
movabs r14, 0xaaaaaaaaaaaaaaaa
jne 0x14016b4b8
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x14016b4ec
dec qword [rsi + 0x10]
jne 0x14016a2b3
jmp 0x14016a324
lock dec dword [rdi + 8]
jne 0x14016b48d
jmp 0x14016b511
lock dec dword [rcx]
jne 0x14016b480
call fcn.1401cbbbc
jmp 0x14016b480
lock dec dword [rcx]
jne 0x14016b498
mov rax, qword [rcx + 0x10]
call qword [0x1402f5008]
jmp 0x14016b498
mov qword [rax + 0x20], 0
mov rdi, qword [rsi]
mov qword [rsi], rcx
test rdi, rdi
je 0x14016b4b8
mov rcx, rdi
call fcn.14016f780
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x14016b4b8
mov rcx, qword [rdi]
mov rax, qword [rcx + 8]
lea rdx, [0x1402386a0]
cmp qword [rcx + 0x10], rdx
jne 0x14016b531
lea rcx, [0x140008640]
cmp rax, rcx
je 0x14016b544
mov rcx, rdi
mov edx, 1
call qword [0x1402f5008]
jmp 0x14016b48d
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x14016b552
lock dec dword [rcx]
je 0x14016b5a0
mov r15, qword [rdi + 0x10]
test r15, r15
je 0x14016b561
lock dec dword [r15]
je 0x14016b56e
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x14016b48d
mov rcx, qword [r15 + 0x20]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14016b5a7
mov qword [r15 + 0x20], 0
lea rcx, [r15 + 8]
call fcn.1400085a0
mov rcx, r15
call fcn.1401cbbbc
jmp 0x14016b561
call fcn.1401cbbbc
jmp 0x14016b552
call fcn.1401509f0
jmp 0x14016b585
mov byte [rbp + 0x298], 1
mov rax, qword [r12 - 0x40]
jmp 0x14016aa34
lock dec dword [rcx]
jne 0x14016a53a
mov rax, qword [rcx + 0x10]
call qword [0x1402f5008]
jmp 0x14016a53a
lock dec dword [rcx]
jne 0x14016a519
call fcn.1401cbbbc
jmp 0x14016a519
mov rax, qword [rsp + 0x160]
mov qword [rsi], rax
jmp 0x14016b646
mov rax, qword [fcn.1401c9410]
lea rcx, [rsp + 0x160]
call qword [0x1402f5008]
cmp byte [rsi + 8], 0
jne 0x14016b5ea
test rsi, rsi
je 0x14016d06a
mov rax, qword [rsp + 0x160]
mov qword [rsi], rax
mov byte [rsi + 8], 1
jmp 0x14016b646
mov dword [r12 - 0x30], 1
cmp byte [r12 - 0x2c], 0
je 0x14016b64b
cmp byte [rsi + 8], 0
je 0x14016b5f7
mov rax, qword [rsi]
mov qword [r12 - 0x28], rax
mov sil, 1
cmp byte [r12 - 0x2b], 0
je 0x14016aa76
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.140008220
mov rax, qword [rsi]
mov sil, 1
mov qword [r12 - 0x18], rax
jmp 0x14016aa76
cmp rsi, qword [r13 + 8]
je 0x14016b68e
mov rsi, r15
jl 0x14016b890
jmp 0x14016b893
mov rsi, r15
cmp r14d, dword [r13 + 0x10]
jl 0x14016b890
jmp 0x14016b893
mov rcx, rsi
call fcn.1401508a0
jmp 0x14016b6ef
mov rax, qword [rbp + 0x150]
mov rcx, qword [rbp + 0x158]
sub rcx, rax
sar rcx, 5
cmp rcx, r15
jbe 0x14016d251
mov rcx, qword [rax + rbx + 8]
cmp rcx, qword [rax + rbx + 0x10]
je 0x14016b90b
mov rsi, qword [rcx + 0x18]
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
je 0x14016b6a0
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
je 0x14016b711
movabs r14, 0xaaaaaaaaaaaaaaaa
jmp 0x14016b8ce
mov r12, rsi
movabs r14, 0xaaaaaaaaaaaaaaaa
jmp 0x14016b901
mov rcx, rsi
call fcn.1401508a0
jmp 0x14016b764
cmp rcx, r15
jbe 0x14016d251
mov rbx, r15
shl rbx, 5
mov rcx, qword [rax + rbx + 8]
cmp rcx, qword [rax + rbx + 0x10]
je 0x14016b6aa
mov rsi, qword [rcx + 0x18]
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
je 0x14016b723
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
je 0x14016b785
test rsi, rsi
jne 0x14016b8ce
jmp 0x14016b6aa
mov rcx, rsi
call fcn.1401509f0
jmp 0x14016b777
mov rcx, r15
call fcn.1401508a0
jmp 0x14016b881
mov rcx, r12
call fcn.1401508a0
jmp 0x14016b823
tzcnt r15, rax
cmp dword [rsp + 0xa8], 1
je 0x14016d127
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x180]
sub rcx, rax
sar rcx, 5
cmp dword [rbp + 0x198], 3
jge 0x14016b72d
cmp rcx, r15
jbe 0x14016d251
mov rbx, r15
shl rbx, 5
mov r14, qword [rax + rbx + 8]
cmp r14, qword [rax + rbx + 0x10]
je 0x14016b90f
mov rdi, rbp
mov r12, qword [r14 + 0x18]
mov rax, qword [0x1402cbde0]
and rax, r12
cmp rax, qword [0x1402cbdc8]
je 0x14016b79c
mov rcx, rdi
mov rax, qword [rdi + 0x150]
mov rcx, qword [rdi + 0x158]
sub rcx, rax
sar rcx, 5
cmp rcx, r15
jbe 0x14016d251
mov rbp, r13
mov r13, qword [rax + rbx + 8]
mov rsi, r12
cmp r13, qword [rax + rbx + 0x10]
je 0x14016b8ab
mov qword [rsp + 0x78], r15
mov rbx, qword [r14]
mov rsi, qword [r14 + 8]
mov r14d, dword [r14 + 0x10]
mov r15, qword [r13 + 0x18]
mov rax, qword [0x1402cbde0]
and rax, r15
cmp rax, qword [0x1402cbdc8]
je 0x14016b78f
cmp rbx, qword [r13]
je 0x14016b67a
mov rsi, r15
jae 0x14016b893
mov rsi, r12
mov rax, qword [0x1402cbde0]
and rax, r15
cmp rax, qword [0x1402cbdc8]
je 0x14016b8e7
mov r15, qword [rsp + 0x78]
mov rax, qword [0x1402cbde0]
and rax, r12
cmp rax, qword [0x1402cbdc8]
je 0x14016b8f1
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, rbp
mov rbp, rdi
cmp dword [rsi + 0x70], 1
je 0x14016b980
mov dword [rbp + 0x198], 0
jmp 0x14016a266
mov rcx, r15
call fcn.1401509f0
jmp 0x14016b8a6
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, rbp
mov rbp, rdi
mov rcx, r12
call fcn.1401509f0
jmp 0x14016b8ce
xor esi, esi
jmp 0x14016b8ce
mov rax, qword [rbp + 0x150]
mov rcx, qword [rbp + 0x158]
sub rcx, rax
sar rcx, 5
cmp rcx, r15
jbe 0x14016d251
mov rcx, qword [rax + rbx + 8]
cmp rcx, qword [rax + rbx + 0x10]
movabs r14, 0xaaaaaaaaaaaaaaaa
je 0x14016b90b
mov rsi, qword [rcx + 0x18]
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
je 0x14016b976
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
jne 0x14016b8ce
mov r12, rsi
jmp 0x14016b901
mov rcx, rsi
call fcn.1401508a0
jmp 0x14016b95a
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x180]
sub rcx, rax
sar rcx, 5
cmp rcx, r15
jbe 0x14016d251
shl r15, 5
mov rcx, qword [rax + r15 + 8]
cmp rcx, qword [rax + r15 + 0x10]
je 0x14016b8d8
inc dword [rbp + 0x198]
jmp 0x14016a266
movsd xmm0, qword [rbp + 0x58]
xorpd xmm1, xmm1
ucomisd xmm0, xmm1
jbe 0x14016d4d8
cmp byte [rbp + 0x110], 0
je 0x14016d78f
mov al, 1
mov dword [rsp + 0xa8], eax
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x108]
mov qword [rbp + 0x100], rcx
mov rdx, rax
shl rdx, 0x17
xor rdx, rax
mov rax, rcx
shr rax, 0x1a
xor rax, rcx
xor rax, rdx
shr rdx, 0x11
xor rdx, rax
mov qword [rbp + 0x108], rdx
add rdx, rcx
shr rdx, 0xb
xorps xmm1, xmm1
cvtsi2sd xmm1, rdx
mulsd xmm1, qword [0x1402a9680]
ucomisd xmm0, xmm1
seta al
mov dword [rsp + 0x98], eax
mov r12, qword [rsi + 0x30]
jmp 0x14016a3c7
add rcx, rdx
mov byte [r13 + 0x168], 0
lea r14, [rsp + 0x110]
mov rdx, r14
call fcn.14017dda0
lea rcx, [rsp + 0x6b0]
mov rdx, r14
call fcn.140138c40
lea r14, [r13 + 0x140]
mov rcx, r14
lea rdx, [rsp + 0x6b0]
call fcn.1402516c0
lea rcx, [rsp + 0x6b0]
call fcn.14014b4b0
cmp byte [r13 + 0x158], 0
je 0x14016bbb1
mov rax, qword [r13 + 0xb8]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x6b0]
mov rdx, r14
call fcn.1401cbba0
mov rcx, qword [rsp + 0x60]
lea rdx, [rsp + 0x6b0]
call fcn.140253520
cmp byte [r13 + 0x158], 0
je 0x14016bbb1
mov rax, qword [r13 + 0xb0]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x110]
mov rdx, r14
call fcn.1401cbba0
mov rcx, qword [rsp + 0x60]
lea rdx, [rsp + 0x110]
call fcn.140253520
mov r14, qword [rsp + 0x100]
mov rax, qword [0x1402cbde0]
and rax, r14
cmp rax, qword [0x1402cbdc8]
jne 0x14016bb38
mov rcx, r14
call fcn.1401509f0
movabs r14, 0xaaaaaaaaaaaaaaaa
jmp 0x14016a6a4
lea r14, [rsp + 0x100]
movaps xmmword [r14], xmm6
mov rdx, qword [rsi]
mov rcx, r14
call fcn.140206670
mov rax, qword [r14]
xor r14d, r14d
test rax, rax
je 0x14016bb1d
cmp byte [r13 + 0x168], 0
je 0x14016bbac
imul rdx, qword [rsp + 0x108], 0xa8
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + rdx + 0x28]
cmp rax, qword [r13 + 0x160]
jge 0x14016ba4e
lea rcx, [rsp + 0x100]
call fcn.140206480
mov rax, qword [rsp + 0x100]
jmp 0x14016bb64
call fcn.140207060
lea rax, str.optional_operator_called_on_a_disengaged_value
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcincludeoptional
lea r9, str.this__has_value__
mov r8d, 0x406
call fcn.140207060
add rcx, rdx
mov byte [r14 + 0x168], 0
lea rbp, [rsp + 0x6b0]
mov rdx, rbp
call fcn.14017dda0
lea rcx, [rsp + 0x160]
mov rdx, rbp
call fcn.140138c40
lea rcx, [r14 + 0x140]
mov qword [rsp + 0x78], rcx
lea rdx, [rsp + 0x160]
call fcn.1402516c0
lea rcx, [rsp + 0x160]
call fcn.14014b4b0
cmp byte [r14 + 0x158], 0
je 0x14016bbb1
mov rbp, qword [r14 + 0xb8]
lea rcx, [rsp + 0x160]
mov rdx, qword [rsp + 0x78]
call fcn.1401cbba0
mov rcx, rbp
lea rdx, [rsp + 0x160]
call fcn.140253520
cmp byte [r14 + 0x158], 0
je 0x14016bbb1
mov rbp, qword [r14 + 0xb0]
lea rcx, [rsp + 0x6b0]
mov rdx, qword [rsp + 0x78]
call fcn.1401cbba0
mov rcx, rbp
lea rdx, [rsp + 0x6b0]
call fcn.140253520
mov rcx, qword [rsp + 0x110]
jmp 0x14016bd17
mov qword [rsp + 0x88], rbp
lea rbp, [rsp + 0x110]
movaps xmmword [rbp], xmm6
mov rdx, qword [rdi]
mov rcx, rbp
call fcn.140206670
mov rax, qword [rbp]
test rax, rax
je 0x14016bd15
cmp byte [r14 + 0x168], 0
je 0x14016bbac
imul rdx, qword [rsp + 0x118], 0xa8
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + rdx + 0x28]
cmp rax, qword [r14 + 0x160]
jge 0x14016bbdd
lea rcx, [rsp + 0x110]
call fcn.140206480
mov rax, qword [rsp + 0x110]
jmp 0x14016bcc9
xor ecx, ecx
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
jne 0x14016bd2f
call fcn.1401509f0
mov rbp, qword [rsp + 0x88]
jmp 0x14016bf5f
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016bea0
mov rcx, rdi
call fcn.14014c790
mov eax, 0x4c4b40
add rax, qword [rsp + 0x6b0]
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [rdi + 0x20], rcx
jmp 0x14016beee
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016bf03
lea rcx, [rsp + 0x6b0]
call qword [0x1402f5008]
mov rax, qword [rsp + 0x6b0]
jmp 0x14016bea8
tzcnt r13, rsi
mov r15, qword [rbx + r13*8 + 0x10]
test r15, r15
je 0x14016d02f
mov eax, 1
lock xadd dword [r15], eax
test eax, eax
jle 0x14016d032
cmp eax, 0x7fffffff
je 0x14016d035
mov rax, qword [rbx + r13*8 + 0x10]
mov rax, qword [rax + 8]
cmp rax, rdi
jne 0x14016c012
mov rcx, qword [r15 + 0x28]
call fcn.14014b4b0
mov rax, qword [r15 + 0x20]
mov rcx, qword [r15 + 0x28]
cmp rax, r12
jne 0x14016c015
mov qword [rsp + 0x98], rcx
mov rdi, qword [rcx + 0xb8]
mov r14, qword [rdi + 0x30]
cmp qword [rdi + 8], 0
je 0x14016beee
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x6b0], rax
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x14016bd9d
mov qword [rsp + 0x160], 0
lea rcx, [rsp + 0x160]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x160]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14016bd3c
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rsp + 0x6b0], rax
cmp rax, qword [rdi + 0x20]
jl 0x14016beee
mov rdx, qword [rdi + 0x18]
inc rdx
cmp rdx, 5
mov eax, 4
cmovb rdx, rax
mov rax, qword [rdi]
mov rcx, qword [rdi + 0x10]
mov qword [rdi + 0x18], rcx
test rax, rax
je 0x14016beee
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x14016bed9
cmp rcx, r8
jb 0x14016bd63
lea r12, [r14 + 0x28]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016bd8f
mov rax, qword [rdi]
mov rcx, qword [r14 + 0x30]
mov qword [rdi], rcx
mov qword [r14 + 0x30], rax
mov rax, qword [rdi + 8]
mov rcx, qword [r14 + 0x38]
mov qword [rdi + 8], rcx
mov qword [r14 + 0x38], rax
mov rax, qword [rdi + 0x10]
mov rcx, qword [r14 + 0x40]
mov qword [rdi + 0x10], rcx
mov qword [r14 + 0x40], rax
mov rax, qword [rdi + 0x18]
mov rcx, qword [r14 + 0x48]
mov qword [rdi + 0x18], rcx
mov qword [r14 + 0x48], rax
mov rax, qword [rdi + 0x20]
mov rcx, qword [r14 + 0x50]
mov qword [rdi + 0x20], rcx
mov qword [r14 + 0x50], rax
cmp byte [r14 + 0x168], 0
jne 0x14016bca6
mov rax, qword [r14 + 0xb8]
cmp qword [rax + 0x10], 0
sete byte [r14 + 0x58]
cmp qword [r14 + 0xa8], 0
movzx eax, byte [r14 + 0x138]
jne 0x14016bf94
test al, al
je 0x14016c076
movzx eax, byte [r14 + 0x158]
xor al, 1
mov byte [r14 + 0x59], al
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rdi + 0x10], 0
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r9d, 0
lea r12, [0x1401c69d0]
je 0x14016bfd6
mov rcx, qword [rdi + 0x28]
test rcx, rcx
je 0x14016bfd6
cmp byte [rdi + 0x68], 0
jne 0x14016c02c
mov rdx, rdi
call fcn.14014bf60
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0xa8]
test rcx, rcx
lea rdi, [0x1401c5880]
jne 0x14016c0e3
lock dec dword [r15]
je 0x14016c01d
btc rsi, r13
test rsi, rsi
mov r13, qword [rsp + 0x58]
je 0x14016a04d
jmp 0x14016bdb8
mov rcx, r15
call qword [0x1402f5008]
jmp 0x14016bff5
mov rax, qword [r15 + 0x10]
mov rcx, r15
call qword [0x1402f5008]
jmp 0x14016bffb
mov rax, qword [rdi]
mov r8, qword [rax + 8]
inc r8
cmp r8, qword [rax]
mov rdx, qword [rax + 0x18]
cmove r8, r9
imul r8, r8, 0xa8
mov eax, dword [rdx + r8 + 0x78]
mov r10, qword [rdx + r8 + 0x30]
mov r9d, 0
test r10, r10
jne 0x14016c07d
mov r10, qword [rdi + 0x50]
cmp qword [rdx + r8 + 0x90], r10
je 0x14016c0c8
jb 0x14016bfce
jmp 0x14016bfd6
xor eax, eax
jmp 0x14016bf94
lea r9, [rdx + r8]
cmp dword [r9 + 0x40], 0
jne 0x14016c0c3
movabs r11, 0x8000000000000001
mov r9, qword [r9 + 0x38]
lea r14, [r9 + r11]
cmp r14, 2
jb 0x14016c112
lea r11, [r10 + r9]
sar r11, 0x3f
btc r11, 0x3f
add r10, r9
cmovo r10, r11
mov r9, r10
movabs r14, 0xaaaaaaaaaaaaaaaa
jmp 0x14016c05d
mov r9, r10
jmp 0x14016c05d
cmp r9, qword [rdi + 0x58]
jne 0x14016c0d1
cmp eax, dword [rdi + 0x60]
lea r12, [0x1401c69d0]
jl 0x14016bfce
jmp 0x14016bfd6
cmp byte [rax + 0x138], 0
je 0x14016bff5
mov rax, qword [rcx]
mov rax, qword [rax + 8]
jmp 0x14016c015
movabs r14, 0xaaaaaaaaaaaaaaaa
lea r12, [0x1401c69d0]
jmp 0x14016c05d
add r11, r10
cmp r11, 1
ja 0x14016c0fc
cmp r10, r9
movabs r14, 0xaaaaaaaaaaaaaaaa
lea r12, [0x1401c69d0]
je 0x14016c05d
int3
lea rcx, [rsp + 0x160]
call fcn.140154060
cmp rdi, 1
je 0x14016a33f
jmp 0x14016a254
lea rdi, [rsp + 0x110]
mov rcx, rdi
call qword [0x1402f5008]
mov rax, qword [rdi]
cmp rax, qword [rsi + 0x20]
jge 0x14016a763
jmp 0x14016a7a3
lea rdi, [rsp + 0x110]
mov rcx, rdi
call qword [0x1402f5008]
mov rax, qword [rdi]
cmp rax, qword [rsi + 0x20]
jge 0x14016a5f3
jmp 0x14016a633
call fcn.1401cbbbc
jmp 0x14016c1ec
lock dec dword [rdi + 8]
jne 0x14016a52e
mov rcx, qword [rdi]
mov rax, qword [rcx + 8]
lea rdx, [0x1402386a0]
cmp qword [rcx + 0x10], rdx
jne 0x14016c1cb
lea rcx, [0x140008640]
cmp rax, rcx
je 0x14016c1de
mov rcx, rdi
mov edx, 1
call qword [0x1402f5008]
jmp 0x14016a52e
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x14016c1ec
lock dec dword [rcx]
je 0x14016c19a
mov r13, qword [rdi + 0x10]
test r13, r13
je 0x14016c1fc
lock dec dword [r13]
je 0x14016c209
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x14016a52e
mov rcx, qword [r13 + 0x20]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14016c23b
mov qword [r13 + 0x20], 0
lea rcx, [r13 + 8]
call fcn.1400085a0
mov rcx, r13
call fcn.1401cbbbc
jmp 0x14016c1fc
call fcn.1401509f0
jmp 0x14016c220
add rcx, rdx
mov byte [rbx + 0x168], 0
lea r15, [rsp + 0x110]
mov rdx, r15
call fcn.14017dda0
lea r12, [rsp + 0x6b0]
mov rcx, r12
mov rdx, r15
call fcn.140138c40
lea r15, [rbx + 0x140]
mov rcx, r15
mov rdx, r12
call fcn.1402516c0
mov rcx, r12
call fcn.14014b4b0
cmp byte [rbx + 0x158], 0
je 0x14016bbb1
mov r12, qword [rbx + 0xb8]
lea r14, [rsp + 0x6b0]
mov rcx, r14
mov rdx, r15
call fcn.1401cbba0
mov rcx, r12
mov rdx, r14
call fcn.140253520
cmp byte [rbx + 0x158], 0
je 0x14016bbb1
mov r12, qword [rbx + 0xb0]
lea r14, [rsp + 0x110]
mov rcx, r14
mov rdx, r15
call fcn.1401cbba0
mov rcx, r12
mov rdx, r14
call fcn.140253520
mov rcx, qword [rsp + 0xe0]
jmp 0x14016c364
lea r15, [rsp + 0xe0]
movaps xmmword [r15], xmm6
mov rdx, qword [rsi]
mov rcx, r15
call fcn.140206670
mov rax, qword [r15]
test rax, rax
je 0x14016c362
lea r15, [rsp + 0xe0]
cmp byte [rbx + 0x168], 0
je 0x14016bbac
imul rdx, qword [rsp + 0xe8], 0xa8
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + rdx + 0x28]
cmp rax, qword [rbx + 0x160]
jge 0x14016c242
mov rcx, r15
call fcn.140206480
mov rax, qword [rsp + 0xe0]
test rax, rax
jne 0x14016c31e
xor ecx, ecx
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
jne 0x14016c37c
call fcn.1401509f0
movabs r14, 0xaaaaaaaaaaaaaaaa
jmp 0x14016c542
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016c484
mov rcx, rsi
call fcn.14014c790
mov eax, 0x4c4b40
add rax, qword [rsp + 0x110]
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [rsi + 0x20], rcx
jmp 0x14016c4d2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016c4e7
lea rdi, [rsp + 0x110]
mov rcx, rdi
call qword [0x1402f5008]
mov rax, qword [rdi]
jmp 0x14016c48c
cmp qword [rsi + 0x10], 0
jne 0x14016c632
cmp dword [rsi + 0x70], 0
jne 0x14016c57e
mov rbx, qword [rsi + 0x30]
cmp qword [rsi + 8], 0
je 0x14016c4d2
mov qword [rsp + 0x110], r14
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x14016c3ec
mov qword [rsp + 0x6b0], 0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6b0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14016c38b
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rsp + 0x110], rax
cmp rax, qword [rsi + 0x20]
jl 0x14016c4d2
mov rdx, qword [rsi + 0x18]
inc rdx
cmp rdx, 5
mov eax, 4
cmovb rdx, rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x18], rcx
test rax, rax
je 0x14016c4d2
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x14016c4bd
cmp rcx, r8
jb 0x14016c3b2
lea rdi, [rbx + 0x28]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016c3de
mov rax, qword [rsi]
mov rcx, qword [rbx + 0x30]
mov qword [rsi], rcx
mov qword [rbx + 0x30], rax
mov rax, qword [rsi + 8]
mov rcx, qword [rbx + 0x38]
mov qword [rsi + 8], rcx
mov qword [rbx + 0x38], rax
mov rax, qword [rsi + 0x10]
mov rcx, qword [rbx + 0x40]
mov qword [rsi + 0x10], rcx
mov qword [rbx + 0x40], rax
mov rax, qword [rsi + 0x18]
mov rcx, qword [rbx + 0x48]
mov qword [rsi + 0x18], rcx
mov qword [rbx + 0x48], rax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rbx + 0x50]
mov qword [rsi + 0x20], rcx
mov qword [rbx + 0x50], rax
cmp byte [rbx + 0x168], 0
jne 0x14016c2f7
mov rax, qword [rbx + 0xb8]
cmp qword [rax + 0x10], 0
sete byte [rbx + 0x58]
cmp qword [rbx + 0xa8], 0
mov al, byte [rbx + 0x138]
jne 0x14016c572
test al, al
je 0x14016c682
mov al, byte [rbx + 0x158]
xor al, 1
mov byte [rbx + 0x59], al
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsi + 8], 0
je 0x14016c632
mov qword [rsp + 0x110], r14
mov rax, qword [0x1402da988]
lea rcx, [0x1401c94c0]
cmp rax, rcx
jne 0x14016c669
mov qword [rsp + 0x6b0], 0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6b0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14016c6b2
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402e4008]
mov qword [rsp + 0x110], rax
cmp rax, qword [rsi + 0x20]
jl 0x14016c632
mov rdx, qword [rsi + 0x18]
inc rdx
cmp rdx, 5
mov eax, 4
cmovb rdx, rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x18], rcx
test rax, rax
je 0x14016c632
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x14016c621
cmp rcx, r8
jb 0x14016c689
cmp qword [rsi + 0x40], 0xffffffffffffffff
je 0x14016c645
mov rcx, qword [rsi + 0x28]
mov rdx, rsi
call fcn.140154390
test byte [0x1402da240], 9
jne 0x14016c6d9
mov rdi, qword [rsp + 0x160]
movabs r14, 0xaaaaaaaaaaaaaaaa
jmp 0x14016a336
lea rdi, [rsp + 0x110]
mov rcx, rdi
call qword [0x1402f5008]
mov rax, qword [rdi]
jmp 0x14016c5f0
xor eax, eax
jmp 0x14016c572
mov rcx, rsi
call fcn.14014c790
mov eax, 0x4c4b40
add rax, qword [rsp + 0x110]
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [rsi + 0x20], rcx
jmp 0x14016c632
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016c5e8
mov rbx, qword [rsi + 0x30]
mov rax, qword [rbx + 0x18]
mov edi, dword [rax + 4]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp edi, eax
jne 0x14016c652
lea rdi, [rbx + 0x28]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x14016c70c
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0xb0]
mov rcx, qword [rbx + 0xb8]
mov r12, qword [rcx + 0x10]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x78], rax
mov r15, qword [rbx + 0xd0]
mov r14, qword [rbx + 0xc8]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x1402da240], 0x19
je 0x14016c652
sub r15, r14
shr r15, 3
imul eax, r15d, 0x3cf3cf3d
mov rcx, r12
add ecx, dword [rsp + 0x88]
mov r12, qword [rsp + 0x78]
add r12d, eax
add r12d, ecx
mov ecx, dword [rbx + 8]
call fcn.140252620
mov rdi, rax
lea r15, [rsp + 0x110]
mov rcx, r15
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
movaps xmmword [rsp + 0x6b0], xmm6
movaps xmmword [rsp + 0x6c0], xmm6
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x6d0], rcx
mov word [rsp + 0x6b0], 0x301
lea rcx, [0x1402a44cf]
mov qword [rsp + 0x6b8], rcx
movsxd rcx, r12d
mov qword [rsp + 0x6c8], rcx
mov rbx, r13
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
lea rdx, [0x1402da240]
mov cl, 0x43
mov r8, rdi
xor r9d, r9d
call fcn.1402331d0
mov rcx, r13
call fcn.140218680
jmp 0x14016c652
mov byte [rbp + 0x258], 1
jmp 0x14016a240
mov qword [rax + 0x20], 0
mov rdi, qword [rsi]
mov qword [rsi], rcx
test rdi, rdi
je 0x14016a55e
mov rcx, rdi
call fcn.14016f780
mov rcx, rdi
call fcn.1401cbbbc
jmp 0x14016a55e
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016a648
call fcn.140150dc0
mov rax, qword [rsi]
jmp 0x14016c8a0
mov qword [rsp + 0xa0], r10
mov rax, qword [rsi]
test rax, rax
je 0x14016c8af
cmp rsi, r13
je 0x14016c8ab
mov rcx, qword [r13]
mov rdx, qword [0x1402cbde0]
and rdx, rcx
cmp rdx, qword [0x1402cbdc8]
je 0x14016c86a
mov qword [r13], rax
mov qword [rsi], 0
add r13, 8
add rsi, 8
cmp rsi, r14
jne 0x14016c87c
mov r14, qword [rbx + 8]
mov r10, qword [rsp + 0xa0]
jmp 0x14016c8e2
mov qword [rsp + 0xa0], r10
call fcn.140150dc0
mov r10, qword [rsp + 0xa0]
jmp 0x14016c923
cmp rsi, r14
jne 0x14016c874
mov rsi, r14
sub rsi, r13
jb 0x14016e3ab
je 0x14016ac80
mov rax, r13
add rax, rsi
cmp rax, r14
je 0x14016c94a
sar rsi, 3
shl rsi, 3
test rsi, rsi
je 0x14016c935
mov rcx, qword [r13]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14016c8c6
lea rax, [rsi + r13]
mov rcx, qword [rax]
mov qword [r13], rcx
mov qword [rax], 0
lea rax, [rsi + r13]
add rax, 8
add r13, 8
cmp rax, r14
jne 0x14016c907
mov r14, qword [rbx + 8]
cmp r14, r13
je 0x14016c985
add r14, 0xfffffffffffffff8
test r14, r14
je 0x14016e37f
mov rcx, qword [r14]
mov rax, qword [0x1402cbde0]
and rax, rcx
cmp rax, qword [0x1402cbdc8]
je 0x14016c98e
mov qword [r14], 0
lea rax, [r14 - 8]
cmp r14, r13
mov r14, rax
jne 0x14016c953
mov qword [rbx + 8], r13
jmp 0x14016ac80
mov rsi, r10
call fcn.140150dc0
mov r10, rsi
jmp 0x14016c972
xor ecx, ecx
jmp 0x14016a7e7
xor r12d, r12d
jmp 0x14016a9f0
xor eax, eax
jmp 0x14016a6d9
mov rcx, qword [rsp + 0x78]
call fcn.140214af0
test al, al
jne 0x14016cabd
jmp 0x14016cae6
int3
mov rdi, qword [rbx + 0x90]
mov rax, rsi
sub rax, r13
add rax, rdi
jmp 0x14016ca55
cmp dword [rbp + 0x80], 0
jle 0x14016a378
lea rdi, [rsp + 0x160]
mov r8d, 0xb8
mov rcx, rdi
mov dl, 0xaa
call fcn.1401d06e0
mov rcx, rsi
mov rdx, rdi
call fcn.14016f890
mov rax, qword [rsi + 0x30]
mov qword [rdi + 0xa8], rax
mov eax, dword [rsi + 0x70]
mov dword [rdi + 0xb0], eax
mov rcx, qword [rbp + 0x98]
mov rbx, rbp
mov rsi, qword [rbp + 0xa0]
mov rax, rsi
mov r13, rcx
sub rax, rcx
jb 0x14016c9dc
mov rdi, qword [rbx + 0x90]
inc rax
xor ecx, ecx
mov rdx, rdi
sub rdx, 1
cmovae rcx, rdx
cmp rcx, rax
jae 0x14016cb3b
mov rdx, rcx
shr rdx, 2
add rdx, rcx
cmp rax, rdx
cmova rdx, rax
mov rax, rbx
lea rbp, [rbx + 0x98]
lea r14, [rbx + 0xa0]
cmp rdx, 4
mov edi, 3
cmovae rdi, rdx
inc rdi
mov ecx, 0xb8
mov rax, rdi
mul rcx
mov qword [rsp + 0x78], rax
jo 0x14016c9c8
lea r15, [rbx + 0x88]
lea rcx, fcn.140163210
mov rdx, qword [rsp + 0x78]
xor r8d, r8d
call fcn.140163210
mov r12, rax
test rax, rax
jne 0x14016cae6
cmp byte [0x1402deda0], 0
jne 0x14016c9b1
lea r9, [rsp + 0x6b0]
mov qword [r9], r12
mov qword [r9 + 8], rdi
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rbp
mov rcx, r15
mov rdx, r13
mov r8, rsi
call fcn.1400084b0
mov rsi, rbx
mov rdx, qword [rbx + 0x88]
lea rcx, fcn.140163210
xor r8d, r8d
call fcn.14015e2b0
mov qword [rbx + 0x88], r12
mov qword [rbx + 0x90], rdi
mov rsi, qword [rbx + 0xa0]
cmp rdi, rsi
jb 0x14016d064
lea r9, [rsp + 0x208]
lea rdx, [rsp + 0x188]
mov r10, rbx
mov rax, qword [rbx + 0x88]
imul rcx, rsi, 0xb8
mov r8, qword [rdx - 0x28]
add rax, rcx
add rax, 0x28
mov qword [rax - 0x28], r8
xor r8d, r8d
mov qword [rdx - 0x28], r8
movupd xmm0, xmmword [rdx - 0x20]
movupd xmm1, xmmword [rdx - 0x10]
movupd xmmword [rax - 0x10], xmm1
movupd xmmword [rax - 0x20], xmm0
mov ecx, 0xa
mov rdi, rax
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov cl, byte [rdx + 0x54]
mov byte [rax + 0x54], cl
mov ecx, dword [rdx + 0x50]
mov dword [rax + 0x50], ecx
mov cl, byte [rdx + 0x5a]
mov byte [rax + 0x5a], cl
movzx ecx, word [rdx + 0x58]
mov word [rax + 0x58], cx
mov rcx, qword [rdx + 0x60]
mov qword [rax + 0x60], rcx
mov qword [rdx + 0x60], r8
mov rcx, qword [rdx + 0x68]
mov qword [rax + 0x68], rcx
mov rcx, qword [rdx + 0x70]
mov qword [rax + 0x70], rcx
mov qword [rdx + 0x70], r8
mov rcx, qword [rdx + 0x78]
mov qword [rax + 0x78], rcx
mov ecx, dword [r9 + 8]
mov dword [rax + 0x88], ecx
mov rcx, qword [r9]
mov qword [rax + 0x80], rcx
mov rax, qword [rbx + 0x90]
mov rcx, qword [rbx + 0xa0]
lea rdx, [rax - 1]
lea r9, [rcx + 1]
cmp rcx, rdx
cmove r9, r8
mov qword [rbx + 0xa0], r9
test r9, r9
je 0x14016cc4c
cmp rax, rcx
jb 0x14016d067
lea rcx, [rsp + 0x160]
call fcn.140191770
movabs r14, 0xaaaaaaaaaaaaaaaa
lea r13, [rsp + 0x6b0]
mov rbp, rbx
jmp 0x14016a254
mov rcx, rdx
jmp 0x14016cc1c
mov rcx, rsi
call fcn.14014c790
mov eax, 0x4c4b40
add rax, qword [rsp + 0x110]
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [rsi + 0x20], rcx
jmp 0x14016a7a3
mov rcx, rsi
call fcn.14014c790
mov eax, 0x4c4b40
add rax, qword [rsp + 0x110]
movabs rcx, 0x7fffffffffffffff
cmovno rcx, rax
mov qword [rsi + 0x20], rcx
jmp 0x14016a633
lea rsi, [rsp + 0x110]
add r14, 0xfffffffffffffff8
mov rcx, rsi
mov rdx, r14
call fcn.140249290
cmp r14, qword [rbp + 0x2a8]
jne 0x14016ccb1
mov r11, rbp
mov rcx, qword [rbp + 0x2a0]
mov rax, qword [rbp + 0x2b0]
mov rdx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x118]
mov r9, qword [rsp + 0x120]
mov r10, qword [rsp + 0x128]
mov qword [rbp + 0x2a0], rdx
mov qword [rbp + 0x2a8], r8
mov qword [rbp + 0x2b0], r9
mov qword [rbp + 0x2b8], r10
cmp r14, rax
je 0x14016cd36
add r14, 8
add rax, 8
cmp rax, 0x10
je 0x14016e37f
add rax, 0xfffffffffffffff8
cmp r14, rax
jne 0x14016cd23
mov rsi, qword [rsp + 0x58]
jmp 0x14016cf4c
movabs rax, 0x1fffffffffffffff
sar r13, 2
cmp rdi, r14
mov esi, 1
cmovne rsi, r13
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x6d0], rcx
cmp rsi, rax
ja 0x14016e37a
lea rcx, [rsi*8]
call fcn.1401cbbc4
mov rdi, rax
lea rdx, [rax + rsi*8]
and rsi, 0xfffffffffffffffc
lea rsi, [rax + rsi*2]
mov qword [rsp + 0x110], rax
lea rcx, [rsp + 0x6b0]
mov rax, qword [rsp + 0x80]
mov qword [rcx], rax
mov qword [rsp + 0x118], rsi
mov rax, qword [rsp + 0x68]
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rax
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x128], rdx
mov qword [rcx + 0x18], rax
call fcn.140249440
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x68], rsi
jmp 0x14016ce16
mov qword [rsp + 0x60], rax
test r13, r13
jle 0x14016cd40
lea rax, [rsi*4 + 4]
and rax, 0xfffffffffffffff8
mov rcx, qword [rsp + 0x68]
sub rcx, rax
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x118], rcx
mov rax, qword [rsp + 0x60]
jmp 0x14016cee3
lea rcx, [rbp + 0x2a0]
cmp rax, 0x11
jae 0x14016cf6b
mov rdx, qword [rbp + 0x2a0]
mov r8, qword [rbp + 0x2b8]
mov rax, r8
sub rax, rdx
cmp r13, rax
jb 0x14016cf9b
sar rax, 2
cmp r8, rdx
mov ecx, 1
cmovne rcx, rax
lea rax, [rbp + 0x2c0]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x130], rax
mov rax, rcx
shr rax, 0x3d
jne 0x14016e37a
mov qword [rsp + 0x60], rcx
lea rcx, [rcx*8]
call fcn.1401cbbc4
mov qword [rsp + 0x110], rax
lea rcx, [rax + rsi*8]
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x60]
lea rax, [rax + rcx*8]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x128], rax
mov ecx, 0xf68
call fcn.1401cbbc4
cmp rsi, qword [rsp + 0x60]
je 0x14016cde7
mov rdx, qword [rsp + 0x68]
test rdx, rdx
mov rsi, qword [rsp + 0x58]
je 0x14016d06a
mov qword [rdx], rax
lea rax, [rdx + 8]
mov qword [rsp + 0x120], rax
mov r14, qword [rbp + 0x2b0]
cmp r14, qword [rbp + 0x2a8]
jne 0x14016cca9
mov rcx, qword [rbp + 0x2a0]
mov r8, qword [rsp + 0x80]
mov qword [rbp + 0x2a0], r8
mov qword [rbp + 0x2a8], rdx
mov qword [rbp + 0x2b0], rax
mov rax, qword [rsp + 0xa0]
mov qword [rbp + 0x2b8], rax
test rcx, rcx
jne 0x14016cf64
mov r14, qword [rbp + 0x2a8]
mov rdi, qword [rbp + 0x2b0]
jmp 0x14016a806
call fcn.1401cbbbc
jmp 0x14016cf51
add rax, 0xffffffffffffffef
mov qword [rbp + 0x2c0], rax
mov rax, qword [r14]
lea rdx, [rsp + 0x6b0]
mov qword [rdx], rax
add r14, 8
mov qword [rbp + 0x2a8], r14
call fcn.140248f30
mov rsi, qword [rsp + 0x58]
jmp 0x14016cf51
mov r14, rcx
mov ecx, 0xf68
cmp r8, rdi
je 0x14016cfc7
call fcn.1401cbbc4
lea rdx, [rsp + 0x6b0]
mov qword [rdx], rax
mov rcx, r14
call fcn.140248f30
mov rsi, qword [rsp + 0x58]
jmp 0x14016cf51
call fcn.1401cbbc4
lea rsi, [rsp + 0x6b0]
mov qword [rsi], rax
mov rcx, r14
mov rdx, rsi
call fcn.1402490e0
mov rax, qword [rbp + 0x2a8]
mov rcx, qword [rax]
mov qword [rsi], rcx
add rax, 8
mov qword [rbp + 0x2a8], rax
lea rdx, [rsp + 0x6b0]
mov rcx, r14
jmp 0x14016cf8f
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, r13
call qword [0x1402f5008]
jmp 0x14016a12d
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, r13
call qword [0x1402f5008]
jmp 0x14016a1c2
int3
int3
int3
lea rax, str.vector___index_out_of_bounds
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, [0x1402a1c81]
mov r8d, 0x601
call fcn.140207060
int3
int3
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.140207060
inc rax
mov qword [rsp + 0x178], rax
cmp rdx, rax
jne 0x14016afd0
mov rax, rdx
jmp 0x14016af50
xor eax, eax
jmp 0x14016a36b
mov rax, qword [rsp + 0x98]
cmp byte [rax], 0
je 0x14016a228
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x78]
mov r8, r15
call fcn.1402332a0
jmp 0x14016a228
mov rax, qword [rsp + 0xb8]
cmp byte [rax], 0
je 0x14016ad7f
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xc8]
call fcn.1402332a0
jmp 0x14016ad7f
mov r12d, 0xf68
add r12, qword [r9 + rax*8 - 8]
jmp 0x14016aa03
mov r9, r15
mov r15, r13
mov rax, qword [rbp + 0x128]
mov r12, rbp
mov rcx, qword [rbp + 0x130]
mov r8, rcx
sub r8, rax
sar r8, 2
cmp r8, r9
je 0x14016d15f
mov rdx, r9
mov rbp, r12
lea rdi, [r12 + 0x170]
mov ebx, edx
jmp 0x14016d1ba
xor esi, esi
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, r15
mov rbp, r12
jmp 0x14016a266
mov rcx, r12
mov rax, qword [r12 + 0x128]
mov rcx, qword [r12 + 0x130]
inc bl
movzx r9d, bl
mov r8, rcx
sub r8, rax
sar r8, 2
mov esi, 0
mov rdx, r9
cmp r8, r9
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, r15
mov rbp, r12
je 0x14016a266
mov r8, qword [rbp + 0x140]
bt r8, rdx
jae 0x14016d189
mov rcx, rdi
call fcn.1401cbb30
test al, al
jne 0x14016d176
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rsi, [rsp + 0x160]
mov qword [rsi + 0x20], rax
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
movzx r8d, bl
mov rcx, rdi
mov rdx, rsi
call fcn.1401c7fa0
cmp byte [rsi + 0x20], 0
je 0x14016d15f
mov rsi, qword [rsp + 0x160]
mov rax, qword [0x1402cbde0]
and rax, rsi
cmp rax, qword [0x1402cbdc8]
jne 0x14016d161
mov rcx, rsi
call fcn.1401509f0
jmp 0x14016d161
inc rax
mov qword [rsp + 0x178], rax
cmp rdx, rax
jne 0x14016ac18
mov rax, rdx
jmp 0x14016ab8a
lea rax, str.vector___index_out_of_bounds
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, [0x1402a1c81]
mov r8d, 0x60b
call fcn.140207060
mov rax, qword [rsp + 0x160]
mov qword [r13], rax
jmp 0x14016a1df
mov rax, qword [rsp + 0x160]
mov qword [r13], rax
jmp 0x14016a215
mov rax, qword [rsp + 0x78]
cmp byte [rax], 0
je 0x14016ad01
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x70]
call fcn.1402332a0
jmp 0x14016ad01
movabs rcx, 0x8000000000000001
mov rsi, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + rcx]
cmp rdx, 2
jb 0x14016d302
xor ecx, ecx
cmp rsi, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub rsi, rax
cmovo rsi, rdx
jmp 0x14016d318
cmp rsi, rax
je 0x14016e3f1
shr rax, 0x3f
not rax
add rcx, rax
mov rsi, rcx
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
jmp 0x14016a0aa
movabs rcx, 0x8000000000000001
mov rsi, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + rcx]
cmp rdx, 2
jb 0x14016d365
xor ecx, ecx
cmp rsi, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub rsi, rax
cmovo rsi, rdx
jmp 0x14016d37b
cmp rsi, rax
je 0x14016e3f4
shr rax, 0x3f
not rax
add rcx, rax
mov rsi, rcx
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
jmp 0x14016a206
inc rax
mov qword [rsp + 0x178], rax
cmp rdx, rax
jne 0x14016ab5f
mov rax, rdx
jmp 0x14016ab81
int3
int3
int3
int3
int3
int3
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
je 0x14016accd
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x80]
mov rbx, r10
call fcn.1402332a0
mov r10, rbx
jmp 0x14016accd
mov rcx, qword [rbp + 0x1b0]
sub rcx, qword [rbp + 0x1a8]
sar rcx, 3
jmp 0x14016ab36
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea r8, str.SequenceManagerImpl::SelectNextTask
mov cl, 0x58
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xd0], r8
xor r9d, r9d
call fcn.1402331d0
mov qword [rsp + 0xc8], rax
jmp 0x14016a01b
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea r8, str.SequenceManagerImpl::MoveReadyDelayedTasksToWorkQueues
mov cl, 0x58
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x78], r8
xor r9d, r9d
call fcn.1402331d0
mov r15, rax
jmp 0x14016a07c
mov al, 1
mov dword [rsp + 0xa8], eax
jmp 0x14016a3bc
int3
int3
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016a755
mov rcx, qword [0x1402e4008]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14016a5e5
int3
lea rdi, [rsp + 0x110]
mov rbx, qword [rsp + 0x98]
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call fcn.140248500
mov rcx, r13
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
movaps xmmword [rsp + 0x160], xmm6
movaps xmmword [rsp + 0x170], xmm6
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x180], rcx
mov word [rsp + 0x160], 0x801
lea rcx, str.snapshot
mov qword [rsp + 0x168], rcx
mov rcx, qword [rdi]
mov qword [rsp + 0x178], rcx
lea rdi, [rsp + 0x160]
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x48], 0x800
mov qword [rsp + 0x28], 0
lea rdx, [0x1402da250]
lea r8, [0x1402b0cb0]
mov cl, 0x4f
xor r9d, r9d
call fcn.1402331d0
mov rcx, rdi
call fcn.140218680
jmp 0x14016a273
lea rdi, [rsp + 0x160]
mov rcx, rdi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea rdi, str.SequenceManagerImpl::NotifyWillProcessTaskObservers
mov cl, 0x58
mov qword [rsp + 0x78], rdx
mov r8, rdi
xor r9d, r9d
call fcn.1402331d0
mov r15, rax
jmp 0x14016aa22
cmp rdi, r10
seta dil
mov ebx, esi
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rsi
mov esi, ebx
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea r8, str.SequenceManager.QueueNotifyWillProcessTask
mov cl, 0x58
xor r9d, r9d
call fcn.1402331d0
mov r15, rax
mov rcx, qword [r12 - 0x40]
mov rdx, r13
mov r8d, edi
call fcn.14016e4e0
cmp byte [0x1402da240], 0
je 0x14016acee
lea rcx, [0x1402da240]
lea rdx, str.SequenceManager.QueueNotifyWillProcessTask
mov r8, r15
call fcn.1402332a0
jmp 0x14016acee
inc rax
mov qword [rsp + 0x178], rax
cmp rdx, rax
jne 0x14016af1b
mov rax, rdx
jmp 0x14016af3d
mov ebx, esi
lea rsi, [rsp + 0x160]
mov rcx, rsi
mov qword [rsp + 0xa0], r10
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rsi
mov esi, ebx
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea r8, str.SequenceManager.WillProcessTaskObservers
mov cl, 0x58
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], r8
xor r9d, r9d
call fcn.1402331d0
mov r10, qword [rsp + 0xa0]
mov qword [rsp + 0x80], rax
jmp 0x14016aac2
lea rax, str.optional_operator___called_on_a_disengaged_value
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcincludeoptional
lea r9, str.this__has_value__
mov r8d, 0x3f4
call fcn.140207060
mov rax, qword [rdi + 0x10]
mov rcx, rdi
call qword [0x1402f5008]
jmp 0x14016acf7
mov rcx, qword [rbp + 0x1f8]
sub rcx, qword [rbp + 0x1f0]
sar rcx, 3
jmp 0x14016aef2
mov rdi, qword [rsi + 0x30]
mov rax, qword [rdi + 0x18]
mov esi, dword [rax + 4]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp esi, eax
jne 0x14016a7bc
lea rsi, [rdi + 0x28]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x14016d817
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov rax, qword [rdi + 0x40]
mov qword [rsp + 0x80], rax
mov rax, qword [rdi + 0xb0]
mov rcx, qword [rdi + 0xb8]
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x68], rcx
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x60], rax
mov r13, qword [rdi + 0xd0]
mov r14, qword [rdi + 0xc8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x1402da240], 0x19
je 0x14016a7bc
sub r13, r14
shr r13, 3
imul eax, r13d, 0x3cf3cf3d
mov rcx, qword [rsp + 0x68]
add ecx, dword [rsp + 0x80]
mov r14, qword [rsp + 0x60]
add r14d, eax
add r14d, ecx
mov ecx, dword [rdi + 8]
call fcn.140252620
mov rsi, rax
lea rdi, [rsp + 0x110]
mov rcx, rdi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
movaps xmmword [rsp + 0x6b0], xmm6
movaps xmmword [rsp + 0x6c0], xmm6
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x6d0], rcx
mov word [rsp + 0x6b0], 0x301
lea rcx, [0x1402a44cf]
mov qword [rsp + 0x6b8], rcx
movsxd rcx, r14d
mov qword [rsp + 0x6c8], rcx
lea r14, [rsp + 0x6b0]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
lea rdx, [0x1402da240]
mov cl, 0x43
mov r8, rsi
xor r9d, r9d
call fcn.1402331d0
mov rcx, r14
call fcn.140218680
jmp 0x14016a7bc
lea rax, str.front___called_on_an_empty_vector
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, str._empty__
mov r8d, 0x273
call fcn.140207060
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea r8, str.SequenceManager.QueueOnTaskStarted
mov cl, 0x58
xor r9d, r9d
call fcn.1402331d0
mov rdi, rax
mov rcx, qword [r12 - 0x40]
lea r8, [r12 - 0x30]
mov rdx, r13
call fcn.1401cad20
cmp byte [0x1402da240], 0
je 0x14016acf7
lea rcx, [0x1402da240]
lea rdx, str.SequenceManager.QueueOnTaskStarted
mov r8, rdi
call fcn.1402332a0
jmp 0x14016acf7
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.1401c9410
call sub.KERNEL32.dll_GetCurrentThreadId
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], eax
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rdx, [0x1402da240]
lea r8, str.SequenceManager.WillProcessTaskTimeObservers
mov cl, 0x58
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0xa8], r8
xor r9d, r9d
call fcn.1402331d0
mov qword [rsp + 0xc0], rax
jmp 0x14016ae7e
mov rsi, qword [rax]
mov rax, qword [rax + 8]
lea rcx, [rax + r14]
cmp rcx, 2
jb 0x14016e3e5
xor ecx, ecx
cmp rsi, rax
setns cl
add rcx, r13
sub rsi, rax
cmovo rsi, rcx
jmp 0x14016db0f
mov rdx, qword [r12 + 0x10]
mov dl, byte [rdx + 0x51]
xor ebp, ebp
cmp dl, cl
setae bpl
jmp 0x14016dbcf
shr rax, 0x3f
not rax
add rax, r14
mov rsi, rax
jmp 0x14016db0f
xor ecx, ecx
mov qword [rsp + 0x60], rcx
jmp 0x14016dac3
xor eax, eax
mov qword [rsp + 0x60], rax
mov rax, r13
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x68], rcx
mov esi, 0xaaaaaaaa
xor ecx, ecx
jmp 0x14016dc00
mov qword [rsp + 0x88], rbp
movabs r14, 0x8000000000000001
movabs r13, 0x7fffffffffffffff
lea rbp, [rsp + 0x6b0]
cmp dword [rax + 0x14], 1
je 0x14016da60
mov rsi, qword [rax]
mov rcx, qword [rsp + 0x58]
mov rdx, rbp
call fcn.140153580
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx + 0x18]
cmp rsi, qword [rsp + 0x6b0]
jle 0x14016e47c
cmp rax, rcx
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
je 0x14016a21e
movabs r14, 0xaaaaaaaaaaaaaa
mov r12, qword [rax + 0x18]
mov ebp, 0xaaaaaaaa
mov dword [rsp + 0x113], ebp
mov dword [rsp + 0x110], ebp
mov rcx, qword [r12]
mov r13, qword [r12 + 0xc8]
lea rdx, [0x14012b7b0]
mov rax, qword [r12 + 0xd0]
cmp qword [rcx + 0x30], rdx
cmp r13, rax
je 0x14016dab9
cmp byte [r12 + 0x138], 0
je 0x14016dab0
cmp dword [r12 + 0xe0], 0
mov rcx, qword [r12 + 0xb8]
mov rcx, qword [rcx + 0x38]
jne 0x14016da8c
mov rdx, qword [r12 + 0x10]
mov dl, byte [rdx + 0x51]
xor ebp, ebp
cmp dl, cl
setb cl
mov edx, dword [r13 + 0x40]
xor esi, esi
cmp edx, 2
cmovne esi, edx
test cl, cl
cmove esi, edx
mov r14, qword [r13 + 0x30]
mov rcx, qword [r13 + 0x38]
mov qword [rsp + 0x68], rcx
mov rcx, r14
mov qword [rsp + 0x60], r14
shr r14, 8
mov cl, 1
mov qword [rsp + 0x70], rcx
mov rcx, qword [r12 + 0xa8]
mov qword [rsp + 0x80], rcx
test rcx, rcx
jne 0x14016dd5c
shl r14, 8
movzx eax, byte [rsp + 0x60]
or rax, r14
mov cl, byte [r12 + 0x1b0]
cmp byte [rsp + 0x70], 0
je 0x14016dd46
test cl, cl
je 0x14016dd46
cmp qword [r12 + 0x198], rax
jne 0x14016dc76
mov rcx, qword [rsp + 0x68]
cmp qword [r12 + 0x1a0], rcx
jne 0x14016dc76
cmp dword [r12 + 0x1a8], ebp
jne 0x14016dc76
cmp dword [r12 + 0x1ac], esi
je 0x14016dd0c
mov qword [r12 + 0x198], rax
mov r8, qword [rsp + 0x68]
mov qword [r12 + 0x1a0], r8
mov dword [r12 + 0x1a8], ebp
mov dword [r12 + 0x1ac], esi
mov r10, qword [rsp + 0x70]
mov byte [r12 + 0x1b0], r10b
mov ecx, dword [rsp + 0x110]
mov edx, dword [rsp + 0x113]
mov dword [r12 + 0x1b4], edx
mov dword [r12 + 0x1b1], ecx
mov rcx, qword [r12 + 0xa0]
lea r9, [rsp + 0x160]
mov qword [r9], rax
mov qword [r9 + 8], r8
mov dword [r9 + 0x10], ebp
mov dword [r9 + 0x14], esi
mov byte [r9 + 0x18], r10b
mov eax, dword [rsp + 0x110]
mov edx, dword [rsp + 0x113]
mov dword [r9 + 0x1c], edx
mov dword [r9 + 0x19], eax
mov rdx, r12
mov r8, qword [rsp + 0x58]
call fcn.140195550
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
je 0x14016a21e
mov rcx, r12
mov r12, qword [rax + 0x18]
cmp rcx, r12
je 0x14016a21e
jmp 0x14016de91
cmp byte [rsp + 0x70], 0
setne dl
test cl, cl
setne cl
cmp dl, cl
je 0x14016dd0c
jmp 0x14016dc76
cmp byte [r12 + 0x138], 0
je 0x14016dc1e
mov rcx, qword [r12 + 0xb0]
mov byte [rsp + 0xa0], 1
cmp qword [rcx + 0x10], 0
jne 0x14016ddc7
mov rcx, qword [r12 + 0xb8]
cmp qword [rcx + 0x10], 0
jne 0x14016ddc7
cmp r13, rax
jne 0x14016deaf
lea r13, [r12 + 0x28]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016de83
cmp qword [r12 + 0x40], 0
setne byte [rsp + 0xa0]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
shl r14, 8
movzx eax, byte [rsp + 0x60]
or rax, r14
lea r9, [rsp + 0x6b0]
mov qword [r9], rax
mov rax, qword [rsp + 0x68]
mov qword [r9 + 8], rax
mov dword [r9 + 0x10], ebp
mov dword [r9 + 0x14], esi
mov rax, qword [rsp + 0x70]
mov byte [r9 + 0x18], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [r9 + 0x19], eax
mov dword [r9 + 0x1c], ecx
mov rcx, qword [rsp + 0x80]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov dl, byte [rsp + 0xa0]
mov byte [rsp + 0x20], dl
lea r13, [rsp + 0x160]
mov rdx, r13
mov r8, qword [rsp + 0x58]
call qword [0x1402f5008]
mov r14, qword [r13]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x68], rax
mov rax, r14
mov qword [rsp + 0x60], r14
shr r14, 8
mov ebp, dword [r13 + 0x10]
mov esi, dword [r13 + 0x14]
mov al, byte [r13 + 0x18]
mov qword [rsp + 0x70], rax
mov eax, dword [r13 + 0x19]
mov dword [rsp + 0x110], eax
mov eax, dword [r13 + 0x1c]
mov dword [rsp + 0x113], eax
jmp 0x14016dc1e
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016ddb0
mov rcx, r12
mov rdx, r13
call fcn.14017c620
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
jne 0x14016dd31
jmp 0x14016a21e
mov rax, qword [r12 + 0x10]
mov rax, qword [rax + 0x330]
mov rax, qword [fcn.1401c9410]
lea rcx, [rsp + 0x160]
call qword [0x1402f5008]
mov rax, qword [r13 + 0x30]
lea rcx, [rsp + 0x160]
cmp rax, qword [rcx]
jg 0x14016dd9a
jmp 0x14016ddc7
mov rdx, qword [rsi + 0x10]
mov dl, byte [rdx + 0x51]
xor r8d, r8d
cmp dl, cl
setae r8b
mov dword [rsp + 0x60], r8d
jmp 0x14016e054
xor ecx, ecx
cmp rsi, rax
setns cl
add rcx, r13
sub rsi, rax
cmovo rsi, rcx
jmp 0x14016df89
shr rax, 0x3f
not rax
add rax, r14
mov rsi, rax
jmp 0x14016df89
xor ecx, ecx
mov qword [rsp + 0x68], rcx
jmp 0x14016df3a
xor eax, eax
mov qword [rsp + 0x68], rax
mov rax, r13
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rcx
mov ebp, 0xaaaaaaaa
xor ecx, ecx
jmp 0x14016e088
mov qword [rsp + 0x88], rbp
movabs r14, 0x8000000000000001
movabs r13, 0x7fffffffffffffff
lea rbp, [rsp + 0x6b0]
cmp dword [rax + 0x14], 1
je 0x14016e3f7
mov rsi, qword [rax]
mov rcx, qword [rsp + 0x58]
mov rdx, rbp
call fcn.140153580
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx + 0x18]
cmp rsi, qword [rsp + 0x6b0]
jle 0x14016e418
cmp rax, rcx
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
je 0x14016a1e8
movabs r14, 0xaaaaaaaaaaaaaa
mov rax, qword [rax + 0x18]
mov ecx, 0xaaaaaaaa
mov dword [rsp + 0x113], ecx
mov dword [rsp + 0x60], 0xaaaaaaaa
mov dword [rsp + 0x110], ecx
mov rcx, qword [rax]
mov r13, qword [rax + 0xc8]
lea rdx, [0x14012b7b0]
mov rsi, rax
mov rax, qword [rax + 0xd0]
cmp qword [rcx + 0x30], rdx
cmp r13, rax
je 0x14016df30
cmp byte [rsi + 0x138], 0
je 0x14016df27
mov rcx, rsi
cmp dword [rsi + 0xe0], 0
mov rcx, qword [rsi + 0xb8]
mov rcx, qword [rcx + 0x38]
jne 0x14016deea
mov rdx, qword [rsi + 0x10]
mov dl, byte [rdx + 0x51]
mov dword [rsp + 0x60], 0
cmp dl, cl
setb cl
mov edx, dword [r13 + 0x40]
xor ebp, ebp
cmp edx, 2
cmovne ebp, edx
test cl, cl
cmove ebp, edx
mov r14, qword [r13 + 0x30]
mov rcx, qword [r13 + 0x38]
mov qword [rsp + 0x80], rcx
mov rcx, r14
mov qword [rsp + 0x68], r14
shr r14, 8
mov cl, 1
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsi + 0xa8]
mov qword [rsp + 0xa0], rcx
test rcx, rcx
jne 0x14016e1e2
shl r14, 8
movzx eax, byte [rsp + 0x68]
or rax, r14
mov cl, byte [rsi + 0x1b0]
cmp byte [rsp + 0x70], 0
je 0x14016e1cc
test cl, cl
je 0x14016e1cc
cmp qword [rsi + 0x198], rax
jne 0x14016e0fc
mov rcx, qword [rsp + 0x80]
cmp qword [rsi + 0x1a0], rcx
jne 0x14016e0fc
mov ecx, dword [rsp + 0x60]
cmp dword [rsi + 0x1a8], ecx
jne 0x14016e0fc
cmp dword [rsi + 0x1ac], ebp
je 0x14016e192
mov rdx, rsi
mov qword [rsi + 0x198], rax
mov r11, qword [rsp + 0x80]
mov qword [rsi + 0x1a0], r11
mov r10d, dword [rsp + 0x60]
mov dword [rsi + 0x1a8], r10d
mov dword [rsi + 0x1ac], ebp
mov r14, qword [rsp + 0x70]
mov byte [rsi + 0x1b0], r14b
mov ecx, dword [rsp + 0x110]
mov r8d, dword [rsp + 0x113]
mov dword [rsi + 0x1b4], r8d
mov dword [rsi + 0x1b1], ecx
mov rcx, qword [rsi + 0xa0]
lea r9, [rsp + 0x160]
mov qword [r9], rax
mov qword [r9 + 8], r11
mov dword [r9 + 0x10], r10d
mov dword [r9 + 0x14], ebp
mov byte [r9 + 0x18], r14b
mov eax, dword [rsp + 0x110]
mov r8d, dword [rsp + 0x113]
mov dword [r9 + 0x1c], r8d
mov dword [r9 + 0x19], eax
mov r8, qword [rsp + 0x58]
call fcn.140195550
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
je 0x14016a1e8
mov rcx, rsi
mov rax, qword [rax + 0x18]
cmp rsi, rax
je 0x14016a1e8
jmp 0x14016e31f
cmp byte [rsp + 0x70], 0
setne dl
test cl, cl
setne cl
cmp dl, cl
je 0x14016e192
jmp 0x14016e0fc
cmp byte [rsi + 0x138], 0
je 0x14016e0a5
mov rcx, qword [rsi + 0xb0]
mov byte [rsp + 0xb0], 1
cmp qword [rcx + 0x10], 0
jne 0x14016e247
mov rcx, qword [rsi + 0xb8]
cmp qword [rcx + 0x10], 0
jne 0x14016e247
cmp r13, rax
jne 0x14016e340
lea r13, [rsi + 0x28]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016e311
cmp qword [rsi + 0x40], 0
setne byte [rsp + 0xb0]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
shl r14, 8
movzx eax, byte [rsp + 0x68]
or rax, r14
lea r9, [rsp + 0x6b0]
mov qword [r9], rax
mov rax, qword [rsp + 0x80]
mov qword [r9 + 8], rax
mov eax, dword [rsp + 0x60]
mov dword [r9 + 0x10], eax
mov dword [r9 + 0x14], ebp
mov rax, qword [rsp + 0x70]
mov byte [r9 + 0x18], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [r9 + 0x19], eax
mov dword [r9 + 0x1c], ecx
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov dl, byte [rsp + 0xb0]
mov byte [rsp + 0x20], dl
lea r13, [rsp + 0x160]
mov rdx, r13
mov r8, qword [rsp + 0x58]
call qword [0x1402f5008]
mov r14, qword [r13]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x80], rax
mov rax, r14
mov qword [rsp + 0x68], r14
shr r14, 8
mov eax, dword [r13 + 0x10]
mov dword [rsp + 0x60], eax
mov ebp, dword [r13 + 0x14]
mov al, byte [r13 + 0x18]
mov qword [rsp + 0x70], rax
mov eax, dword [r13 + 0x19]
mov dword [rsp + 0x110], eax
mov eax, dword [r13 + 0x1c]
mov dword [rsp + 0x113], eax
jmp 0x14016e0a5
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016e231
mov rsi, rax
mov rcx, rax
mov rdx, r13
call fcn.14017c620
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
jne 0x14016e1b7
jmp 0x14016a1e8
mov rax, qword [rsi + 0x10]
mov rax, qword [rax + 0x330]
mov rax, qword [fcn.1401c9410]
lea rcx, [rsp + 0x160]
call qword [0x1402f5008]
mov rax, qword [r13 + 0x30]
lea rcx, [rsp + 0x160]
cmp rax, qword [rcx]
jg 0x14016e21c
jmp 0x14016e247
call fcn.140207060
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.140207060
lea rax, str.vector::erase_first__last__called_with_invalid_range
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, str.__first_____last
mov r8d, 0x6bc
call fcn.140207060
call fcn.140150dc0
mov rax, qword [rbp]
jmp 0x14016b1b2
cmp rsi, rax
jne 0x14016daa1
int3
int3
int3
mov rsi, qword [rax]
mov rax, qword [rax + 8]
lea rcx, [rax + r14]
cmp rcx, 2
jae 0x14016df04
cmp rsi, rax
jne 0x14016df18
int3
cmp rax, rcx
je 0x14016d93b
mov rsi, qword [rax + 0x18]
mov rcx, rsi
mov rdx, qword [rsp + 0x58]
mov r8, r12
call fcn.140173ed0
mov rcx, qword [rsi + 0xa8]
test rcx, rcx
je 0x14016e452
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x58]
call qword [0x1402f5008]
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
jne 0x14016df7c
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
jmp 0x14016a1e8
cmp rax, rcx
je 0x14016d93b
mov rsi, qword [rax + 0x18]
mov rcx, rsi
mov rdx, qword [rsp + 0x58]
mov r8, r12
call fcn.140173ed0
mov rcx, qword [rsi + 0xa8]
test rcx, rcx
je 0x14016e4b6
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x58]
call qword [0x1402f5008]
mov rax, qword [rbx + 0x10]
cmp rax, qword [rbx + 0x18]
jne 0x14016db02
movabs r14, 0xaaaaaaaaaaaaaaaa
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x88]
jmp 0x14016a21e