Function at 0x140115400
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, 0x728
movaps xmmword [rsp + 0x710], xmm6
mov dword [rsp + 0xa0], r9d
mov qword [rsp + 0x60], r8
mov rbp, rdx
mov qword [rsp + 0x58], rcx
mov rax, qword [0x140287028]
xor rax, rsp
mov qword [rsp + 0x708], rax
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rdx + 0x20], rcx
movaps xmm6, xmmword [0x140261350]
movups xmmword [rdx + 0x10], xmm6
movups xmmword [rdx], xmm6
movzx eax, byte [0x140289ce0]
mov byte [rsp + 0x97], al
test al, 0x19
mov qword [rsp + 0xd0], rcx
jne 0x140117fda
xor eax, eax
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xd8], rcx
mov rax, qword [rsp + 0x58]
mov rbx, qword [rax + 0x60]
test rbx, rbx
je 0x140115b10
xor edi, edi
lea r14, [0x140164fa0]
lea r15, [0x1401665e0]
xor r13d, r13d
xchg qword [rbx], r13
test r13, r13
jne 0x140115655
mov rbx, qword [rbx + 0x218]
test rbx, rbx
jne 0x1401154b8
jmp 0x140115b10
jbe 0x140117fcb
mov rbp, rdi
shl rbp, 5
mov eax, dword [rsp + 0x180]
mov dword [r14 + rbp + 0x10], eax
movupd xmm0, xmmword [rsp + 0x170]
movupd xmmword [r14 + rbp], xmm0
mov rsi, qword [rsp + 0x188]
mov rax, qword [0x14028a5a0]
and rax, rsi
cmp rax, qword [0x14028a588]
je 0x1401174a5
add r14, rbp
add r14, 0x18
mov rcx, qword [r14]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
je 0x1401174b2
mov qword [r14], rsi
jmp 0x1401159e1
mov rcx, r12
mov edi, r10d
mov qword [rsp + 0x88], r14
mov r14, r11
call fcn.1400eaf60
mov r11, r14
mov r14, qword [rsp + 0x88]
mov r10d, edi
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
cmp rax, rcx
jne 0x140115911
mov rcx, r12
mov edi, r10d
mov qword [rsp + 0x88], r14
mov r14, r11
call fcn.1400eaf60
mov r11, r14
mov r14, qword [rsp + 0x88]
mov r10d, edi
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
cmp rax, rcx
jne 0x14011591a
mov rcx, r12
mov edi, r10d
mov qword [rsp + 0x88], r14
mov r14, r11
call fcn.1400eaf60
mov r11, r14
mov r14, qword [rsp + 0x88]
mov r10d, edi
jmp 0x14011591a
mov rcx, r12
call fcn.1400ebe70
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
cmp rax, rcx
jne 0x140115a85
mov rcx, r12
call fcn.1400ebe70
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
cmp rax, rcx
jne 0x140115a8e
mov rcx, r12
call fcn.1400ebe70
jmp 0x140115a8e
mov rcx, r12
call fcn.1400eaf60
jmp 0x140115968
call fcn.1400ebe70
jmp 0x140115a56
tzcnt r12, r13
mov rcx, qword [rbx + r12*8 + 0x10]
test rcx, rcx
je 0x140118690
mov eax, 1
lock xadd dword [rcx], eax
test eax, eax
jle 0x140117fd7
mov qword [rsp + 0x68], rcx
mov rsi, qword [rbx + r12*8 + 0x10]
mov rax, qword [rsi + 8]
cmp rax, r14
jne 0x14011685a
mov qword [rsp + 0x70], r12
mov rcx, qword [rsi + 0x28]
call fcn.1400f24c0
mov rax, qword [rsi + 0x20]
mov rcx, qword [rsi + 0x28]
cmp rax, r15
jne 0x14011869f
mov qword [rsp + 0xa8], rcx
mov r12, qword [rcx + 0xb8]
mov r15, qword [r12 + 0x30]
cmp qword [r12 + 8], 0
je 0x140115790
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x6e0], rax
mov rax, qword [0x140288f88]
lea rcx, [0x140171950]
cmp rax, rcx
jne 0x140117b78
mov qword [rsp + 0x170], 0
lea rcx, [rsp + 0x170]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x170]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118734
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov qword [rsp + 0x6e0], rax
cmp rax, qword [r12 + 0x20]
jl 0x140115790
mov rdx, qword [r12 + 0x18]
inc rdx
cmp rdx, 5
mov eax, 4
cmovb rdx, rax
mov rax, qword [r12]
mov rcx, qword [r12 + 0x10]
mov qword [r12 + 0x18], rcx
test rax, rax
je 0x140115790
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x14011577b
cmp rcx, r8
jb 0x1401179a9
lea rsi, [r15 + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401177ea
mov rax, qword [r12]
mov rcx, qword [r15 + 0x28]
mov qword [r12], rcx
mov qword [r15 + 0x28], rax
mov rax, qword [r12 + 8]
mov rcx, qword [r15 + 0x30]
mov qword [r12 + 8], rcx
mov qword [r15 + 0x30], rax
mov rax, qword [r12 + 0x10]
mov rcx, qword [r15 + 0x38]
mov qword [r12 + 0x10], rcx
mov qword [r15 + 0x38], rax
mov rax, qword [r12 + 0x18]
mov rcx, qword [r15 + 0x40]
mov qword [r12 + 0x18], rcx
mov qword [r15 + 0x40], rax
mov rax, qword [r12 + 0x20]
mov rcx, qword [r15 + 0x48]
mov qword [r12 + 0x20], rcx
mov qword [r15 + 0x48], rax
cmp byte [r15 + 0x158], 0
mov qword [rsp + 0x78], rbp
jne 0x1401186b6
mov rax, qword [r15 + 0xb8]
cmp qword [rax + 0x10], 0
sete byte [r15 + 0x50]
cmp qword [r15 + 0xa8], 0
movzx eax, byte [r15 + 0x128]
jne 0x140115845
test al, al
je 0x140117b40
movzx eax, byte [r15 + 0x130]
xor al, 1
mov byte [r15 + 0x51], al
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [r12 + 0x10], 0
je 0x140115acc
mov r15, qword [r12 + 0x28]
test r15, r15
je 0x140115acc
cmp byte [r12 + 0x50], 0
jne 0x1401174d4
mov rcx, qword [r12]
mov rax, qword [rcx + 0x18]
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
inc rcx
cmp rcx, rdx
cmove rcx, rdi
imul rcx, rcx, 0xa8
mov r10d, dword [rax + rcx + 0x78]
mov rdx, qword [rax + rcx + 0x30]
mov r11d, 0
test rdx, rdx
jne 0x14011753b
mov rsi, qword [r12 + 0x38]
cmp rsi, 7
jae 0x140117fc5
mov r14, qword [rax + rcx + 0x90]
mov qword [rsp + 0xb0], rsi
shl rsi, 5
mov rax, qword [r15 + rsi + 0x10]
mov qword [rsp + 0xc0], rax
mov rax, qword [r15 + rsi + 0x18]
mov qword [rsp + 0x80], rax
mov rax, qword [0x14028a5a0]
and rax, r12
mov rcx, qword [0x14028a588]
cmp rax, rcx
je 0x140115548
cmp rax, rcx
je 0x140115586
cmp rax, rcx
je 0x1401155c4
mov qword [rsp + 0x88], r15
add r15, rsi
add r15, 8
mov rdi, qword [r15 + 0x10]
sub rdi, qword [r15 + 8]
jne 0x140117421
xor edi, edi
mov qword [rsp + 0x170], r14
mov qword [rsp + 0x178], r11
mov dword [rsp + 0x180], r10d
mov rax, qword [0x14028a5a0]
and rax, r12
cmp rax, qword [0x14028a588]
je 0x14011563e
mov qword [rsp + 0x188], r12
mov r14, qword [r15 + 8]
mov rbp, qword [r15 + 0x10]
mov rax, rbp
sub rax, r14
sar rax, 5
cmp rax, rdi
jne 0x1401154d8
cmp rbp, qword [r15 + 0x18]
je 0x1401177c0
test rbp, rbp
je 0x140117fce
mov eax, dword [rsp + 0x180]
mov dword [rbp + 0x10], eax
movupd xmm0, xmmword [rsp + 0x170]
movupd xmmword [rbp], xmm0
mov r14, qword [rsp + 0x188]
mov rax, qword [0x14028a5a0]
and rax, r14
cmp rax, qword [0x14028a588]
je 0x14011682c
mov qword [rbp + 0x18], r14
add rbp, 0x20
mov qword [r15 + 0x10], rbp
mov rbp, qword [rsp + 0x78]
lea r14, [0x140164fa0]
mov rax, qword [r15 + 8]
mov rcx, qword [r15 + 0x10]
sub rcx, rax
sar rcx, 5
cmp rcx, rdi
jbe 0x140117fd1
mov rcx, rdi
shl rcx, 5
mov rax, qword [rax + rcx + 0x18]
mov qword [rax + 0x40], rdi
mov rax, qword [r15 + 0x10]
sub rax, qword [r15 + 8]
sar rax, 5
cmp rax, rdi
jbe 0x140117fd4
mov rcx, qword [rsp + 0x188]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
mov edi, 0
mov rsi, qword [rsp + 0x88]
je 0x14011564b
mov qword [rsp + 0x188], 0
mov rax, qword [0x14028a5a0]
and rax, r12
mov rcx, qword [0x14028a588]
cmp rax, rcx
je 0x1401155ed
cmp rax, rcx
je 0x14011560f
cmp rax, rcx
je 0x140115631
mov rax, qword [rsp + 0x80]
cmp qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0xb0]
jne 0x140115acc
mov rax, qword [rsi + 0xe8]
mov r8d, dword [rax + rcx*4 + 0x10]
lea edx, [r8 + 1]
mov dword [rax + rcx*4 + 0x10], edx
test r8d, r8d
jne 0x140115acc
mov edx, 1
shl edx, cl
or qword [rax + 0x30], rdx
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax + 0xa8]
test rcx, rcx
lea r15, [0x1401665e0]
mov r12, qword [rsp + 0x70]
jne 0x14011871b
mov rcx, qword [rsp + 0x68]
lock dec dword [rcx]
je 0x14011762c
btc r13, r12
test r13, r13
je 0x1401154c7
jmp 0x140115655
movzx ebx, byte [0x140289ce0]
test bl, 0x19
jne 0x140118048
xor esi, esi
movabs r15, 0xaaaaaaaaaaaaaaaa
mov rdi, r15
mov r12d, 1
mov r14, qword [rsp + 0x58]
lock xadd qword [r14 + 0x20], r12
mov r13, qword [r14 + 0x3b8]
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
jne 0x140115fdb
mov r13, qword [r14 + 0x3c0]
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
jne 0x14011615a
test bl, 0x19
jne 0x1401180a7
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
mov rcx, qword [rsp + 0x58]
je 0x140115b93
mov rax, qword [rax + 8]
cmp rax, qword [rcx + 0x3d0]
jge 0x1401177b4
lea rdi, [rcx - 8]
lea r13, [0x140171950]
lea r14, [rsp + 0x6e0]
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x140]
test rax, rax
jne 0x140115f03
xor r12d, r12d
test byte [0x140289cf0], 0x19
jne 0x140117f1f
test r12, r12
je 0x140115f89
cmp qword [r12 + 0x28], 0
je 0x140115ec3
mov eax, dword [0x14029cab0]
mov ecx, dword [0x140296f94]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140117974
mov rax, qword [0x14029caa8]
cmp rax, 4
je 0x140118102
cmp rax, 0x18
je 0x14011810c
cmp rax, 0x10
je 0x140118116
mov r8d, 0x548
lea rsi, [rsp + 0x170]
mov rcx, rsi
mov dl, 0xaa
call fcn.140177800
mov qword [rsp + 0x6b8], rsi
mov qword [rsp + 0x6d8], rsi
mov byte [rsp + 0x6b0], 1
mov qword [rsp + 0x6c0], rsi
mov qword [rsp + 0x6c8], rsi
lea rax, [rsp + 0x6b0]
mov qword [rsp + 0x6d0], rax
cmp qword [r12 + 0x10], 0
je 0x14011675f
mov rcx, qword [r12]
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
inc rax
cmp rax, rdx
mov r8d, 0
cmovne r8, rax
mov rbx, qword [rcx + 0x18]
imul rsi, r8, 0xa8
mov rcx, qword [rbx + rsi]
test rcx, rcx
je 0x140115cf7
mov rax, qword [rcx + 0x18]
lea rdx, [0x1401d1e70]
cmp rax, rdx
jne 0x140115cd9
cmp qword [rbx + rsi + 0xa0], 0
je 0x140115e60
jmp 0x140116839
xor edx, edx
call qword [case.0x1401d7990.0]
test al, al
je 0x140115cc5
mov rax, qword [r12]
mov rbx, qword [rax + 0x18]
mov rdx, qword [rax]
mov rax, qword [rax + 8]
inc rax
cmp rax, rdx
mov ecx, 0
cmovne rcx, rax
imul r8, rcx, 0xa8
lea rdx, [rbx + r8]
mov rax, qword [rsp + 0x6c8]
cmp rax, qword [rsp + 0x6d0]
jae 0x14011763b
test rax, rax
je 0x1401180c9
mov r15, rdi
mov rcx, qword [rdx]
mov qword [rax], rcx
xor r9d, r9d
mov qword [rdx], r9
movupd xmm0, xmmword [rdx + 8]
movupd xmm1, xmmword [rdx + 0x18]
movupd xmmword [rax + 0x18], xmm1
movupd xmmword [rax + 8], xmm0
lea rdi, [rax + 0x28]
lea rsi, [rdx + 0x28]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov cl, byte [rdx + 0x7c]
mov byte [rax + 0x7c], cl
mov ecx, dword [rdx + 0x78]
mov dword [rax + 0x78], ecx
mov cl, byte [rbx + r8 + 0x82]
mov byte [rax + 0x82], cl
movzx ecx, word [rbx + r8 + 0x80]
mov word [rax + 0x80], cx
mov rcx, qword [rbx + r8 + 0x88]
mov qword [rax + 0x88], rcx
mov qword [rbx + r8 + 0x88], r9
mov rcx, qword [rbx + r8 + 0x90]
mov qword [rax + 0x90], rcx
mov rcx, qword [rbx + r8 + 0x98]
mov qword [rax + 0x98], rcx
mov qword [rbx + r8 + 0x98], r9
mov rcx, qword [rbx + r8 + 0xa0]
mov qword [rax + 0xa0], rcx
add rax, 0xa8
mov qword [rsp + 0x6c8], rax
mov rax, qword [r12]
mov rcx, qword [rax + 8]
inc rcx
cmp rcx, qword [rax]
mov rsi, qword [rax + 0x18]
mov edx, 0
cmovne rdx, rcx
mov qword [rax + 8], rdx
imul rdi, rdx, 0xa8
mov rcx, qword [rsi + rdi + 0x98]
test rcx, rcx
jne 0x1401167b6
lea rbx, [rsi + rdi]
mov rsi, qword [rsi + rdi + 0x88]
test rsi, rsi
jne 0x1401167c9
mov rcx, qword [rbx]
test rcx, rcx
mov rdi, r15
jne 0x1401168a8
mov rax, qword [r12]
mov rcx, qword [rax + 0x10]
cmp rcx, qword [rax + 8]
je 0x1401163d1
dec qword [r12 + 0x10]
jne 0x140115c86
nop dword [rax]
mov rbx, qword [rsp + 0x6c0]
mov r15, rbx
cmp rbx, qword [rsp + 0x6c8]
jne 0x140116414
test r15, r15
je 0x14011812b
cmp rbx, r15
jne 0x1401166a0
mov r15, rbx
mov rcx, rbx
mov qword [rsp + 0x6c8], r15
mov rax, qword [rsp + 0x6d8]
test rax, rax
je 0x1401177aa
cmp rax, rcx
jne 0x1401177aa
mov byte [rcx + 0x540], 0
cmp r15, rbx
jne 0x140115ba6
cmp qword [r12 + 0x10], 0
je 0x1401181a3
mov rcx, qword [r12]
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
jne 0x1401168f9
jmp 0x1401168ea
mov rcx, qword [rsp + 0x58]
lea rdx, [rcx + 0x238]
tzcnt r8, rax
cmp dword [rsp + 0xa0], 1
mov qword [rsp + 0x68], rdi
je 0x1401184b7
lea r15, [rcx + 0x110]
cmp dword [rcx + 0x328], 3
jge 0x140117830
cmp r8d, 7
jae 0x1401180c3
mov rsi, rbp
mov rbx, r8
shl rbx, 5
mov rbp, qword [rdx + rbx + 0x10]
cmp rbp, qword [rdx + rbx + 0x18]
jne 0x1401162e1
jmp 0x14011638b
cmp dword [r12 + 0x78], 1
je 0x1401173fd
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x328], 0
mov rdi, qword [rsp + 0x68]
jmp 0x140115bbe
mov byte [rbp], 0
xorpd xmm0, xmm0
movupd xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], 0
test byte [rsp + 0x97], 0x19
jne 0x1401180cc
mov rcx, qword [rsp + 0x708]
xor rcx, rsp
call fcn.1401756e0
mov rax, rbp
movaps xmm6, xmmword [rsp + 0x710]
add rsp, 0x728
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp dword [rax + 0x14], 1
je 0x140118133
mov r14, qword [rax]
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
jne 0x1401162cf
mov rax, qword [fcn.140158d50]
lea rcx, [0x140171950]
cmp rax, rcx
jne 0x140117d52
mov qword [rsp + 0x170], 0
lea rcx, [rsp + 0x170]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x170]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1401184db
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx], 0
mov qword [rcx + 8], rax
jne 0x140116063
mov byte [rcx], 1
cmp r14, rax
mov r14, qword [rsp + 0x58]
jg 0x140115b55
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
je 0x140118c81
mov r14, qword [rax + 0x18]
mov rcx, r14
mov rdx, qword [rsp + 0x60]
mov r8, r12
call fcn.14012fa20
mov rcx, qword [r14 + 0xa8]
test rcx, rcx
jne 0x140117de3
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
mov r14, qword [rsp + 0x58]
je 0x140115b55
lea r8, [0x140171950]
lea rcx, [rsp + 0x170]
mov r10, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp dword [rax + 0x14], 1
je 0x140118d43
mov r14, qword [rax]
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
jne 0x140116154
mov rax, qword [fcn.140158d50]
cmp rax, r8
jne 0x140117e2c
mov qword [rsp + 0x170], 0
call r10
mov rax, qword [rsp + 0x170]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118eee
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx], 0
mov qword [rcx + 8], rax
jne 0x14011613e
mov byte [rcx], 1
mov rcx, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
cmp r14, rax
jg 0x14011757e
jmp 0x140117e68
mov rax, qword [rax + 8]
jmp 0x14011613e
cmp dword [rax + 0x14], 1
je 0x14011816b
mov r14, qword [rax]
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
jne 0x1401162d8
mov rax, qword [fcn.140158d50]
lea rcx, [0x140171950]
cmp rax, rcx
jne 0x140117d70
mov qword [rsp + 0x170], 0
lea rcx, [rsp + 0x170]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x170]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118502
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx], 0
mov qword [rcx + 8], rax
jne 0x1401161e2
mov byte [rcx], 1
cmp r14, rax
jg 0x140115b6a
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
je 0x140118c84
mov r14, qword [rax + 0x18]
mov rcx, r14
mov rdx, qword [rsp + 0x60]
mov r8, r12
call fcn.14012fa20
mov rcx, qword [r14 + 0xa8]
test rcx, rcx
jne 0x140117df9
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
je 0x140115b6a
lea r8, [0x140171950]
lea rcx, [rsp + 0x170]
mov r10, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp dword [rax + 0x14], 1
je 0x140118d7d
mov r14, qword [rax]
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
jne 0x1401162c9
mov rax, qword [fcn.140158d50]
cmp rax, r8
jne 0x140117e4a
mov qword [rsp + 0x170], 0
call r10
mov rax, qword [rsp + 0x170]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118f15
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx], 0
mov qword [rcx + 8], rax
jne 0x1401162b3
mov byte [rcx], 1
mov rcx, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
cmp r14, rax
jg 0x1401175c4
jmp 0x140117ec3
mov rax, qword [rax + 8]
jmp 0x1401162b3
mov rax, qword [rax + 8]
jmp 0x140116063
mov rax, qword [rax + 8]
jmp 0x1401161e2
mov r14, r13
mov rdi, qword [rbp + 0x18]
mov rax, qword [0x14028a5a0]
and rax, rdi
cmp rax, qword [0x14028a588]
je 0x140116772
mov r13, qword [r15 + rbx + 0x48]
mov r12, rdi
cmp r13, qword [r15 + rbx + 0x50]
je 0x140116361
mov rbx, qword [rbp]
mov r12, qword [rbp + 8]
mov ebp, dword [rbp + 0x10]
mov r15, qword [r13 + 0x18]
mov rax, qword [0x14028a5a0]
and rax, r15
cmp rax, qword [0x14028a588]
je 0x140116868
cmp rbx, qword [r13]
je 0x1401188b5
setb al
test al, al
mov r12, r15
cmovne r12, rdi
mov rax, qword [0x14028a5a0]
and rax, r15
cmp rax, qword [0x14028a588]
je 0x14011688f
mov rax, qword [0x14028a5a0]
and rax, rdi
cmp rax, qword [0x14028a588]
je 0x14011678b
mov rbp, rsi
mov r13, r14
lea r14, [rsp + 0x6e0]
jmp 0x140115f64
mov rax, qword [r15 + rbx + 0x48]
cmp rax, qword [r15 + rbx + 0x50]
mov rbp, rsi
je 0x14011640c
mov r12, qword [rax + 0x18]
mov rax, qword [0x14028a5a0]
and rax, r12
mov rcx, qword [0x14028a588]
cmp rax, rcx
je 0x1401168c0
cmp rax, rcx
jne 0x140115f64
mov rbx, r8
mov qword [rsp + 0x70], rdx
mov rdi, r12
jmp 0x1401167a1
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x140115e51
mov qword [rax + 0x20], 0
mov rsi, qword [r12]
mov qword [r12], rcx
test rsi, rsi
je 0x140115e51
mov rcx, rsi
call fcn.140017270
mov rcx, rsi
call fcn.140172a44
jmp 0x140115e51
xor r12d, r12d
jmp 0x140115f64
cmp qword [r12 + 0x10], 0
jne 0x140116669
cmp dword [r12 + 0x78], 0
jne 0x1401165a8
mov rbx, qword [r12 + 0x30]
cmp qword [r12 + 8], 0
je 0x1401164f2
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x140], rax
mov rax, qword [0x140288f88]
cmp rax, r13
jne 0x140117da7
mov qword [rsp + 0x6e0], 0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6e0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118b38
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov qword [rsp + 0x140], rax
cmp rax, qword [r12 + 0x20]
jl 0x1401164f2
mov rdx, qword [r12 + 0x18]
inc rdx
cmp rdx, 5
mov eax, 4
cmovb rdx, rax
mov rax, qword [r12]
mov rcx, qword [r12 + 0x10]
mov qword [r12 + 0x18], rcx
test rax, rax
je 0x1401164f2
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x1401164dd
cmp rcx, r8
jb 0x140117adb
lea rsi, [rbx + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140117946
mov rax, qword [r12]
mov rcx, qword [rbx + 0x28]
mov qword [r12], rcx
mov qword [rbx + 0x28], rax
mov rax, qword [r12 + 8]
mov rcx, qword [rbx + 0x30]
mov qword [r12 + 8], rcx
mov qword [rbx + 0x30], rax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rbx + 0x38]
mov qword [r12 + 0x10], rcx
mov qword [rbx + 0x38], rax
mov rax, qword [r12 + 0x18]
mov rcx, qword [rbx + 0x40]
mov qword [r12 + 0x18], rcx
mov qword [rbx + 0x40], rax
mov rax, qword [r12 + 0x20]
mov rcx, qword [rbx + 0x48]
mov qword [r12 + 0x20], rcx
mov qword [rbx + 0x48], rax
cmp byte [rbx + 0x158], 0
jne 0x140118aa7
mov rax, qword [rbx + 0xb8]
cmp qword [rax + 0x10], 0
sete byte [rbx + 0x50]
cmp qword [rbx + 0xa8], 0
mov al, byte [rbx + 0x128]
jne 0x14011659c
test al, al
je 0x140117b91
mov al, byte [rbx + 0x130]
xor al, 1
mov byte [rbx + 0x51], al
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [r12 + 8], 0
je 0x140116669
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x140], rax
mov rax, qword [0x140288f88]
cmp rax, r13
jne 0x140117d8e
mov qword [rsp + 0x6e0], 0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6e0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118b11
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov qword [rsp + 0x140], rax
cmp rax, qword [r12 + 0x20]
jl 0x140116669
mov rdx, qword [r12 + 0x18]
inc rdx
cmp rdx, 5
mov eax, 4
cmovb rdx, rax
mov rax, qword [r12]
mov rcx, qword [r12 + 0x10]
mov qword [r12 + 0x18], rcx
test rax, rax
je 0x140116669
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x140116654
cmp rcx, r8
jb 0x140117aa8
cmp qword [r12 + 0x40], 0xffffffffffffffff
je 0x14011667e
mov rcx, qword [r12 + 0x28]
mov rdx, r12
call fcn.1400ed090
test byte [0x140289ce0], 9
jne 0x140118916
mov r15, qword [rsp + 0x6c0]
mov rbx, qword [rsp + 0x6c8]
jmp 0x140115e79
mov qword [rsp + 0x68], rdi
mov rdi, r14
mov r14, r13
mov r13, rbx
mov rcx, qword [r13 - 0x10]
test rcx, rcx
jne 0x1401166de
mov rsi, qword [r13 - 0x20]
test rsi, rsi
jne 0x1401166e8
mov rcx, qword [r13 - 0xa8]
add r13, 0xffffffffffffff58
test rcx, rcx
jne 0x1401174bc
cmp r13, r15
je 0x140116747
jmp 0x1401166ae
lock dec dword [rcx]
jne 0x1401166b7
jmp 0x140117793
lock dec dword [rsi + 8]
jne 0x1401166c0
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1401d6b00]
cmp qword [rcx + 0x10], rdx
jne 0x140117b47
lea rcx, [0x1401ed3e0]
cmp rax, rcx
jne 0x140117b47
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x140116728
lock dec dword [rcx]
je 0x140117e19
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x14011673a
lock dec dword [rax]
je 0x140117a62
mov rcx, rsi
call fcn.140172a44
jmp 0x1401166c0
mov rcx, qword [rsp + 0x6c0]
mov r13, r14
mov r14, rdi
mov rdi, qword [rsp + 0x68]
jmp 0x140115e91
lea rcx, [rsp + 0x170]
mov rbx, rcx
mov r15, rcx
jmp 0x140115e91
mov rcx, rdi
mov r12, rdx
mov r13, r8
call fcn.1400eaf60
mov r8, r13
mov rdx, r12
jmp 0x1401162ff
mov rbx, r8
mov qword [rsp + 0x70], rdx
mov rbp, rsi
mov r13, r14
lea r14, [rsp + 0x6e0]
mov rcx, rdi
call fcn.1400ebe70
mov rdx, qword [rsp + 0x70]
mov r8, rbx
jmp 0x140115f64
lock dec dword [rcx]
jne 0x140115e1b
call fcn.140172a44
jmp 0x140115e1b
lock dec dword [rsi + 8]
jne 0x140115e30
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1401d6b00]
cmp qword [rcx + 0x10], rdx
jne 0x140117a1d
lea rcx, [0x1401ed3e0]
cmp rax, rcx
jne 0x140117a1d
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x14011680d
lock dec dword [rcx]
je 0x140117e0f
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14011681f
lock dec dword [rdi]
je 0x1401179dc
mov rcx, rsi
call fcn.140172a44
jmp 0x140115e30
mov rcx, r14
call fcn.1400eaf60
jmp 0x1401159d5
mov rax, qword [rbx + rsi + 0x98]
test rax, rax
je 0x140115ce5
mov al, byte [rax + 4]
test al, al
je 0x140115e60
jmp 0x140115ce5
mov rcx, rsi
call qword [case.0x1401d7990.0]
jmp 0x140115af0
mov rcx, r15
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0xa8], r8
call fcn.1400eaf60
mov r8, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x70]
jmp 0x140116334
mov rcx, r15
mov rbx, rdx
mov r15, r8
call fcn.1400ebe70
mov r8, r15
mov rdx, rbx
jmp 0x140116361
lock dec dword [rcx]
jne 0x140115e3f
mov rax, qword [rcx + 0x10]
call qword [case.0x1401d7990.0]
jmp 0x140115e3f
mov rcx, r12
mov rsi, rdx
mov rdi, r8
call fcn.1400eaf60
mov r8, rdi
mov rdx, rsi
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
jmp 0x1401163b8
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x70], 0
jg 0x140117b98
mov r15, qword [r12 + 0x30]
cmp qword [r15 + 0x180], 0
jne 0x14011720c
cmp qword [r15 + 0x188], 0
jne 0x14011720c
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x70], 0
jne 0x140116933
cmp qword [rax + 0x398], 0
jne 0x14011720c
mov dword [rsp + 0xa0], 0
mov dword [rsp + 0x68], 0
xorpd xmm0, xmm0
movupd xmmword [rsp + 0x152], xmm0
movupd xmmword [rsp + 0x142], xmm0
movaps xmmword [rsp + 0x1c0], xmm6
mov rcx, qword [r12]
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 + 0x70], r8
mov qword [rcx + rdx], 0
movups xmm0, xmmword [rcx + rdx + 0x18]
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rcx + rdx + 8]
movaps xmmword [rsp + 0xf0], xmm0
mov r8, qword [rcx + rdx + 0x75]
mov qword [rsp + 0x1bd], r8
movups xmm0, xmmword [rcx + rdx + 0x68]
movaps xmmword [rsp + 0x1b0], 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 + 0x1a0], xmm3
movaps xmmword [rsp + 0x190], xmm2
movapd xmmword [rsp + 0x180], xmm1
movapd xmmword [rsp + 0x170], xmm0
movzx r8d, byte [rcx + rdx + 0x82]
mov byte [rsp + 0x1ca], r8b
movzx r8d, word [rcx + rdx + 0x80]
mov word [rsp + 0x1c8], r8w
mov r8, qword [rcx + rdx + 0x88]
mov qword [rsp + 0xa8], r8
mov r8, qword [rcx + rdx + 0x90]
mov qword [rsp + 0x88], r8
mov qword [rcx + rdx + 0x88], 0
mov r8, qword [rcx + rdx + 0x98]
mov qword [rsp + 0xb0], r8
mov qword [rcx + rdx + 0x98], 0
mov rcx, qword [rcx + rdx + 0xa0]
mov qword [rsp + 0xc0], rcx
mov rcx, qword [r12]
mov rdx, qword [rcx + 8]
mov rsi, qword [rcx + 0x18]
inc rdx
cmp rdx, qword [rcx]
cmove rdx, rax
mov qword [rcx + 8], rdx
imul rdi, rdx, 0xa8
mov rcx, qword [rsi + rdi + 0x98]
test rcx, rcx
jne 0x1401172a2
lea rbx, [rsi + rdi]
mov rsi, qword [rsi + rdi + 0x88]
test rsi, rsi
jne 0x1401172b5
mov rcx, qword [rbx]
test rcx, rcx
jne 0x1401173df
mov rax, qword [r12]
mov rcx, qword [rax + 0x10]
cmp rcx, qword [rax + 8]
jne 0x140116ae9
mov rcx, qword [rax + 0x20]
test rcx, rcx
jne 0x1401175fe
dec qword [r12 + 0x10]
jne 0x140116d49
cmp dword [r12 + 0x78], 0
jne 0x140116c83
mov rbx, qword [r12 + 0x30]
cmp qword [r12 + 8], 0
je 0x140116bcb
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x118], rax
mov rax, qword [0x140288f88]
cmp rax, r13
jne 0x140117b27
mov qword [rsp + 0x6e0], 0
lea rcx, [rsp + 0x6e0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6e0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140118490
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov qword [rsp + 0x118], rax
cmp rax, qword [r12 + 0x20]
jl 0x140116bcb
mov rax, qword [r12 + 0x18]
inc rax
cmp rax, 5
mov edx, 4
cmovae rdx, rax
mov rax, qword [r12]
mov rcx, qword [r12 + 0x10]
mov qword [r12 + 0x18], rcx
test rax, rax
je 0x140116bcb
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x140116bb6
cmp rcx, r8
jb 0x140117900
lea rsi, [rbx + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14011779d
mov rax, qword [r12]
mov rcx, qword [rbx + 0x28]
mov qword [r12], rcx
mov qword [rbx + 0x28], rax
mov rax, qword [r12 + 8]
mov rcx, qword [rbx + 0x30]
mov qword [r12 + 8], rcx
mov qword [rbx + 0x30], rax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rbx + 0x38]
mov qword [r12 + 0x10], rcx
mov qword [rbx + 0x38], rax
mov rax, qword [r12 + 0x18]
mov rcx, qword [rbx + 0x40]
mov qword [r12 + 0x18], rcx
mov qword [rbx + 0x40], rax
mov rax, qword [r12 + 0x20]
mov rcx, qword [rbx + 0x48]
mov qword [r12 + 0x20], rcx
mov qword [rbx + 0x48], rax
cmp byte [rbx + 0x158], 0
jne 0x1401183e2
mov rax, qword [rbx + 0xb8]
cmp qword [rax + 0x10], 0
sete byte [rbx + 0x50]
cmp qword [rbx + 0xa8], 0
movzx eax, byte [rbx + 0x128]
jne 0x140116c77
test al, al
je 0x140117a30
movzx eax, byte [rbx + 0x130]
xor al, 1
mov byte [rbx + 0x51], al
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [r12 + 8], 0
je 0x140116d49
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x118], rax
mov rax, qword [0x140288f88]
cmp rax, r13
jne 0x140117b0e
mov qword [rsp + 0x6e0], 0
lea rcx, [rsp + 0x6e0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x6e0]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14011844d
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov qword [rsp + 0x118], rax
cmp rax, qword [r12 + 0x20]
jl 0x140116d49
mov rax, qword [r12 + 0x18]
inc rax
cmp rax, 5
mov edx, 4
cmovae rdx, rax
mov rax, qword [r12]
mov rcx, qword [r12 + 0x10]
mov qword [r12 + 0x18], rcx
test rax, rax
je 0x140116d49
lea rcx, [rdx + 0x10]
xor r8d, r8d
add r8, qword [rax]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x140116d34
cmp rcx, r8
jb 0x1401178cd
mov qword [rsp + 0x78], rbp
mov rcx, qword [r12 + 0x28]
mov rdx, r12
call fcn.14011a8f0
test byte [0x140289ce0], 9
jne 0x1401181aa
mov rax, qword [rsp + 0x58]
mov rbx, qword [rax + 0x430]
mov rsi, qword [rax + 0x438]
mov rdi, rsi
sub rdi, rbx
sar rdi, 3
mov r12, rsi
sub r12, rbx
je 0x140117650
lea rcx, [rdi + r12*2]
dec rcx
mov rdx, qword [rsp + 0x58]
mov rax, qword [rdx + 0x448]
mov rdx, qword [rdx + 0x450]
add rdx, rax
cmp rcx, rdx
je 0x140117657
mov r14, r13
mov rbp, qword [rsp + 0x78]
cmp rsi, rbx
mov r11, qword [rsp + 0x58]
je 0x1401180ff
mov rcx, qword [r11 + 0x448]
add rcx, qword [r11 + 0x450]
movabs r8, 0xf0f0f0f0f0f0f0f1
mov rax, rcx
mul r8
mov r9, rdx
shr r9, 4
mov rax, qword [rbx + r9*8]
and rdx, 0xfffffffffffffff0
add rdx, r9
sub rcx, rdx
imul rcx, rcx, 0xe8
mov rdx, rax
add rdx, rcx
je 0x1401180ff
lea r9, [rsp + 0x1c8]
mov r10, qword [rsp + 0x70]
mov qword [rdx], r10
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movups xmmword [rdx + 0x18], xmm1
movups xmmword [rdx + 8], xmm0
movaps xmm0, xmmword [rsp + 0x170]
movaps xmm1, xmmword [rsp + 0x180]
movaps xmm2, xmmword [rsp + 0x190]
movaps xmm3, xmmword [rsp + 0x1a0]
movups xmmword [rdx + 0x28], xmm0
movups xmmword [rdx + 0x38], xmm1
movups xmmword [rdx + 0x48], xmm2
movups xmmword [rdx + 0x58], xmm3
movaps xmm0, xmmword [rsp + 0x1b0]
movups xmmword [rdx + 0x68], xmm0
mov r10, qword [rsp + 0x1bd]
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 + 0xa8]
mov qword [rdx + 0x88], r9
mov r9, qword [rsp + 0x88]
mov qword [rdx + 0x90], r9
mov r9, qword [rsp + 0xb0]
mov qword [rdx + 0x98], r9
mov r9, qword [rsp + 0xc0]
mov qword [rdx + 0xa0], r9
mov qword [rax + rcx + 0xa8], r15
mov r9d, dword [r15]
mov dword [rax + rcx + 0xb0], r9d
mov dword [rax + rcx + 0xb8], 0
mov r9d, dword [rsp + 0xa0]
mov byte [rax + rcx + 0xbc], r9b
mov r9d, dword [rsp + 0x68]
mov byte [rax + rcx + 0xbd], r9b
movupd xmm0, xmmword [rsp + 0x140]
movupd xmm1, xmmword [rsp + 0x150]
movupd xmmword [rax + rcx + 0xbe], xmm0
movupd xmmword [rax + rcx + 0xce], xmm1
movzx r9d, word [rsp + 0x160]
mov word [rax + rcx + 0xde], r9w
mov r9, qword [r15 + 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 [r11 + 0x450]
inc rcx
mov qword [r11 + 0x450], rcx
add rcx, qword [r11 + 0x448]
mov r9, qword [r11 + 0x430]
mov rax, rcx
mul r8
mov rax, rdx
shr rax, 4
mov r8, qword [r9 + rax*8]
cmp qword [r11 + 0x438], r9
je 0x1401177e2
and rdx, 0xfffffffffffffff0
add rdx, rax
sub rcx, rdx
imul r15, rcx, 0xe8
add r15, r8
cmp r15, r8
je 0x1401182f1
movzx r12d, byte [0x140289ce0]
test r12b, 0x19
jne 0x140118301
xor eax, eax
mov qword [rsp + 0x70], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0xa8], 0
je 0x140117095
mov rdx, qword [r15 - 0xa0]
mov rax, qword [rsp + 0x58]
add rax, 0xeb
lea rcx, str.0123456789ABCDEF
mov r8, rdx
nop word cs:[rax + rax]
mov r9d, edx
and r9d, 0xf
movzx r9d, byte [r9 + rcx]
mov byte [rax + 3], r9b
shr r8, 4
dec rax
cmp rdx, 0xf
mov rdx, r8
ja 0x140117030
mov byte [rax + 3], pe_nt_image_headers64
mov word [rax + 1], 0x3020
mov rdx, qword [r15 - 0xc8]
mov r8, rdx
nop word cs:[rax + rax]
mov r9d, edx
and r9d, 0xf
movzx r9d, byte [r9 + rcx]
mov byte [rax], r9b
dec rax
shr r8, 4
cmp rdx, 0xf
mov rdx, r8
ja 0x140117070
mov word [rax - 1], 0x7830
mov rax, qword [r15 - 0x40]
cmp byte [rax + 0x200], 0
jne 0x140117318
cmp qword [rax + 0x180], 0
jne 0x140117336
cmp qword [rax + 0x188], 0
jne 0x140117336
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x70], 0
jne 0x1401170db
cmp qword [rax + 0x398], 0
jne 0x140117336
xor ebx, ebx
lea r14, [r15 - 0xe8]
mov rax, qword [r15 - 0x40]
cmp byte [rax + 0x201], 0
je 0x14011929a
mov r13, qword [r15 - 0x58]
mov r10, qword [rax + 0x178]
movzx esi, byte [0x140289ce0]
test sil, 0x19
jne 0x140118364
xor eax, eax
mov qword [rsp + 0xb0], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x80], rax
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx + 0x338]
cmp rax, qword [rcx + 0x340]
je 0x140119268
mov rdx, qword [rsp + 0x58]
lea rax, [rdx + 0x338]
mov qword [rsp + 0x180], rax
lea rax, [rdx + 0x350]
mov qword [rsp + 0x178], rax
mov rax, qword [rdx + 0x350]
mov qword [rsp + 0x170], rax
lea rcx, [rsp + 0x170]
mov qword [rax + 8], rcx
mov qword [rdx + 0x350], rcx
mov qword [rsp + 0x188], 0
mov rcx, 0xffffffffffffffff
cmp dword [rdx + 0x368], 0
jne 0x140118474
mov qword [rsp + 0x190], rcx
mov rdi, qword [rsp + 0x180]
mov rdx, qword [rdi + 8]
sub rdx, qword [rdi]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
xor eax, eax
test rdx, rdx
je 0x1401171fe
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x14011856b
cmp qword [r8 + rax*8], 0
je 0x14011856e
test rdi, rdi
jne 0x140119152
jmp 0x140119268
mov r8, qword [rsp + 0x58]
movsd xmm0, qword [r8 + 0x48]
xorpd xmm1, xmm1
ucomisd xmm0, xmm1
jbe 0x14011875b
cmp byte [r8 + 0xf0], 0
je 0x140117539
mov al, 1
mov dword [rsp + 0xa0], eax
mov rax, qword [r8 + 0xf8]
mov rcx, qword [r8 + 0x100]
mov qword [r8 + 0xf8], 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 [r8 + 0x100], rdx
add rdx, rcx
shr rdx, 0xb
xorps xmm1, xmm1
cvtsi2sd xmm1, rdx
mulsd xmm1, qword [0x140265de8]
ucomisd xmm0, xmm1
seta al
mov dword [rsp + 0x68], eax
mov r15, qword [r12 + 0x30]
jmp 0x140116946
lock dec dword [rcx]
jne 0x140116aad
call fcn.140172a44
jmp 0x140116aad
lock dec dword [rsi + 8]
jne 0x140116ac2
mov rcx, qword [rsi]
mov rax, qword [rcx + 8]
lea rdx, [0x1401d6b00]
cmp qword [rcx + 0x10], rdx
jne 0x140117933
lea rcx, [0x1401ed3e0]
cmp rax, rcx
jne 0x140117933
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1401172f9
lock dec dword [rcx]
je 0x140117dd9
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14011730b
lock dec dword [rdi]
je 0x1401177f7
mov rcx, rsi
call fcn.140172a44
jmp 0x140116ac2
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x420], 1
mov rax, qword [r15 - 0x40]
cmp qword [rax + 0x180], 0
je 0x1401170b4
mov dword [r15 - 0x30], 1
cmp byte [r15 - 0x2c], 0
je 0x1401173b6
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
jne 0x1401173f7
mov rax, qword [fcn.140158d50]
cmp rax, r14
jne 0x140117dc0
lea rsi, [rsp + 0x170]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1401188c7
imul rax, rax, 0xf4240
cqo
idiv qword [0x14029b670]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx], 0
mov qword [rcx + 8], rax
jne 0x1401173b2
mov byte [rcx], 1
mov qword [r15 - 0x28], rax
mov bl, 1
cmp byte [r15 - 0x2b], 0
je 0x1401170dd
lea rsi, [rsp + 0x170]
mov rcx, rsi
call fcn.1400efbc0
mov rax, qword [rsi]
mov qword [r15 - 0x18], rax
jmp 0x1401170dd
lock dec dword [rcx]
jne 0x140116ace
mov rax, qword [rcx + 0x10]
call qword [case.0x1401d7990.0]
jmp 0x140116ace
mov rax, qword [rax + 8]
jmp 0x1401173b2
shl r8, 5
mov rax, qword [rdx + r8 + 0x10]
cmp rax, qword [rdx + r8 + 0x18]
je 0x140115f70
mov rax, qword [rsp + 0x58]
inc dword [rax + 0x328]
jmp 0x140115f7f
sar rdi, 5
mov r8, rdi
lea rdx, [rdi - 1]
mov rdi, rdx
shr rdi, 1
mov rax, qword [r15 + 8]
mov rcx, qword [r15 + 0x10]
sub rcx, rax
sar rcx, 5
cmp rcx, rdi
jbe 0x140117fc8
mov rcx, rdi
shl rcx, 5
cmp qword [rax + rcx], r14
je 0x140117953
jbe 0x14011796c
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xb8], r11
mov dword [rsp + 0x98], r10d
mov rcx, r15
mov rdx, rdi
call 0x14000a970
mov r11, qword [rsp + 0xb8]
mov r10d, dword [rsp + 0x98]
cmp qword [rsp + 0xe8], 1
jbe 0x140115939
jmp 0x140117425
mov rcx, rsi
call fcn.1400eaf60
jmp 0x14011551f
call fcn.1400ebe70
jmp 0x140115540
lock dec dword [rcx]
jne 0x1401166d7
mov rax, qword [rcx + 0x10]
call qword [case.0x1401d7990.0]
jmp 0x1401166d7
mov rax, qword [r12]
mov rcx, qword [rax + 8]
inc rcx
xor edx, edx
cmp rcx, qword [rax]
cmovne rdx, rcx
imul rcx, rdx, 0xa8
add rcx, qword [rax + 0x18]
lea rdx, [rsp + 0x170]
call fcn.14013b880
cmp byte [r12 + 0x50], 0
je 0x140117539
mov r8, qword [r12 + 0x58]
cmp qword [rsp + 0x170], r8
je 0x140118ca3
jae 0x140115acc
cmp qword [r12 + 0x10], 0
jne 0x140118cce
cmp qword [r12 + 0x38], 7
jae 0x140117fc5
ud2
lea r9, [rax + rcx]
cmp dword [r9 + 0x40], 0
jne 0x140117576
movabs r8, 0x8000000000000001
mov r11, qword [r9 + 0x38]
lea r9, [r11 + r8]
cmp r9, 2
jb 0x140118d2a
lea r8, [rdx + r11]
sar r8, 0x3f
btc r8, 0x3f
add rdx, r11
cmovo rdx, r8
mov r11, rdx
jmp 0x1401158b1
cmp rcx, rdx
mov r14, qword [rsp + 0x58]
je 0x140115b55
mov rcx, qword [rcx + 0x18]
mov qword [rsp + 0x68], rcx
mov rdx, qword [rsp + 0x60]
call fcn.1401301e0
mov rcx, qword [rsp + 0x68]
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
je 0x140115b55
mov rdx, rcx
mov rcx, qword [rax + 0x18]
cmp rdx, rcx
je 0x140115b55
jmp 0x140117590
cmp rcx, rdx
je 0x140115b6a
mov r12, qword [rcx + 0x18]
mov rcx, r12
mov rdx, qword [rsp + 0x60]
call fcn.1401301e0
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
je 0x140115b6a
mov rcx, r12
mov r12, qword [rax + 0x18]
cmp rcx, r12
je 0x140115b6a
jmp 0x1401175d1
mov qword [rax + 0x20], 0
mov rsi, qword [r12]
mov qword [r12], rcx
test rsi, rsi
je 0x140116ae9
mov rcx, rsi
call fcn.140017270
mov rcx, rsi
call fcn.140172a44
jmp 0x140116ae9
mov rax, qword [rcx + 0x10]
call qword [case.0x1401d7990.0]
jmp 0x140115afe
mov r15, rdi
lea rcx, [rsp + 0x6c0]
call fcn.1400ef340
jmp 0x140115de4
xor ecx, ecx
jmp 0x140116d98
mov r8, qword [rsp + 0x58]
lea rbp, [r8 + 0x428]
cmp rax, 0x11
jae 0x140118dbd
mov rdx, qword [r8 + 0x428]
mov rcx, qword [r8 + 0x440]
mov rax, rcx
sub rax, rdx
cmp r12, rax
jb 0x140118df3
sar rax, 2
cmp rcx, rdx
mov ebp, 1
cmovne rbp, rax
lea rax, [r8 + 0x448]
mov qword [rsp + 0x700], rax
mov rax, rbp
shr rax, 0x3d
jne 0x140119023
lea rcx, [rbp*8]
call fcn.140172a4c
mov qword [rsp + 0x6e0], rax
lea r14, [rax + rdi*8]
mov qword [rsp + 0x6e8], r14
mov qword [rsp + 0x80], rax
lea rax, [rax + rbp*8]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x6f8], rax
mov ecx, 0xf68
call fcn.140172a4c
cmp rdi, rbp
je 0x140118e43
mov rbp, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
test r14, r14
je 0x140118e85
mov qword [r14], rax
lea rax, [r14 + 8]
mov qword [rsp + 0x6f0], rax
mov rdx, qword [rsp + 0x58]
mov rdi, qword [rdx + 0x438]
cmp rdi, qword [rdx + 0x430]
jne 0x140118e88
mov rcx, qword [rdx + 0x428]
mov qword [rdx + 0x428], r12
mov qword [rdx + 0x430], r14
mov qword [rdx + 0x438], rax
mov rax, qword [rsp + 0x98]
mov qword [rdx + 0x440], rax
test rcx, rcx
jne 0x140118ee4
mov r14, r13
mov rax, qword [rsp + 0x58]
mov rbx, qword [rax + 0x430]
mov rsi, qword [rax + 0x438]
jmp 0x140116dbf
call fcn.140172a44
jmp 0x1401166b7
mov rcx, rsi
call fcn.1400ec2e0
jmp 0x140116be0
call fcn.140172a44
jmp 0x140115eba
mov byte [rcx + 0x3c8], 1
jmp 0x140115b93
mov rax, qword [rsp + 0x88]
lea rcx, [rax + rsi]
add rcx, 0x10
lea rdx, [rsp + 0x170]
call fcn.14000ab30
jmp 0x1401159e1
xor r15d, r15d
jmp 0x140116fbb
mov rcx, rsi
call fcn.1400ec2e0
jmp 0x1401157a5
mov rcx, qword [rdi + 0x20]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
je 0x140119028
mov qword [rdi + 0x20], 0
lea rcx, [rdi + 8]
call fcn.14000b2f0
mov rcx, rdi
call fcn.140172a44
jmp 0x14011730b
cmp r8d, 7
jae 0x1401180c6
mov rdi, r8
shl rdi, 5
mov rax, qword [rdx + rdi + 0x10]
cmp rax, qword [rdx + rdi + 0x18]
je 0x140117889
mov rbx, r8
mov rsi, rdx
mov r12, qword [rax + 0x18]
mov rax, qword [0x14028a5a0]
and rax, r12
mov rcx, qword [0x14028a588]
cmp rax, rcx
je 0x140117a37
cmp rax, rcx
je 0x140117a55
test r12, r12
mov rdx, rsi
mov r8, rbx
jne 0x140115f64
mov qword [rsp + 0x70], rdx
mov rbx, r8
mov rax, qword [r15 + rdi + 0x48]
cmp rax, qword [r15 + rdi + 0x50]
je 0x140117a15
mov r12, qword [rax + 0x18]
mov rax, qword [0x14028a5a0]
and rax, r12
mov rcx, qword [0x14028a588]
cmp rax, rcx
je 0x140117b5a
cmp rax, rcx
jne 0x1401167a9
jmp 0x1401163c9
mov rcx, r12
call fcn.14000a600
mov rax, qword [rsp + 0x118]
mov ecx, 0x4c4b40
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov qword [r12 + 0x20], rcx
jmp 0x140116d49
mov rcx, r12
call fcn.14000a600
mov rax, qword [rsp + 0x118]
mov ecx, 0x4c4b40
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov qword [r12 + 0x20], rcx
jmp 0x140116bcb
mov rcx, rsi
mov edx, 1
call qword [case.0x1401d7990.0]
jmp 0x140116ac2
mov rcx, rsi
call fcn.1400ec2e0
jmp 0x140116507
add rax, rcx
mov rcx, r11
cmp qword [rax + 8], r11
je 0x140117e23
mov r11, rcx
jg 0x140117461
mov rdi, r8
jmp 0x140115939
lea rcx, [0x14029cab0]
call fcn.140172b08
cmp dword [0x14029cab0], 0xffffffff
jne 0x140115c05
mov qword [0x14029caa8], 8
lea rcx, [0x14029cab0]
call fcn.140172aa8
jmp 0x140115c05
mov rcx, r12
call fcn.14000a600
mov rax, qword [rsp + 0x6e0]
mov ecx, 0x4c4b40
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov qword [r12 + 0x20], rcx
jmp 0x140115790
mov rcx, qword [rdi + 0x20]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
je 0x1401190ae
mov qword [rdi + 0x20], 0
lea rcx, [rdi + 8]
call fcn.14000b2f0
mov rcx, rdi
call fcn.140172a44
jmp 0x14011681f
xor r12d, r12d
jmp 0x1401167a9
mov rcx, rsi
mov edx, 1
call qword [case.0x1401d7990.0]
jmp 0x140115e30
xor eax, eax
jmp 0x140116c77
mov rcx, r12
call fcn.1400eaf60
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
jmp 0x140117871
mov rcx, r12
call fcn.1400ebe70
jmp 0x14011787a
mov qword [rsp + 0x78], rbp
mov rbp, rax
mov rcx, qword [rax + 0x20]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
je 0x1401190b8
mov qword [rbp + 0x20], 0
lea rcx, [rbp + 8]
call fcn.14000b2f0
mov rcx, rbp
call fcn.140172a44
mov rbp, qword [rsp + 0x78]
jmp 0x14011673a
mov rcx, r12
call fcn.14000a600
mov rax, qword [rsp + 0x140]
mov ecx, 0x4c4b40
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov qword [r12 + 0x20], rcx
jmp 0x140116669
mov rcx, r12
call fcn.14000a600
mov rax, qword [rsp + 0x140]
mov ecx, 0x4c4b40
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
mov qword [r12 + 0x20], rcx
jmp 0x1401164f2
lea rsi, [rsp + 0x118]
mov rcx, rsi
call qword [case.0x1401d7990.0]
mov rax, qword [rsi]
jmp 0x140116cfe
lea rsi, [rsp + 0x118]
mov rcx, rsi
call qword [case.0x1401d7990.0]
mov rax, qword [rsi]
jmp 0x140116b80
xor eax, eax
jmp 0x140115845
mov rcx, rsi
mov edx, 1
call qword [case.0x1401d7990.0]
jmp 0x1401166c0
mov rcx, r12
call fcn.1400eaf60
mov rcx, qword [0x14028a588]
mov rax, qword [0x14028a5a0]
and rax, r12
jmp 0x1401178bf
lea rsi, [rsp + 0x6e0]
mov rcx, rsi
call qword [case.0x1401d7990.0]
mov rax, qword [rsi]
jmp 0x140115745
xor eax, eax
jmp 0x14011659c
mov rbx, rdi
lea rsi, [rsp + 0x170]
mov r8d, 0xb8
mov rcx, rsi
mov dl, 0xaa
call fcn.140177800
mov rcx, r12
mov rdx, rsi
call fcn.14011a070
mov rax, qword [r12 + 0x30]
mov qword [rsi + 0xa8], rax
mov eax, dword [r12 + 0x78]
mov dword [rsi + 0xb0], eax
mov rax, qword [rsp + 0x58]
mov r8, qword [rax + 0x88]
mov rax, qword [rax + 0x90]
mov rdx, rax
sub rdx, r8
jb 0x1401190cf
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x80]
inc rdx
xor r8d, r8d
mov r9, rcx
sub r9, 1
cmovae r8, r9
cmp r8, rdx
jae 0x140117c50
mov rsi, qword [rsp + 0x58]
lea rcx, [rsi + 0x78]
mov rax, r8
shr rax, 2
add rax, r8
cmp rdx, rax
cmova rax, rdx
cmp rax, 4
mov edx, 3
cmovae rdx, rax
call fcn.1401af9b0
mov rcx, qword [rsi + 0x80]
mov rax, qword [rsi + 0x90]
cmp rcx, rax
jb 0x140117f1c
lea r9, [rsp + 0x218]
lea rdx, [rsp + 0x198]
mov r10, qword [rsp + 0x58]
mov rcx, qword [r10 + 0x78]
imul rax, rax, 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 [r10 + 0x80]
mov rcx, qword [r10 + 0x90]
lea rdx, [rax - 1]
lea r9, [rcx + 1]
cmp rcx, rdx
cmove r9, r8
mov qword [r10 + 0x90], r9
test r9, r9
je 0x1401190e9
cmp rax, rcx
jb 0x140117f19
lea rcx, [rsp + 0x170]
call fcn.140119f10
mov rdi, rbx
jmp 0x140115ba6
lea rcx, [rsp + 0x6e0]
call qword [case.0x1401d7990.0]
lea rax, [rsp + 0x6e0]
mov rax, qword [rax]
jmp 0x140116052
lea rcx, [rsp + 0x6e0]
call qword [case.0x1401d7990.0]
lea rax, [rsp + 0x6e0]
mov rax, qword [rax]
jmp 0x1401161d1
lea rsi, [rsp + 0x140]
mov rcx, rsi
call qword [case.0x1401d7990.0]
mov rax, qword [rsi]
jmp 0x14011661e
lea rsi, [rsp + 0x140]
mov rcx, rsi
call qword [case.0x1401d7990.0]
mov rax, qword [rsi]
jmp 0x1401164a7
lea rsi, [rsp + 0x6e0]
mov rcx, rsi
call qword [case.0x1401d7990.0]
mov rax, qword [rsi]
jmp 0x1401173a1
call fcn.140172a44
jmp 0x1401172f9
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x60]
call qword [case.0x1401d7990.0]
jmp 0x1401160a3
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x60]
call qword [case.0x1401d7990.0]
jmp 0x14011621d
call fcn.140172a44
jmp 0x14011680d
call fcn.140172a44
jmp 0x140116728
cmp dword [rax + 0x10], r10d
jmp 0x140117963
lea rcx, [rsp + 0x6e0]
call qword [case.0x1401d7990.0]
lea rax, [rsp + 0x6e0]
mov rax, qword [rax]
jmp 0x14011612d
lea rcx, [rsp + 0x6e0]
call qword [case.0x1401d7990.0]
lea rax, [rsp + 0x6e0]
mov rax, qword [rax]
jmp 0x1401162a2
cmp rcx, rdx
je 0x140118c81
mov r14, qword [rcx + 0x18]
mov rcx, r14
mov rdx, qword [rsp + 0x60]
mov r8, r12
call fcn.14012fa20
mov rcx, qword [r14 + 0xa8]
test rcx, rcx
jne 0x140119075
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
mov r14, qword [rsp + 0x58]
lea r8, [0x140171950]
lea rcx, [rsp + 0x170]
mov r10, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
je 0x140115b55
jmp 0x1401160cc
cmp rcx, rdx
je 0x140118c84
mov r14, qword [rcx + 0x18]
mov rcx, r14
mov rdx, qword [rsp + 0x60]
mov r8, r12
call fcn.14012fa20
mov rcx, qword [r14 + 0xa8]
test rcx, rcx
jne 0x14011908b
mov rax, qword [r13 + 0x10]
cmp rax, qword [r13 + 0x18]
lea r8, [0x140171950]
lea rcx, [rsp + 0x170]
mov r10, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
je 0x140115b6a
jmp 0x140116241
int3
int3
lea rsi, [rsp + 0x140]
mov rcx, rdi
mov rdx, rsi
mov r8, r12
call fcn.1401e16c0
mov rcx, r14
call fcn.140158d50
call sub.KERNEL32.dll_GetCurrentThreadId
mov rbx, rdi
lea rdi, [rsp + 0x170]
movaps xmmword [rdi], xmm6
movaps xmmword [rdi + 0x10], xmm6
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rdi + 0x20], rcx
mov word [rdi], 0x801
lea rcx, str.snapshot
mov qword [rdi + 8], rcx
mov rcx, qword [rsi]
mov qword [rdi + 0x18], rcx
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x48], 0x800
mov qword [rsp + 0x28], 0
lea rdx, [0x140289cf0]
lea r8, [0x14026aed0]
mov cl, 0x4f
xor r9d, r9d
call fcn.1400efe20
mov rcx, rdi
mov rdi, rbx
call fcn.14012f900
jmp 0x140115bcb
int3
int3
int3
int3
int3
int3
int3
lea rsi, [rsp + 0x170]
mov rcx, rsi
call fcn.140158d50
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, [0x140289ce0]
lea r8, str.SequenceManagerImpl::SelectNextTask
mov cl, 0x58
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xe0], r8
xor r9d, r9d
call fcn.1400efe20
mov qword [rsp + 0xd8], rax
jmp 0x140115496
lea rsi, [rsp + 0x170]
mov rcx, rsi
call fcn.140158d50
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 rsi, [0x140289ce0]
lea rdi, str.SequenceManagerImpl::MoveReadyDelayedTasksToWorkQueues
mov cl, 0x58
mov rdx, rsi
mov r8, rdi
xor r9d, r9d
call fcn.1400efe20
mov r15, rax
jmp 0x140115b2f
cmp byte [rsi], 0
je 0x140115b73
mov rcx, rsi
mov rdx, rdi
mov r8, r15
call fcn.1400ef640
jmp 0x140115b73
int3
int3
int3
mov rax, qword [rsp + 0xc8]
cmp byte [rax], 0
je 0x140115fac
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xd8]
call fcn.1400ef640
jmp 0x140115fac
int3
mov rcx, r12
call fcn.1401dd0c0
jmp 0x14011811e
mov rcx, r12
call fcn.1401dd660
jmp 0x14011811e
mov rcx, r12
call fcn.1401dd3d0
test al, al
je 0x140115ec3
jmp 0x140115ba6
xor r15d, r15d
jmp 0x140115eba
movabs rcx, 0x8000000000000001
mov r14, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + rcx]
cmp rdx, 2
jae 0x140118529
cmp r14, rax
je 0x1401190f1
sar rax, 0x3f
lea r14, [rax + rcx]
dec r14
jmp 0x140115fe8
movabs rcx, 0x8000000000000001
mov r14, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + rcx]
cmp rdx, 2
jae 0x14011854a
cmp r14, rax
je 0x1401190f4
sar rax, 0x3f
lea r14, [rax + rcx]
dec r14
jmp 0x140116167
xor eax, eax
jmp 0x140115ef1
mov rdi, qword [r12 + 0x30]
mov rax, qword [rdi + 0x10]
mov esi, dword [rax + 4]
call sub.KERNEL32.dll_GetCurrentThreadId
cmp esi, eax
jne 0x140116d68
lea rsi, [rdi + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401190a1
mov rax, qword [rdi + 0x38]
mov qword [rsp + 0x80], rax
mov rax, qword [rdi + 0xb0]
mov rcx, qword [rdi + 0xb8]
mov r12, qword [rcx + 0x10]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x98], rax
mov rbp, qword [rdi + 0xd0]
mov rbx, qword [rdi + 0xc8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x140289ce0], 0x19
je 0x140116d68
sub rbp, rbx
shr rbp, 3
imul eax, ebp, 0x3cf3cf3d
mov rcx, r12
add ecx, dword [rsp + 0x80]
mov r12, qword [rsp + 0x98]
add r12d, ecx
add r12d, eax
mov ecx, dword [rdi]
call fcn.1401ed4c0
mov rsi, rax
lea rdi, [rsp + 0x118]
mov rcx, rdi
call fcn.140158d50
call sub.KERNEL32.dll_GetCurrentThreadId
movaps xmmword [rsp + 0x6e0], xmm6
movaps xmmword [rsp + 0x6f0], xmm6
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x700], rcx
mov word [rsp + 0x6e0], 0x301
lea rcx, [0x14026226a]
mov qword [rsp + 0x6e8], rcx
movsxd rcx, r12d
mov qword [rsp + 0x6f8], rcx
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, [0x140289ce0]
mov cl, 0x43
mov r8, rsi
xor r9d, r9d
call fcn.1400efe20
mov rcx, r14
call fcn.14012f900
jmp 0x140116d68
mov r15d, 0xf68
add r15, qword [r9 + rax*8 - 8]
jmp 0x140116fc4
lea rsi, [rsp + 0x170]
mov rcx, rsi
call fcn.140158d50
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, [0x140289ce0]
lea r8, str.SequenceManagerImpl::NotifyWillProcessTaskObservers
mov cl, 0x58
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0xa8], r8
xor r9d, r9d
call fcn.1400efe20
jmp 0x140116fef
lea rdi, [rsp + 0x170]
mov rcx, rdi
mov qword [rsp + 0x98], r10
call fcn.140158d50
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, [0x140289ce0]
lea r8, str.SequenceManager.WillProcessTaskObservers
mov cl, 0x58
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xc0], r8
xor r9d, r9d
call fcn.1400efe20
mov r10, qword [rsp + 0x98]
mov qword [rsp + 0x80], rax
jmp 0x140117135
lea rdi, [rsp + 0x130]
movaps xmmword [rdi], xmm6
mov rdx, qword [r12]
mov rcx, rdi
call fcn.1401de670
mov rax, qword [rdi]
xor edi, edi
test rax, rax
je 0x140118668
cmp byte [rbx + 0x158], 0
je 0x140118b0c
imul rdx, qword [rsp + 0x138], 0xa8
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + rdx + 0x28]
cmp rax, qword [rbx + 0x160]
jge 0x14011858a
lea rcx, [rsp + 0x130]
call fcn.1401dd9d0
mov rax, qword [rsp + 0x130]
jmp 0x1401183fe
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140116cf6
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x340]
sub rcx, qword [rax + 0x338]
sar rcx, 3
jmp 0x1401171b3
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140116b78
mov r15, r14
mov rbx, r13
mov rsi, rbp
cmp r8b, 7
jne 0x140118769
xor r12d, r12d
mov rbp, rsi
mov r13, rbx
mov r14, r15
jmp 0x140115f7f
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140116052
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401161d1
xor ecx, ecx
cmp r14, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub r14, rax
cmovo r14, rdx
jmp 0x140115fe8
xor ecx, ecx
cmp r14, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub r14, rax
cmovo r14, rdx
jmp 0x140116167
int3
inc rax
mov qword [rsp + 0x188], rax
cmp rdx, rax
jne 0x1401171dc
mov rax, rdx
jmp 0x1401171fe
add rcx, rdx
mov byte [rbx + 0x158], 0
lea rdi, [rsp + 0x118]
mov rdx, rdi
call fcn.14013b880
lea rcx, [rsp + 0x6e0]
mov rdx, rdi
call fcn.1401ed770
lea rax, [rbx + 0x138]
mov qword [rsp + 0x80], rax
cmp byte [rbx + 0x130], 0
je 0x1401188ee
lea rdx, [rsp + 0x6e0]
mov rcx, qword [rsp + 0x80]
call fcn.1401720e0
lea rcx, [rsp + 0x6e0]
call fcn.1400f24c0
cmp byte [rbx + 0x130], 0
je 0x140117539
mov rdi, qword [rbx + 0xb8]
lea r14, [rsp + 0x6e0]
mov rcx, r14
mov rdx, qword [rsp + 0x80]
call fcn.1401720e0
mov rcx, rdi
mov rdx, r14
call fcn.1401ddae0
cmp byte [rbx + 0x130], 0
je 0x140117539
mov rdi, qword [rbx + 0xb0]
lea r14, [rsp + 0x118]
mov rcx, r14
mov rdx, qword [rsp + 0x80]
call fcn.1401720e0
mov rcx, rdi
mov rdx, r14
call fcn.1401ddae0
mov rdi, qword [rsp + 0x130]
mov rax, qword [0x14028a5a0]
and rax, rdi
cmp rax, qword [0x14028a588]
jne 0x140118683
mov rcx, rdi
call fcn.1400ebe70
lea r14, [rsp + 0x6e0]
jmp 0x140116c45
mov rax, qword [8]
xor ecx, ecx
jmp 0x140117630
call qword [case.0x1401d7990.0]
lea r15, [0x1401665e0]
mov r12, qword [rsp + 0x70]
jmp 0x140115af0
lea rdi, [rsp + 0x140]
movaps xmmword [rdi], xmm6
mov rdx, qword [r12]
mov rcx, rdi
call fcn.1401de670
mov rax, qword [rdi]
test rax, rax
je 0x14011890f
cmp byte [r15 + 0x158], 0
je 0x140118b0c
imul rdx, qword [rsp + 0x148], 0xa8
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + rdx + 0x28]
cmp rax, qword [r15 + 0x160]
jge 0x1401187bf
lea rdi, [rsp + 0x140]
mov rcx, rdi
call fcn.1401dd9d0
jmp 0x1401186cd
cmp byte [rax + 0x128], 0
je 0x140115af0
mov rax, qword [rcx]
mov rax, qword [rax + 8]
jmp 0x14011685d
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14011573d
mov al, 1
mov dword [rsp + 0xa0], eax
jmp 0x14011693e
mov rcx, rdx
mov r11, r8
movzx r8d, r11b
bt rax, r8
jae 0x140118799
cmp r11b, 7
jae 0x1401187bc
mov r9, r8
shl r9, 5
mov r10, rcx
mov rdx, qword [rcx + r9 + 0x10]
cmp rdx, qword [rcx + r9 + 0x18]
jne 0x140118a76
mov rdx, r11
inc dl
xor r12d, r12d
mov r11, rdx
cmp dl, 7
mov rbp, rsi
mov r13, rbx
mov r14, r15
mov rdi, qword [rsp + 0x68]
jne 0x14011876f
jmp 0x140115bbe
int3
add rcx, rdx
mov byte [r15 + 0x158], 0
lea rdi, [rsp + 0x6e0]
mov rdx, rdi
call fcn.14013b880
lea rcx, [rsp + 0x170]
mov rdx, rdi
call fcn.1401ed770
lea rdi, [r15 + 0x138]
cmp byte [r15 + 0x130], 0
je 0x140118b5f
lea rdx, [rsp + 0x170]
mov rcx, rdi
call fcn.1401720e0
lea rcx, [rsp + 0x170]
call fcn.1400f24c0
cmp byte [r15 + 0x130], 0
je 0x140117539
mov r14, qword [r15 + 0xb8]
lea rbp, [rsp + 0x170]
mov rcx, rbp
mov rdx, rdi
call fcn.1401720e0
mov rcx, r14
mov rdx, rbp
call fcn.1401ddae0
cmp byte [r15 + 0x130], 0
je 0x140117539
mov r14, qword [r15 + 0xb0]
lea rbp, [rsp + 0x6e0]
mov rcx, rbp
mov rdx, rdi
call fcn.1401720e0
mov rcx, r14
mov rdx, rbp
call fcn.1401ddae0
mov rcx, qword [rsp + 0x140]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
jne 0x1401188a2
call fcn.1400ebe70
mov rbp, qword [rsp + 0x78]
xor edi, edi
lea r14, [0x140164fa0]
jmp 0x140115810
cmp r12, qword [r13 + 8]
jne 0x1401188bf
cmp ebp, dword [r13 + 0x10]
setl al
jmp 0x140116341
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401173a1
lea rdx, [rsp + 0x6e0]
mov rcx, qword [rsp + 0x80]
call fcn.1401720e0
mov byte [rbx + 0x130], 1
jmp 0x1401185e5
xor ecx, ecx
jmp 0x14011888a
mov r15, qword [r12 + 0x30]
mov rax, qword [r15 + 0x10]
mov esi, dword [rax + 4]
call sub.KERNEL32.dll_GetCurrentThreadId
cmp esi, eax
jne 0x14011668b
lea rsi, [r15 + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401190c2
mov rax, qword [r15 + 0x38]
mov qword [rsp + 0xa8], rax
mov rax, qword [r15 + 0xb0]
mov rcx, qword [r15 + 0xb8]
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x88], rcx
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x70], rax
mov rax, qword [r15 + 0xd0]
mov qword [rsp + 0xb0], rax
mov rbx, qword [r15 + 0xc8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x140289ce0], 0x19
je 0x14011668b
mov rax, qword [rsp + 0xb0]
sub rax, rbx
shr rax, 3
imul eax, eax, 0x3cf3cf3d
mov rcx, qword [rsp + 0x88]
add ecx, dword [rsp + 0xa8]
mov rbx, qword [rsp + 0x70]
add ebx, ecx
add ebx, eax
mov ecx, dword [r15]
call fcn.1401ed4c0
mov rsi, rax
lea r15, [rsp + 0x140]
mov rcx, r15
call fcn.140158d50
call sub.KERNEL32.dll_GetCurrentThreadId
movaps xmmword [rsp + 0x6e0], xmm6
movaps xmmword [rsp + 0x6f0], xmm6
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x700], rcx
mov word [rsp + 0x6e0], 0x301
lea rcx, [0x14026226a]
mov qword [rsp + 0x6e8], rcx
movsxd rcx, ebx
mov qword [rsp + 0x6f8], rcx
mov rbx, r14
mov qword [rsp + 0x40], r14
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, [0x140289ce0]
mov cl, 0x43
mov r8, rsi
xor r9d, r9d
call fcn.1400efe20
mov rcx, r14
call fcn.14012f900
jmp 0x14011668b
lea rdi, [rsp + 0x170]
movaps xmmword [rdi + 0x20], xmm6
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
mov rdx, rdi
call fcn.140167310
cmp byte [rdi], 0
je 0x140118b7c
mov r12, qword [rsp + 0x178]
jmp 0x140118b7f
mov qword [rsp + 0x68], rdi
lea rdi, [rsp + 0xf0]
movaps xmmword [rdi], xmm6
mov rdx, qword [r12]
mov rcx, rdi
call fcn.1401de670
mov rax, qword [rdi]
test rax, rax
je 0x140118c7d
cmp byte [rbx + 0x158], 0
je 0x140118b0c
imul rdx, qword [rsp + 0xf8], 0xa8
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + rdx + 0x28]
cmp rax, qword [rbx + 0x160]
jge 0x140118b8c
lea rdi, [rsp + 0xf0]
mov rcx, rdi
call fcn.1401dd9d0
jmp 0x140118ac3
call fcn.1401b36e0
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140116616
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14011649f
lea rdx, [rsp + 0x170]
mov rcx, rdi
call fcn.1401720e0
mov byte [r15 + 0x130], 1
jmp 0x14011880f
xor r12d, r12d
mov rcx, rdi
call fcn.140077ef0
jmp 0x1401184cd
add rcx, rdx
mov byte [rbx + 0x158], 0
lea rdi, [rsp + 0x140]
mov rdx, rdi
call fcn.14013b880
lea rcx, [rsp + 0x6e0]
mov rdx, rdi
call fcn.1401ed770
lea rdi, [rbx + 0x138]
cmp byte [rbx + 0x130], 0
je 0x140118c87
lea rdx, [rsp + 0x6e0]
mov rcx, rdi
call fcn.1401720e0
lea rcx, [rsp + 0x6e0]
call fcn.1400f24c0
cmp byte [rbx + 0x130], 0
je 0x140117539
mov r15, qword [rbx + 0xb8]
lea r14, [rsp + 0x6e0]
mov rcx, r14
mov rdx, rdi
call fcn.1401720e0
mov rcx, r15
mov rdx, r14
call fcn.1401ddae0
cmp byte [rbx + 0x130], 0
je 0x140117539
mov r15, qword [rbx + 0xb0]
lea r14, [rsp + 0x140]
mov rcx, r14
mov rdx, rdi
call fcn.1401720e0
mov rcx, r15
mov rdx, r14
call fcn.1401ddae0
mov rcx, qword [rsp + 0xf0]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
jne 0x140118c6b
call fcn.1400ebe70
lea r14, [rsp + 0x6e0]
mov rdi, qword [rsp + 0x68]
jmp 0x14011656c
xor ecx, ecx
jmp 0x140118c53
int3
int3
lea rdx, [rsp + 0x6e0]
mov rcx, rdi
call fcn.1401720e0
mov byte [rbx + 0x130], 1
jmp 0x140118bda
mov rax, qword [r12 + 0x60]
cmp qword [rsp + 0x178], rax
jne 0x140118cbe
mov eax, dword [rsp + 0x180]
cmp eax, dword [r12 + 0x68]
mov edi, 0
jl 0x140117521
jmp 0x140115acc
mov r15, qword [r12 + 0x28]
mov rcx, qword [r12]
mov rax, qword [rcx + 0x18]
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
inc rcx
xor r11d, r11d
cmp rcx, rdx
mov r9, rcx
cmove r9, r11
imul r10, r9, 0xa8
mov r9d, dword [rax + r10 + 0x78]
mov rsi, qword [rax + r10 + 0x30]
test rsi, rsi
jne 0x140119032
cmp qword [rax + r10 + 0x90], r8
je 0x1401190f7
mov edi, 0
jb 0x14011588a
jmp 0x14011752d
add r8, rdx
cmp r8, 1
ja 0x1401158b1
cmp rdx, r11
je 0x1401158b1
int3
mov r9, rcx
movabs rcx, 0x8000000000000001
mov r14, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + rcx]
cmp rdx, 2
jae 0x140118f3c
cmp r14, rax
je 0x140118db7
sar rax, 0x3f
lea r14, [rax + rcx]
dec r14
mov rcx, r9
jmp 0x1401160d9
mov r9, rcx
movabs rcx, 0x8000000000000001
mov r14, qword [rax]
mov rax, qword [rax + 8]
lea rdx, [rax + rcx]
cmp rdx, 2
jae 0x140118f60
cmp r14, rax
je 0x140118dba
sar rax, 0x3f
lea r14, [rax + rcx]
dec r14
mov rcx, r9
jmp 0x14011624e
int3
int3
add rax, 0xffffffffffffffef
mov qword [r8 + 0x448], rax
mov rax, qword [rbx]
lea rdx, [rsp + 0x6e0]
mov qword [rdx], rax
add rbx, 8
mov qword [r8 + 0x430], rbx
mov rcx, rbp
call fcn.1401e2330
mov rbp, qword [rsp + 0x78]
jmp 0x140117778
cmp rcx, rsi
jne 0x140118f84
mov ecx, 0xf68
call fcn.140172a4c
lea rdi, [rsp + 0x6e0]
mov qword [rdi], rax
mov rcx, rbp
mov rdx, rdi
call fcn.1401e2470
mov rdx, qword [rsp + 0x58]
mov rax, qword [rdx + 0x430]
mov rcx, qword [rax]
mov qword [rdi], rcx
add rax, 8
mov qword [rdx + 0x430], rax
lea rdx, [rsp + 0x6e0]
jmp 0x140118de1
mov qword [rsp + 0xb8], rax
test r12, r12
jle 0x140118fa6
lea rax, [rdi*4 + 4]
and rax, 0xfffffffffffffff8
sub r14, rax
mov qword [rsp + 0x6e8], r14
mov rbp, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov rax, qword [rsp + 0xb8]
jmp 0x140117713
int3
lea rsi, [rsp + 0x6e0]
add rdi, 0xfffffffffffffff8
mov rcx, rsi
mov rdx, rdi
call fcn.1401e2470
mov rax, qword [rsp + 0x58]
cmp rdi, qword [rax + 0x430]
jne 0x140118e90
mov r12, qword [rsp + 0x6e0]
mov r14, qword [rsp + 0x6e8]
mov rax, qword [rsp + 0x6f0]
mov rcx, qword [rsp + 0x6f8]
mov qword [rsp + 0x98], rcx
mov rbp, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x58]
jmp 0x140117744
call fcn.140172a44
jmp 0x140117778
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14011612d
mov rcx, qword [0x14029b670]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401162a2
xor ecx, ecx
cmp r14, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub r14, rax
cmovo r14, rdx
mov rcx, r9
jmp 0x1401160d9
xor ecx, ecx
cmp r14, rax
setns cl
movabs rdx, 0x7fffffffffffffff
add rdx, rcx
sub r14, rax
cmovo r14, rdx
mov rcx, r9
jmp 0x14011624e
mov ecx, 0xf68
call fcn.140172a4c
lea rdx, [rsp + 0x6e0]
mov qword [rdx], rax
mov rcx, rbp
call fcn.1401e2330
jmp 0x140118de9
movabs rax, 0x1fffffffffffffff
sar r12, 2
cmp rsi, rbx
mov esi, 1
cmovne rsi, r12
cmp rsi, rax
ja 0x140119023
lea rcx, [rsi*8]
call fcn.140172a4c
mov r12, rax
lea rax, [rax + rsi*8]
and rsi, 0xfffffffffffffffc
lea r14, [r12 + rsi*2]
mov qword [rsp + 0x6e0], r12
mov qword [rsp + 0x6e8], r14
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x6f8], rax
cmp qword [rsp + 0x80], 0
je 0x140119019
mov rcx, qword [rsp + 0x80]
call fcn.140172a44
mov rbp, qword [rsp + 0x78]
jmp 0x140118e78
call fcn.1401b3360
call fcn.1400ebe70
jmp 0x140117812
lea r11, [rax + r10]
cmp dword [r11 + 0x40], 0
jne 0x14011906d
movabs rdi, 0x8000000000000001
mov r11, qword [r11 + 0x38]
lea r14, [r11 + rdi]
cmp r14, 2
jb 0x140119113
lea rdi, [rsi + r11]
sar rdi, 0x3f
btc rdi, 0x3f
add rsi, r11
cmovo rsi, rdi
mov r11, rsi
jmp 0x140118d0c
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x60]
call qword [case.0x1401d7990.0]
jmp 0x140117e95
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x60]
call qword [case.0x1401d7990.0]
jmp 0x140117ef0
mov rcx, rsi
call fcn.1400ec2e0
jmp 0x1401181d8
call fcn.1400ebe70
jmp 0x1401179f7
call fcn.1400ebe70
jmp 0x140117a85
mov rcx, rsi
call fcn.1400ec2e0
jmp 0x140118944
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x80]
mov rdx, rax
sub rdx, r8
add rdx, rcx
jmp 0x140117c00
mov rcx, rdx
jmp 0x140117d34
int3
int3
cmp r11, qword [r12 + 0x60]
jne 0x140119103
cmp r9d, dword [r12 + 0x68]
mov edi, 0
jl 0x14011588a
jmp 0x14011752d
add rdi, rsi
cmp rdi, 1
ja 0x140118d0c
cmp rsi, r11
je 0x140118d0c
int3
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x140119788
cmp qword [r8 + rax*8], 0
je 0x14011976c
mov rdx, qword [rdi]
mov r8, qword [rdi + 8]
sub r8, rdx
sar r8, 3
cmp r8, rcx
cmovb rcx, r8
cmp rax, rcx
je 0x1401191e1
cmp r8, rax
jbe 0x14011978b
cmp r10, r13
seta r8b
mov rcx, qword [rdx + rax*8]
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, r14
mov rdi, r10
call qword [case.0x1401d7990.0]
mov r10, rdi
mov rdi, qword [rsp + 0x180]
test rdi, rdi
je 0x140119268
mov rax, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x190]
inc rax
mov qword [rsp + 0x188], rax
mov rdx, qword [rdi + 8]
sub rdx, qword [rdi]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
cmp rax, rdx
jb 0x140119130
jmp 0x140119152
mov qword [rsp + 0x68], r13
mov dword [rsp + 0xa0], ebx
mov byte [rsp + 0x60], r12b
mov rax, qword [rdi + 0x20]
cmp rax, qword [rdi + 0x18]
jne 0x140119220
mov r12, qword [rdi]
mov r13, qword [rdi + 8]
cmp r12, r13
je 0x140119220
lea rbx, [r12 + 8]
cmp qword [r12], 0
je 0x14011952f
mov r12, rbx
cmp rbx, r13
jne 0x140119208
cmp qword [rsp + 0x180], 0
movzx r12d, byte [rsp + 0x60]
mov ebx, dword [rsp + 0xa0]
mov r13, qword [rsp + 0x68]
je 0x140119268
mov qword [rsp + 0x180], 0
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x178]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x178]
mov qword [rcx], rax
test sil, 0x19
jne 0x140119671
test byte [0x140289ce0], 0x19
jne 0x1401196aa
cmp r10, r13
seta r8b
mov rcx, qword [r15 - 0x40]
mov rdx, r14
call fcn.140119bd0
test bl, bl
jne 0x1401193c7
test r12b, 0x19
jne 0x14011973c
mov rax, qword [r15 - 0x50]
test rax, rax
je 0x1401192b9
movzx eax, byte [rax + 4]
test al, al
je 0x1401194c0
mov edi, dword [r15 - 0x38]
movzx ebx, byte [r15 - 8]
mov rax, qword [r15 - 0x40]
mov rsi, qword [rax + 0x190]
test rsi, rsi
je 0x1401192e3
mov eax, 1
lock xadd dword [rsi], eax
test eax, eax
jle 0x140119791
mov rax, qword [0x14028a5a0]
and rax, r14
cmp rax, qword [0x14028a588]
jne 0x1401192fe
mov rcx, r14
call fcn.1400eaf60
test rsi, rsi
jne 0x14011936b
shl rdi, 0x20
or rdi, rbx
mov byte [rbp], 1
mov rax, qword [0x14028a5a0]
and rax, r14
cmp rax, qword [0x14028a588]
jne 0x140119329
mov rcx, r14
call fcn.1400eaf60
mov qword [rbp + 8], r14
test r14, r14
je 0x140119769
mov qword [rbp + 0x10], 0
test rsi, rsi
jne 0x14011939a
mov qword [rbp + 0x18], rdi
mov rax, qword [0x14028a5a0]
and rax, r14
cmp rax, qword [0x14028a588]
jne 0x140115f9e
mov rcx, r14
call fcn.1400ebe70
jmp 0x140115f9e
mov eax, 1
lock xadd dword [rsi], eax
test eax, eax
jle 0x14011978e
shl rdi, 0x20
or rdi, rbx
lock dec dword [rsi]
jne 0x14011930a
mov rax, qword [rsi + 0x10]
mov rcx, rsi
call qword [case.0x1401d7990.0]
jmp 0x14011930a
mov eax, 1
lock xadd dword [rsi], eax
test eax, eax
jle 0x140119794
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], rdi
lock dec dword [rsi]
jne 0x140119347
mov rax, qword [rsi + 0x10]
mov rcx, rsi
call qword [case.0x1401d7990.0]
jmp 0x140119347
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x70], 0
jne 0x14011996f
movzx ebx, byte [0x140289ce0]
test bl, 0x19
jne 0x140119797
xor eax, eax
mov qword [rsp + 0x60], rax
movabs rsi, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xa0], rsi
mov rdx, qword [rsp + 0x58]
mov rax, qword [rdx + 0x370]
cmp rax, qword [rdx + 0x378]
je 0x140119966
lea rax, [rdx + 0x370]
lea rcx, [rsp + 0x170]
mov qword [rcx + 0x10], rax
lea rax, [rdx + 0x388]
mov qword [rcx + 8], rax
mov rax, qword [rdx + 0x388]
mov qword [rcx], rax
mov qword [rax + 8], rcx
mov qword [rdx + 0x388], rcx
mov qword [rcx + 0x18], 0
mov rcx, 0xffffffffffffffff
cmp dword [rdx + 0x3a0], 0
jne 0x140119802
mov qword [rsp + 0x190], rcx
mov rdi, qword [rsp + 0x180]
mov rdx, qword [rdi + 8]
sub rdx, qword [rdi]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
xor eax, eax
test rdx, rdx
je 0x1401194b2
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x140119819
cmp qword [r8 + rax*8], 0
je 0x14011981c
test rdi, rdi
jne 0x140119872
jmp 0x140119966
cmp qword [r15 - 0x48], 0
je 0x1401192b9
mov rax, qword [r15 - 0x50]
test rax, rax
je 0x140119838
mov al, byte [rax + 4]
test al, al
jne 0x140119838
mov rsi, qword [r15 - 0x48]
mov rax, qword [rsi + 0x18]
mov byte [rax + 4], 1
mov ecx, 8
call fcn.140172a4c
mov dword [rax], 0
mov byte [rax + 4], 0
test rax, rax
je 0x14011950b
lock inc dword [rax]
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x18], rax
test rcx, rcx
je 0x1401192b9
lock dec dword [rcx]
jne 0x1401192b9
call fcn.140172a44
jmp 0x1401192b9
cmp rbx, r13
jne 0x140119616
sub r13, r12
jb 0x14011983b
je 0x140119220
mov rdx, qword [rdi + 8]
mov rax, r12
add rax, r13
cmp rax, rdx
mov qword [rsp + 0x98], r10
je 0x1401195c6
sar r13, 3
shl r13, 3
mov qword [rsp + 0xb8], rdx
test r13, r13
je 0x1401195b1
lea rbx, [r12 + r13]
mov rcx, qword [r12]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
jne 0x1401195a3
call fcn.1400e5d90
mov rdx, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x98]
mov rax, qword [rbx]
mov qword [r12], rax
mov qword [rbx], 0
lea rax, [r12 + r13]
add rax, 8
add r12, 8
cmp rax, rdx
jne 0x14011956e
mov rdx, qword [rdi + 8]
cmp rdx, r12
je 0x14011960d
lea rbx, [rdx - 8]
mov rcx, qword [rdx - 8]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
je 0x1401195f8
mov qword [rdx - 8], 0
mov rdx, rbx
cmp rbx, r12
jne 0x1401195cb
jmp 0x14011960d
mov r13, rdx
call fcn.1400e5d90
mov rdx, r13
mov r10, qword [rsp + 0x98]
jmp 0x1401195e6
mov qword [rdi + 8], r12
jmp 0x140119220
mov qword [rsp + 0x98], r10
mov rbp, qword [rsp + 0x78]
mov rax, qword [rbx]
test rax, rax
je 0x14011965a
cmp rbx, r12
je 0x140119656
mov rcx, qword [r12]
mov rdx, qword [0x14028a5a0]
and rdx, rcx
cmp rdx, qword [0x14028a588]
je 0x14011983e
mov qword [r12], rax
mov qword [rbx], 0
add r12, 8
add rbx, 8
cmp rbx, r13
mov r10, qword [rsp + 0x98]
je 0x140119538
jmp 0x140119623
mov rax, qword [rsp + 0xb0]
cmp byte [rax], 0
je 0x140119272
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x80]
mov rsi, r10
call fcn.1400ef640
mov r10, rsi
jmp 0x140119272
cmp r10, r13
seta sil
lea rdi, [rsp + 0x170]
mov rcx, rdi
call fcn.140158d50
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, [0x140289ce0]
lea r8, str.SequenceManager.QueueNotifyWillProcessTask
mov cl, 0x58
xor r9d, r9d
call fcn.1400efe20
mov rdi, rax
mov rcx, qword [r15 - 0x40]
mov rdx, r14
mov r8d, esi
call fcn.140119bd0
cmp byte [0x140289ce0], 0
je 0x140119292
lea rcx, [0x140289ce0]
lea rdx, str.SequenceManager.QueueNotifyWillProcessTask
mov r8, rdi
call fcn.1400ef640
jmp 0x140119292
mov rax, qword [rsp + 0x70]
cmp byte [rax], 0
je 0x1401192a4
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x88]
call fcn.1400ef640
jmp 0x1401192a4
int3
inc rax
mov qword [rsp + 0x188], rax
cmp rdx, rax
jne 0x140119130
mov rax, rdx
jmp 0x140119152
int3
int3
int3
int3
int3
lea rsi, [rsp + 0x170]
mov rcx, rsi
call fcn.140158d50
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, [0x140289ce0]
lea r8, str.SequenceManager.WillProcessTaskTimeObservers
mov cl, 0x58
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0xa0], r8
xor r9d, r9d
call fcn.1400efe20
mov qword [rsp + 0xd0], rax
jmp 0x1401193ff
mov rcx, qword [rdx + 0x378]
sub rcx, qword [rdx + 0x370]
sar rcx, 3
jmp 0x140119467
int3
inc rax
mov qword [rsp + 0x188], rax
cmp rdx, rax
jne 0x140119490
mov rax, rdx
jmp 0x1401194b2
int3
int3
call fcn.1400e5d90
mov rax, qword [rbx]
jmp 0x14011964b
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
sub r9, r8
sar r9, 3
cmp r9, rax
jbe 0x1401199d7
cmp qword [r8 + rax*8], 0
je 0x1401199da
mov rdx, qword [rdi]
mov r8, qword [rdi + 8]
sub r8, rdx
sar r8, 3
cmp r8, rcx
cmovb rcx, r8
cmp rax, rcx
je 0x1401198f6
cmp r8, rax
jbe 0x1401199d4
mov rcx, qword [rdx + rax*8]
mov rdx, qword [r15 - 0x28]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401d7990.0]
mov rdi, qword [rsp + 0x180]
test rdi, rdi
je 0x140119966
mov rax, qword [rsp + 0x188]
mov rcx, qword [rsp + 0x190]
inc rax
mov qword [rsp + 0x188], rax
mov rdx, qword [rdi + 8]
sub rdx, qword [rdi]
sar rdx, 3
cmp rdx, rcx
cmovae rdx, rcx
cmp rax, rdx
jb 0x140119850
jmp 0x140119872
mov esi, r12d
mov rax, qword [rdi + 0x20]
cmp rax, qword [rdi + 0x18]
jne 0x140119928
mov r12, qword [rdi]
mov rbp, qword [rdi + 8]
cmp r12, rbp
je 0x140119928
nop
lea r13, [r12 + 8]
cmp qword [r12], 0
je 0x140119ac6
mov r12, r13
cmp r13, rbp
jne 0x140119910
cmp qword [rsp + 0x180], 0
mov rbp, qword [rsp + 0x78]
mov r12d, esi
je 0x140119966
mov qword [rsp + 0x180], 0
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x178]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x178]
mov qword [rcx], rax
test bl, 0x19
jne 0x1401199f6
test byte [0x140289ce0], 0x19
jne 0x140119a23
mov rax, qword [r15 - 0x40]
mov rsi, qword [rax + 0x180]
test rsi, rsi
je 0x14011929a
mov ecx, 1
lock xadd dword [rsi], ecx
test ecx, ecx
jle 0x140119aaf
lea r8, [r15 - 0x30]
mov rcx, qword [rax + 0x180]
mov rax, qword [rcx + 8]
mov rdx, r14
call qword [case.0x1401d7990.0]
lock dec dword [rsi]
jne 0x14011929a
mov rax, qword [rsi + 0x10]
mov rcx, rsi
call qword [case.0x1401d7990.0]
jmp 0x14011929a
int3
int3
inc rax
mov qword [rsp + 0x188], rax
cmp rdx, rax
jne 0x140119850
mov rax, rdx
jmp 0x140119872
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0
je 0x14011996f
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xd0]
call fcn.1400ef640
jmp 0x14011996f
lea rsi, [rsp + 0x170]
mov rcx, rsi
call fcn.140158d50
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, [0x140289ce0]
lea r8, str.SequenceManager.QueueOnTaskStarted
mov cl, 0x58
xor r9d, r9d
call fcn.1400efe20
mov rsi, rax
mov rcx, qword [r15 - 0x40]
lea r8, [r15 - 0x30]
mov rdx, r14
call fcn.140172040
cmp byte [0x140289ce0], 0
je 0x14011929a
lea rcx, [0x140289ce0]
lea rdx, str.SequenceManager.QueueOnTaskStarted
mov r8, rsi
call fcn.1400ef640
jmp 0x14011929a
int3
mov qword [r12], rax
mov qword [r13], 0
add r12, 8
add r13, 8
cmp r13, rbp
je 0x140119afb
mov rax, qword [r13]
test rax, rax
je 0x140119ac2
cmp r13, r12
je 0x140119abe
mov rcx, qword [r12]
mov rdx, qword [0x14028a5a0]
and rdx, rcx
cmp rdx, qword [0x14028a588]
jne 0x140119ab2
call fcn.1400e5d90
mov rax, qword [r13]
jmp 0x140119ab2
sub rbp, r12
jb 0x140119bbd
je 0x140119928
mov rdx, qword [rdi + 8]
mov rax, r12
add rax, rbp
cmp rax, rdx
je 0x140119b75
sar rbp, 3
shl rbp, 3
mov qword [rsp + 0x58], rdx
test rbp, rbp
je 0x140119b60
lea r13, [r12 + rbp]
mov rcx, qword [r12]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
jne 0x140119b50
call fcn.1400e5d90
mov rdx, qword [rsp + 0x58]
mov rax, qword [r13]
mov qword [r12], rax
mov qword [r13], 0
lea rax, [r12 + rbp]
add rax, 8
add r12, 8
cmp rax, rdx
jne 0x140119b26
mov rdx, qword [rdi + 8]
cmp rdx, r12
je 0x140119bb4
lea r13, [rdx - 8]
mov rcx, qword [rdx - 8]
mov rax, qword [0x14028a5a0]
and rax, rcx
cmp rax, qword [0x14028a588]
je 0x140119ba7
mov qword [rdx - 8], 0
mov rdx, r13
cmp r13, r12
jne 0x140119b7a
jmp 0x140119bb4
mov rbp, rdx
call fcn.1400e5d90
mov rdx, rbp
jmp 0x140119b95
mov qword [rdi + 8], r12
jmp 0x140119928
int3