Function at 0x140105fd0
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm6
mov rax, qword [0x1402b4040]
xor rax, rsp
mov qword [rsp + 0xa8], rax
mov rax, qword [rcx + 0xb8]
mov r15, qword [rcx + 0xc0]
cmp rax, r15
je 0x1401061e4
mov rsi, rdx
mov rdi, rcx
cmp qword [rcx + 0x80], 0
je 0x1401061cc
cmp qword [rdi + 0x68], 0
je 0x1401061cc
mov rcx, qword [rdi + 0xa8]
test rcx, rcx
je 0x140107345
mov rdx, qword [rcx + 0xc0]
sub rdx, qword [rcx + 0xb8]
cmp rdx, 0x80
jne 0x1401061cc
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x60], rax
movzx eax, byte [rsi + 8]
test al, al
jne 0x140106103
mov rax, qword [fcn.140119100]
lea rcx, [0x1401191b0]
cmp rax, rcx
jne 0x140107268
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x80]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140107499
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c6d38]
mov qword [rsp + 0x80], rax
movzx eax, byte [rsi + 8]
cmp al, 1
je 0x140107473
test rsi, rsi
je 0x140107460
mov rax, qword [rsp + 0x80]
mov qword [rsi], rax
mov byte [rsi + 8], 1
mov al, 1
test al, al
je 0x140107395
lea r14, [rdi + 0x68]
mov r15, qword [rsi]
mov qword [rsp + 0x60], r15
mov rax, qword [r14]
xor edx, edx
cmp r15, rax
setns dl
movabs r12, 0x7fffffffffffffff
add rdx, r12
mov rcx, r15
sub rcx, rax
cmovo rcx, rdx
cmp rcx, 0x1c9c37f
jg 0x14010619d
movabs rax, 0x8000000000000001
lea r8, [rcx + rax]
mov rdx, qword [rdi + 0x50]
cmp r8, 1
jbe 0x1401073b0
lea rax, [rdx + rcx]
sar rax, 0x3f
movabs r8, 0x8000000000000000
xor r8, rax
add rdx, rcx
cmovo rdx, r8
mov qword [rdi + 0x50], rdx
cmp rdx, 0x186a0
jge 0x140107149
mov qword [rdi + 0x70], r15
cmp qword [rdi + 0xa8], 0
je 0x140107348
movzx eax, byte [0x1402c6979]
test al, al
setne bl
jne 0x1401073d3
mov byte [rdi + 0xa0], bl
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x68], rax
mov rax, qword [rdi + 0xb8]
mov r15, qword [rdi + 0xc0]
cmp rax, r15
je 0x140107332
cmp dword [r15 - 0x38], 0
mov dword [r15 - 0x38], 0
jne 0x140106210
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.140192360
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x1402cd930]
mov ecx, dword [0x1402c36f0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14010637f
cmp dword [r15 - 0x18], 0
je 0x1401073a8
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov eax, eax
movabs r9, 0x100000000
or r9, rax
mov byte [rsp + 0x80], 0
mov byte [rsp + 0x88], 0
mov rdx, qword [r15 - 0x20]
lea rcx, [0x1402ccfa8]
lea r8, [rsp + 0x80]
call fcn.140001c60
cmp qword [r15 - 0x78], 0
jne 0x140106db6
mov qword [rsp + 0x60], 0xa
movzx eax, byte [0x1402c68da]
test al, al
jne 0x1401074c0
mov esi, dword [0x1402b62d4]
test esi, esi
je 0x1401061e4
mov eax, dword [0x1402c36f0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0x128]
mov rax, qword [rdi]
test rax, rax
je 0x140107046
mov ebx, esi
mov rdx, qword [rax + 8]
cmp byte [rdx + 0xc], 0
jne 0x1401061e4
mov rcx, qword [0x1402b4e18]
mov byte [rdx + 0xc], 1
mov rdx, qword [rax + 8]
mov r8d, dword [rcx + 0x10]
cmp dword [rdx + 8], r8d
jne 0x140107504
test bl, 1
jne 0x140106453
test bl, 2
jne 0x140106430
test bl, 4
jne 0x1401063b5
test bl, 8
jne 0x140106b32
test bl, 0x10
jne 0x140106b52
test bl, 0x20
jne 0x140106b72
test bl, 0x40
jne 0x140106b8f
test bl, bl
js 0x140106baf
mov rax, qword [rdi]
mov rax, qword [rax + 8]
mov byte [rax + 0xc], 0
jmp 0x1401061e4
lea r8, [rcx + rcx*2]
shl r8, 5
lea rsi, [rax + r8]
cmp qword [rax + r8], 0
je 0x140106a70
mov r13d, ecx
mov r12d, r13d
test rsi, rsi
je 0x140106348
jmp 0x140106470
lea rcx, [0x1402cd930]
call fcn.14018fd10
cmp dword [0x1402cd930], 0xffffffff
jne 0x140106235
lea rcx, [0x1402ccfa8]
call fcn.1400012a0
lea rcx, [0x1402cd930]
call fcn.14018fca4
jmp 0x140106235
lea rsi, [rax + 0xd0]
mov r12d, 2
cmp qword [rax + 0xd0], 0
jne 0x140106464
jmp 0x140106c5f
mov r8d, dword [r13 + 0x20]
cmp r8, 0x7f
ja 0x140107093
mov r14, qword [r13]
mov rdx, qword [r14 + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140107093
cmp rax, qword [r14 + 8]
jb 0x140107093
lea rcx, [rdx - 3]
call fcn.1401cdcb0
add qword [r14 + 0x18], 0xfffffffffffffffd
mov al, byte [r13 + 0x20]
mov rcx, qword [r13 + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [r13 + 0x24], al
mov qword [r13 + 0x18], 0
jmp 0x14010666f
lea rsi, [rax + 0x70]
mov r12d, 1
cmp qword [rax + 0x70], 0
jne 0x140106464
jmp 0x140106c8e
mov rcx, r13
call fcn.1400fcf40
jmp 0x14010665d
lea rsi, [rax + 0x10]
xor r12d, r12d
cmp qword [rsi], 0
je 0x140106cbd
test rsi, rsi
je 0x140106348
xorps xmm6, xmm6
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14018d3b0]
cmp rax, rdx
jne 0x140107483
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
cmp rax, qword [rsi + 0x50]
je 0x1401067a9
mov r13, qword [rsi]
mov rax, qword [r13]
mov rax, qword [rax + 8]
lea rcx, [fcn.14012d180]
cmp rax, rcx
jne 0x140107519
mov rax, qword [r13 + 0x68]
cmp byte [rax + 0x24], 0
je 0x1401075d3
mov rax, qword [r13 + 0x80]
test rax, rax
je 0x14010651d
mov rdx, qword [r13 + 0x58]
mov r14, rdx
sub r14, qword [r13 + 0x70]
mov r8d, r14d
cmp r8, 0x7e
ja 0x140106d5c
cmp rax, qword [r13 + 0x48]
jb 0x140106d5c
sub rdx, r8
lea rcx, [rdx - 3]
call fcn.1401cdcb0
add qword [r13 + 0x58], 0xfffffffffffffffd
mov rax, qword [r13 + 0x80]
mov byte [rax], r14b
mov qword [r13 + 0x80], 0
mov byte [r13 + 0x78], 0
mov r15b, byte [r13 + 0x7a]
mov rax, qword [r13 + 0x50]
sub rax, qword [r13 + 0x58]
cmp rax, 0xc
jb 0x14010710c
cmp byte [r13 + 0x79], 0
jne 0x14010710c
cmp byte [r13 + 0x7b], 1
je 0x14010710c
mov rax, qword [r13 + 0x88]
test rax, rax
jne 0x140107545
mov r14, qword [r13 + 0x68]
lea rbp, [r14 + 0x28]
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1401072e6
mov rcx, qword [rax]
test rcx, rcx
jne 0x14010736b
lea rcx, [r13 + 0x40]
mov dword [rax + 0x288], 0
mov qword [r14], rcx
mov qword [r14 + 8], rbp
movups xmmword [r14 + 0x10], xmm6
mov qword [r14 + 0x1d], 0
mov rax, qword [r13 + 0x58]
lea rcx, [rax + 4]
cmp rcx, qword [r13 + 0x50]
ja 0x140107227
lea rcx, [rax + 4]
mov qword [r13 + 0x58], rcx
mov dword [rax], 0
mov qword [r13 + 0x80], rax
mov rax, qword [r13 + 0x68]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0
mov rax, qword [r13 + 0x58]
mov qword [r13 + 0x70], rax
mov byte [r13 + 0x78], 1
cmp byte [r13 + 0x7a], 0
jne 0x140106621
mov rcx, qword [r13 + 0x30]
movzx eax, word [rcx + 6]
cmp byte [r13 + 0x7c], 1
jne 0x1401070f1
and eax, 0x3ff
mov byte [r13 + 0x7c], 0
movzx eax, ax
cmp eax, 0x3fe
sete byte [r13 + 0x79]
test r15b, r15b
jne 0x14010752c
cmp byte [r13 + 0xa0], 1
je 0x1401071a9
add r13, 8
mov qword [rsp + 0x68], r13
mov r13, qword [rsp + 0x60]
test r13, r13
je 0x14010677f
mov rbp, qword [rsp + 0x68]
cmp byte [r13 + 0x24], 0
jne 0x14010666f
cmp qword [r13 + 0x10], 0
jne 0x140106446
mov rax, qword [r13 + 0x18]
test rax, rax
jne 0x1401063d5
mov byte [r13 + 0x24], 1
test rbp, rbp
je 0x14010677f
mov rax, qword [rbp + 0x78]
test rax, rax
je 0x1401066c3
mov rdx, qword [rbp + 0x50]
mov r14, rdx
sub r14, qword [rbp + 0x68]
mov r8d, r14d
cmp r8, 0x7e
ja 0x140106d89
cmp rax, qword [rbp + 0x40]
jb 0x140106d89
sub rdx, r8
lea rcx, [rdx - 3]
call fcn.1401cdcb0
add qword [rbp + 0x50], 0xfffffffffffffffd
mov rax, qword [rbp + 0x78]
mov byte [rax], r14b
mov qword [rbp + 0x78], 0
mov r15, qword [rbp + 0x60]
lea r13, [r15 + 0x28]
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1401072f9
mov rcx, qword [rax]
test rcx, rcx
jne 0x14010734b
lea rcx, [rbp + 0x38]
mov dword [rax + 0x288], 0
mov qword [r15], rcx
mov qword [r15 + 8], r13
movups xmmword [r15 + 0x10], xmm6
mov qword [r15 + 0x1d], 0
mov r13, qword [rbp + 0x60]
cmp byte [r13 + 0x24], 0
jne 0x14010672e
cmp qword [r13 + 0x10], 0
jne 0x1401068b6
mov rax, qword [r13 + 0x18]
test rax, rax
jne 0x1401068c3
mov byte [r13 + 0x24], 1
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x14010676f
cmp word [rbp + 0x30], 0
je 0x14010676f
cmp byte [rbp + 0x74], 0
jne 0x14010676f
mov rcx, qword [rbp + 0x48]
cmp rcx, qword [rbp + 0x50]
je 0x1401074f6
mov byte [rbp + 0x74], 1
movzx ecx, word [rax + 6]
lea edx, [rcx + 1]
and edx, 0x3ff
and ecx, 0xfffffc00
or ecx, edx
mov word [rax + 6], cx
mov rax, qword [rbp + 0x80]
test rax, rax
jne 0x14010727b
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
lea rdx, [0x14018d3b0]
cmp rax, rdx
jne 0x14010748e
mov rax, qword [rcx + 0x60]
add rax, qword [rcx + 0x58]
sub rax, qword [rcx + 0x48]
mov qword [rsi + 0x50], rax
cmp byte [rsi + 0x48], 1
je 0x140107598
cmp r12d, 6
ja 0x140106348
lea r13d, [r12 + 1]
mov rax, qword [rdi]
add rax, 0x10
mov edx, 2
mov ecx, r12d
shl edx, cl
test ebx, edx
jne 0x14010691e
lea rcx, [r13 + 1]
cmp rcx, 8
je 0x140106348
mov edx, 1
shl edx, cl
bt ebx, ecx
jb 0x140106358
lea rcx, [r13 + 2]
cmp rcx, 8
je 0x140106348
mov edx, 1
shl edx, cl
bt ebx, ecx
jb 0x140106941
lea rcx, [r13 + 3]
cmp rcx, 8
je 0x140106348
mov edx, 1
shl edx, cl
bt ebx, ecx
jb 0x14010695d
lea rcx, [r13 + 4]
cmp rcx, 8
je 0x140106348
mov edx, 1
shl edx, cl
bt ebx, ecx
jb 0x140106979
lea rcx, [r13 + 5]
cmp rcx, 8
je 0x140106348
mov edx, 1
shl edx, cl
bt ebx, ecx
jb 0x140106992
add r13, 6
cmp r13, 8
je 0x140106348
mov edx, 1
mov ecx, r13d
shl edx, cl
bt ebx, r13d
jae 0x140106348
lea rcx, [r13*2]
add rcx, r13
shl rcx, 5
lea rsi, [rax + rcx]
cmp qword [rax + rcx], 0
jne 0x140106372
jmp 0x140106af3
mov rcx, r13
call fcn.1400fcf40
jmp 0x14010671c
mov r8d, dword [r13 + 0x20]
cmp r8, 0x7f
ja 0x1401070c2
mov r14, qword [r13]
mov rdx, qword [r14 + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x1401070c2
cmp rax, qword [r14 + 8]
jb 0x1401070c2
lea rcx, [rdx - 3]
call fcn.1401cdcb0
add qword [r14 + 0x18], 0xfffffffffffffffd
mov al, byte [r13 + 0x20]
mov rcx, qword [r13 + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [r13 + 0x24], al
mov qword [r13 + 0x18], 0
jmp 0x14010672e
lea rcx, [r13*2]
add rcx, r13
shl rcx, 5
lea rsi, [rax + rcx]
cmp qword [rax + rcx], 0
jne 0x140106372
jmp 0x140106a35
lea r8, [rcx + rcx*2]
shl r8, 5
lea rsi, [rax + r8]
cmp qword [rax + r8], 0
jne 0x14010636f
jmp 0x140106a09
lea r8, [rcx + rcx*2]
shl r8, 5
lea rsi, [rax + r8]
cmp qword [rax + r8], 0
jne 0x14010636f
jmp 0x140106ac7
lea r8, [rcx + rcx*2]
shl r8, 5
lea rsi, [rax + r8]
cmp qword [rax + r8], 0
jne 0x14010636f
jmp 0x1401069d9
lea r8, [rcx + rcx*2]
shl r8, 5
lea rsi, [rax + r8]
cmp qword [rax + r8], 0
jne 0x14010636f
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x1401069d2
mov rdx, rcx
shl rdx, 7
lea r8, [0x1402b62c8]
mov r8b, byte [rdx + r8 + 0x10]
test r8b, 1
jne 0x140106a95
mov ebx, ebp
jmp 0x140106871
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x140106a02
mov rdx, rcx
shl rdx, 7
lea r8, [0x1402b62c8]
mov r8b, byte [rdx + r8 + 0x10]
test r8b, 1
jne 0x140106a95
mov ebx, ebp
jmp 0x140106853
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x140106a2e
mov rdx, rcx
shl rdx, 7
lea r8, [0x1402b62c8]
mov r8b, byte [rdx + r8 + 0x10]
test r8b, 1
jne 0x140106a95
mov ebx, ebp
jmp 0x140106817
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x140106a69
mov rcx, r13
shl rcx, 7
lea rdx, [0x1402b62c8]
mov dl, byte [rcx + rdx + 0x10]
test dl, 1
je 0x140106a69
lea rax, [0x1402b62c8]
lea r8, [rcx + rax]
add r8, 0x10
jmp 0x140106aa7
mov ebx, ebp
jmp 0x1401067db
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x140106ac0
mov rdx, rcx
shl rdx, 7
lea r8, [0x1402b62c8]
mov r8b, byte [rdx + r8 + 0x10]
test r8b, 1
je 0x140106ac0
lea rax, [0x1402b62c8]
lea r8, [rdx + rax]
add r8, 0x10
mov r13d, ecx
lea rcx, [0x1402b62c8]
mov rdx, rsi
mov r9d, r13d
call fcn.14002cb70
mov ebx, ebp
jmp 0x140106372
mov ebx, ebp
jmp 0x1401067f9
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x140106aec
mov rdx, rcx
shl rdx, 7
lea r8, [0x1402b62c8]
mov r8b, byte [rdx + r8 + 0x10]
test r8b, 1
jne 0x140106a95
mov ebx, ebp
jmp 0x140106835
mov ebp, dword [0x1402b62d4]
and ebp, ebx
test ebp, edx
je 0x140106348
mov rax, r13
shl rax, 7
lea rcx, [0x1402b62c8]
mov cl, byte [rax + rcx + 0x10]
test cl, 1
je 0x140106348
lea rcx, [0x1402b62c8]
lea r8, [rax + rcx]
add r8, 0x10
jmp 0x140106aa7
lea rsi, [rax + 0x130]
mov r12d, 3
cmp qword [rax + 0x130], 0
jne 0x140106464
jmp 0x140106cfe
lea rsi, [rax + 0x190]
mov r12d, 4
cmp qword [rax + 0x190], 0
jne 0x140106464
jmp 0x140106c2d
lea rsi, [rax + 0x1f0]
mov r12d, 5
cmp qword [rax + 0x1f0], 0
jne 0x140106464
jmp 0x140106bfb
lea rsi, [rax + 0x250]
mov r12d, 6
cmp qword [rax + 0x250], 0
jne 0x140106464
jmp 0x140106d2d
lea rsi, [rax + 0x2b0]
mov r12d, 7
cmp qword [rax + 0x2b0], 0
jne 0x140106464
mov eax, dword [0x1402b62d4]
test al, al
jns 0x140106348
mov cl, byte [0x1402b6658]
test cl, 1
je 0x140106348
and ebx, eax
lea r8, [0x1402b6658]
mov r12d, 7
jmp 0x140106ce7
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 0x20
je 0x140106337
mov cl, byte [0x1402b6558]
test cl, 1
je 0x140106337
lea r8, [0x1402b6558]
mov r12d, 5
jmp 0x140106ce7
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 0x10
je 0x14010632e
mov cl, byte [0x1402b64d8]
test cl, 1
je 0x14010632e
lea r8, [0x1402b64d8]
mov r12d, 4
jmp 0x140106ce7
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 4
je 0x14010631c
mov cl, byte [0x1402b63d8]
test cl, 1
je 0x14010631c
lea r8, [0x1402b63d8]
mov r12d, 2
jmp 0x140106ce7
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 2
je 0x140106313
mov cl, byte [0x1402b6358]
test cl, 1
je 0x140106313
lea r8, [0x1402b6358]
mov r12d, 1
jmp 0x140106ce7
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 1
je 0x14010630a
mov cl, byte [0x1402b62d8]
test cl, 1
je 0x14010630a
lea r8, [0x1402b62d8]
xor r12d, r12d
lea rcx, [0x1402b62c8]
mov rdx, rsi
mov r9d, r12d
call fcn.14002cb70
jmp 0x140106464
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 8
je 0x140106325
mov cl, byte [0x1402b6458]
test cl, 1
je 0x140106325
lea r8, [0x1402b6458]
mov r12d, 3
jmp 0x140106ce7
mov ecx, dword [0x1402b62d4]
and ebx, ecx
test cl, 0x40
je 0x140106340
mov cl, byte [0x1402b65d8]
test cl, 1
je 0x140106340
lea r8, [0x1402b65d8]
mov r12d, 6
jmp 0x140106ce7
mov ecx, r14d
or cl, 0x80
mov byte [rax], cl
mov ecx, r14d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r14d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r14d, 0x15
mov byte [rax + 3], r14b
jmp 0x140106512
mov ecx, r14d
or cl, 0x80
mov byte [rax], cl
mov ecx, r14d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r14d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r14d, 0x15
mov byte [rax + 3], r14b
jmp 0x1401066bb
mov al, byte [rsi + 8]
test al, al
jne 0x140106e43
mov rax, qword [fcn.140119100]
lea rcx, [0x1401191b0]
cmp rax, rcx
jne 0x14010730c
lea rdi, [rsp + 0x80]
mov qword [rdi], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rdi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x1401079f7
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c6d38]
mov qword [rsp + 0x80], rax
mov al, byte [rsi + 8]
cmp al, 1
je 0x1401076d3
test rsi, rsi
je 0x140107460
mov rax, qword [rsp + 0x80]
mov qword [rsi], rax
mov byte [rsi + 8], 1
mov al, 1
test al, al
je 0x140107395
lea r12, [r15 - 0x80]
mov rdi, qword [rsi]
mov r14, qword [r15 - 0x78]
lea rbx, [rsp + 0x80]
mov rcx, rbx
call fcn.14000a4a0
mov r13, qword [rbx]
mov rax, qword [r15 - 0x70]
xor ecx, ecx
cmp r13, rax
setns cl
movabs rbp, 0x7fffffffffffffff
add rcx, rbp
sub r13, rax
cmovo r13, rcx
xor eax, eax
cmp rdi, r14
setns al
add rax, rbp
mov qword [rsp + 0x50], rdi
mov rbx, rdi
mov qword [rsp + 0x48], r14
sub rbx, r14
movabs rdi, 0x8000000000000001
cmovo rbx, rax
cmp rbx, r13
mov r14, r13
cmovl r14, rbx
lea rdx, str.Scheduling.ThreadController.ActiveIntervalDuration
mov qword [rsp + 0x38], r12
mov rcx, r12
mov r8, rbx
mov r9, rbx
call fcn.1400030a0
lea rax, [r14 + rdi]
mov qword [rsp + 0x40], rax
cmp rax, 2
jb 0x140107632
xor eax, eax
cmp rbx, r14
setns al
add rax, rbp
mov r8, rbx
sub r8, r14
cmovo r8, rax
lea rdx, str.Scheduling.ThreadController.ActiveIntervalOffCpuDuration
mov r12, qword [rsp + 0x38]
mov rcx, r12
mov r9, rbx
call fcn.1400030a0
lea rdx, str.Scheduling.ThreadController.ActiveIntervalOnCpuDuration
mov rcx, r12
mov r8, r14
mov r9, rbx
call fcn.1400030a0
mov rax, qword [rsp + 0x48]
cmp qword [rsp + 0x50], rax
je 0x140107625
mov rax, r14
shr rax, 0x3f
movabs rdx, 0x8000000000000001
lea rcx, [rdx + rax]
add rcx, 0xfffffffffffffffe
imul rax, r14, 0x64
cmovo rax, rcx
lea rcx, [rax + rdx]
cmp rcx, 2
jb 0x140107657
cqo
idiv rbx
mov rcx, qword [rsp + 0x38]
mov edx, eax
mov r8, rbx
call fcn.140003920
mov rax, qword [r15 - 0x30]
test rax, rax
je 0x14010762f
cmp byte [rax + 0x18], 1
je 0x1401076f3
add r15, 0xffffffffffffff88
xorpd xmm0, xmm0
movupd xmmword [r15], xmm0
mov al, byte [rsi + 8]
test al, al
jne 0x14010702e
mov rax, qword [fcn.140119100]
lea rcx, [0x1401191b0]
cmp rax, rcx
jne 0x14010731f
lea rbx, [rsp + 0x80]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140107a1e
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c6d38]
mov qword [rsp + 0x80], rax
mov al, byte [rsi + 8]
cmp al, 1
je 0x1401076e3
test rsi, rsi
je 0x140107460
mov rax, qword [rsp + 0x80]
mov qword [rsi], rax
mov byte [rsi + 8], 1
mov al, 1
test al, al
je 0x140107395
mov rax, qword [rsi]
mov rcx, qword [rsp + 0x38]
mov qword [rcx], rax
jmp 0x140106288
mov rax, qword [0x1402b4e18]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1402a4f40]
lea rcx, [rax + 0x6218]
lea rdx, [0x1402b62c8]
mov qword [rax + 0x6218], rdx
mov qword [rax + 0x6220], rax
mov qword [rdi], rcx
mov ebx, dword [0x1402b62d4]
and ebx, esi
je 0x1401061e4
mov rax, qword [rdi]
jmp 0x1401062d6
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x14010641f
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x14010690d
lea edx, [rax + 1]
and edx, 0x3ff
and eax, 0xfffffc00
or eax, edx
mov word [rcx + 6], ax
mov eax, edx
jmp 0x14010660b
lea rcx, [r13 + 0x10]
mov rax, qword [r13 + 0x10]
mov rax, qword [rax + 8]
lea rdx, [rsp + 0x70]
call qword [0x1402a4f40]
mov rax, qword [r13 + 0x58]
sub rax, qword [r13 + 0x48]
add qword [r13 + 0x60], rax
movupd xmm0, xmmword [rsp + 0x70]
movupd xmmword [r13 + 0x48], xmm0
mov rax, qword [rsp + 0x70]
mov qword [r13 + 0x58], rax
jmp 0x14010654e
cvtsi2sd xmm0, rdx
divsd xmm0, qword [0x14028f550]
cvttsd2si ebx, xmm0
mov rcx, qword [rdi + 0x80]
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov edx, 6
mov r8d, ebx
call qword [0x1402a4f40]
movsxd rax, ebx
imul rcx, rax, 0x3e8
mov rax, qword [rdi + 0x50]
xor edx, edx
cmp rax, rcx
setns dl
add rdx, r12
sub rax, rcx
cmovo rax, rdx
mov qword [rdi + 0x50], rax
jmp 0x14010618b
mov rcx, rbp
call fcn.1400fcf40
jmp 0x1401071b4
mov rbp, qword [r13 + 0x68]
cmp qword [rbp + 0x10], 0
jne 0x14010719f
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x83], rax
mov dword [rsp + 0x8b], 0xaaaaaaaa
mov word [rsp + 0x80], 0x5b8
mov byte [rsp + 0x82], 1
mov rcx, qword [rbp]
mov rax, qword [rcx + 0x18]
lea rdx, [rax + 3]
cmp rdx, qword [rcx + 0x10]
ja 0x1401072ce
movzx r8d, word [rsp + 0x80]
mov r9b, byte [rsp + 0x82]
mov byte [rax + 2], r9b
mov word [rax], r8w
mov qword [rcx + 0x18], rdx
add dword [rbp + 0x20], 3
mov byte [r13 + 0xa0], 0
jmp 0x14010662f
mov rcx, qword [r13 + 0x40]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [rsp + 0x80]
call qword [0x1402a4f40]
mov rax, qword [r13 + 0x58]
sub rax, qword [r13 + 0x48]
add qword [r13 + 0x60], rax
movupd xmm0, xmmword [rsp + 0x80]
movupd xmmword [r13 + 0x48], xmm0
mov rax, qword [rsp + 0x80]
jmp 0x1401065b3
lea rcx, [rsp + 0x80]
call qword [0x1402a4f40]
jmp 0x1401060dd
cmp byte [rax + 0xe], 0
je 0x14010677f
lea rax, [rbp + 0x80]
mov rcx, qword [rbp + 0x10]
mov r9d, dword [rbp + 0x1c]
movzx r8d, word [rbp + 0x18]
mov qword [rsp + 0x80], 0
mov word [rsp + 0x88], 0
mov byte [rsp + 0x8a], 0
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x80]
call fcn.14001fd20
jmp 0x14010677f
mov r8d, 3
lea rdx, [rsp + 0x80]
call fcn.140147af0
jmp 0x140107216
mov rcx, rbp
xor edx, edx
call fcn.140181960
mov qword [rbp], rax
jmp 0x14010657f
mov rcx, r13
xor edx, edx
call fcn.140181960
mov qword [r13], rax
jmp 0x1401066e4
lea rcx, [rsp + 0x80]
call qword [0x1402a4f40]
jmp 0x140106e1e
lea rcx, [rsp + 0x80]
call qword [0x1402a4f40]
jmp 0x140107009
lea rcx, [0x140275393]
lea rdx, str....._third_partylibc_srcinclude_vector:622:_assertion__empty___failed:_back___called_on_an_empty_vector_n
call fcn.1401cf0c0
int3
int3
mov qword [rax], 0
mov r14, qword [rcx]
call fcn.14018fb90
mov rcx, r14
test r14, r14
jne 0x140107352
mov rax, qword [r13]
jmp 0x1401066e4
mov qword [rax], 0
mov rax, qword [rcx]
mov qword [rsp + 0x38], rax
call fcn.14018fb90
mov rax, qword [rsp + 0x38]
mov rcx, rax
test rax, rax
jne 0x140107372
mov rax, qword [rbp]
jmp 0x14010657f
lea rcx, [0x140275393]
lea rdx, str....._third_partylibc_srcincludeoptional:800:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.1401cf0c0
xor r9d, r9d
jmp 0x140106255
lea r8, [rdx + rax]
cmp r8, 2
setae r8b
cmp rdx, rcx
sete cl
or cl, r8b
je 0x140107a4e
dec rax
jmp 0x140107196
cmp byte [rdi + 0xa0], 0
jne 0x1401073f3
mov qword [rsp + 0x58], 0xa9
mov al, byte [0x1402c6979]
test al, al
jne 0x140107989
mov qword [rsp + 0x70], 0xa9
mov al, byte [0x1402c6979]
test al, al
jne 0x14010768b
mov qword [rsp + 0x70], 0xa9
mov al, byte [0x1402c6979]
test al, al
je 0x1401061af
cmp byte [rdi + 0x98], 0
je 0x140107395
movzx ecx, al
lea r9, [rdi + 0x88]
lea r8, [rsp + 0x80]
mov qword [r8], 0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x70]
call fcn.14020aaa0
jmp 0x1401061af
lea rcx, [0x140275393]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:40:_assertion___location___nullptr_failed:_null_pointer_given_to_construct_at_n
call fcn.1401cf0c0
mov rcx, qword [rsp + 0x80]
mov qword [rsi], rcx
jmp 0x140106103
call qword [0x1402a4f40]
jmp 0x140106496
call qword [0x1402a4f40]
jmp 0x1401067a5
mov rcx, qword [0x1402c6d38]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401060d5
movzx edi, al
lea rbx, [rsp + 0x80]
mov rcx, rsi
mov rdx, rbx
call fcn.1401096d0
lea r8, [rsp + 0x70]
mov qword [r8], 0
lea rdx, [rsp + 0x60]
mov ecx, edi
mov r9, rbx
call fcn.14020aa40
jmp 0x1401062a0
lea rcx, [rbp - 8]
call fcn.140009860
jmp 0x14010676f
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x1402a4f40]
mov rax, qword [rdi]
jmp 0x140106301
mov rcx, r13
lea rdx, [rsp + 0x60]
call qword [0x1402a4f40]
jmp 0x140106638
mov rcx, qword [r13 + 0x68]
mov edx, Ordinal_46
mov r8d, 1
call fcn.140182070
jmp 0x140106621
cmp byte [rax + 0xe], 0
je 0x14010655e
lea rax, [r13 + 0x88]
mov rcx, qword [r13 + 0x18]
mov r9d, dword [r13 + 0x24]
movzx r8d, word [r13 + 0x20]
mov qword [rsp + 0x80], 0
mov word [rsp + 0x88], 0
mov byte [rsp + 0x8a], 0
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x80]
call fcn.14001fd20
jmp 0x14010655e
mov rcx, qword [rsi]
lea rax, [0x1401d59f0]
mov qword [rsp + 0x98], rax
lea rax, [0x140276f40]
mov qword [rsp + 0xa0], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
lea rdx, [rsp + 0x80]
call qword [0x1402a4f40]
jmp 0x1401067b3
call fcn.14018fbdc
mov ecx, dword [rax]
call fcn.1401b399c
mov rsi, rax
call fcn.14018fbdc
mov edi, dword [rax]
lea rcx, str....._third_partyperfetto_src_tracingcore_trace_writer_impl.cc
call fcn.1401d5d60
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], edi
lea rcx, str.PERFETTO_CHECK_cur_packet___is_finalized___
mov qword [rsp + 0x20], rcx
lea r9, str._s__errno:__d___s_
mov ecx, 3
mov rdx, rax
mov r8d, Ordinal_127
call fcn.1401d6070
int3
mov eax, 0x64
jmp 0x140106f6e
int3
cmp rbx, r13
jle 0x140107a51
mov r8, r14
shr r8, 0x3f
not r8
movabs rax, 0x8000000000000001
add r8, rax
jmp 0x140106efe
movabs rcx, 0x8000000000000001
add rcx, rbx
cmp rcx, 1
jbe 0x140107a54
xor rax, rbx
shr rax, 0x3f
movabs rcx, 0x8000000000000001
add rax, rcx
add rax, 0xfffffffffffffffe
jmp 0x140106f6e
cmp byte [rdi + 0x98], 0
je 0x140107395
movzx ecx, al
lea rax, [rdi + 0x88]
lea rdx, str.IdleWork
lea r8, [rsp + 0x80]
mov qword [r8], rdx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x70]
mov r9d, 1
call fcn.140013790
jmp 0x14010740a
mov rcx, qword [rsp + 0x80]
mov qword [rsi], rcx
jmp 0x140106e43
mov rcx, qword [rsp + 0x80]
mov qword [rsi], rcx
jmp 0x14010702e
movabs rax, 0x8000000000000001
lea rcx, [rbx + rax]
mov rax, qword [r15 - 0x60]
cmp rcx, 2
jae 0x140107731
movabs rcx, 0x8000000000000001
add rcx, rax
cmp rcx, 2
setae cl
cmp rax, rbx
sete al
or al, cl
mov rax, rbx
jne 0x140107745
jmp 0x140107a45
lea rcx, [rax + rbx]
sar rcx, 0x3f
btc rcx, 0x3f
add rax, rbx
cmovo rax, rcx
mov qword [r15 - 0x60], rax
mov rcx, qword [r15 - 0x58]
cmp qword [rsp + 0x40], 1
jbe 0x140107781
xor edx, edx
cmp rbx, r14
setns dl
add rdx, rbp
sub rbx, r14
cmovo rbx, rdx
lea rdx, [rcx + r14]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, r14
cmovo rcx, rdx
mov qword [r15 - 0x58], rcx
jmp 0x1401077c7
movabs rdx, 0x8000000000000001
add rdx, rcx
cmp rdx, 2
setae dl
cmp rcx, r14
sete cl
or cl, dl
je 0x140107a57
mov qword [r15 - 0x58], r14
cmp rbx, r13
jle 0x140107a5a
shr r14, 0x3f
not r14
movabs rcx, 0x8000000000000001
add r14, rcx
mov rbx, r14
movabs rcx, 0x8000000000000001
lea rdx, [rbx + rcx]
mov rcx, qword [r15 - 0x50]
cmp rdx, 2
jae 0x140107802
movabs rdx, 0x8000000000000001
add rdx, rcx
cmp rdx, 2
setae dl
cmp rcx, rbx
sete cl
or cl, dl
jne 0x140107819
jmp 0x140107a48
lea rdx, [rcx + rbx]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rbx
cmovo rcx, rdx
mov rbx, rcx
mov qword [r15 - 0x50], rbx
mov rbx, qword [r15 - 0x68]
movabs rcx, 0x8000000000000001
add rcx, rbx
cmp rcx, 2
jae 0x140107851
movabs rcx, 0x8000000000000001
add rcx, rax
cmp rcx, 1
ja 0x140107865
cmp rax, rbx
je 0x140107865
jmp 0x140107a4b
lea rcx, [rax + rbx]
sar rcx, 0x3f
btc rcx, 0x3f
add rbx, rax
cmovo rbx, rcx
cmp rbx, 0xf4241
jl 0x140106f94
mov rcx, rax
shr rcx, 0x3f
movabs rdx, 0x8000000000000001
add rcx, rdx
add rcx, 0xfffffffffffffffe
imul rax, rax, 0x64
cmovo rax, rcx
lea rcx, [rax + rdx]
cmp rcx, 2
jb 0x140107a7e
cqo
idiv rbx
movsxd rcx, eax
cmp rcx, rax
jne 0x140107a66
lea rdx, str.Scheduling.ThreadController.ActiveVsWallTimePercentage
mov rcx, qword [rsp + 0x38]
mov r8d, eax
call fcn.14020a440
mov rax, qword [r15 - 0x58]
mov rcx, rax
shr rcx, 0x3f
movabs rdx, 0x8000000000000001
add rcx, rdx
add rcx, 0xfffffffffffffffe
imul rax, rax, 0x64
cmovo rax, rcx
lea rcx, [rax + rdx]
cmp rcx, 2
jb 0x140107aae
cqo
idiv rbx
movsxd rcx, eax
cmp rcx, rax
jne 0x140107a6e
lea rdx, str.Scheduling.ThreadController.ActiveOnCpuVsWallTimePercentage
mov rcx, qword [rsp + 0x38]
mov r8d, eax
call fcn.14020a440
mov rax, qword [r15 - 0x50]
mov rcx, rax
shr rcx, 0x3f
movabs rdx, 0x8000000000000001
add rcx, rdx
add rcx, 0xfffffffffffffffe
imul rax, rax, 0x64
cmovo rax, rcx
lea rcx, [rax + rdx]
cmp rcx, 2
jb 0x140107ade
cqo
idiv rbx
lea rdi, [r15 - 0x68]
movsxd rcx, eax
cmp rcx, rax
jne 0x140107a76
lea rdx, str.Scheduling.ThreadController.ActiveOffCpuVsWallTimePercentage
mov rcx, qword [rsp + 0x38]
mov r8d, eax
call fcn.14020a440
xorpd xmm0, xmm0
movupd xmmword [rdi + 0x10], xmm0
movupd xmmword [rdi], xmm0
jmp 0x140106f94
mov rcx, 0xfffffffffff0bdc0
add rcx, qword [rdi + 0x68]
movabs rdx, 0x8000000000000000
cmovno rdx, rcx
mov qword [rsp + 0x80], rdx
cmp byte [rdi + 0x98], 0
je 0x140107395
movzx ecx, al
lea rax, [rdi + 0x88]
lea rdx, str.MessagePumpPhases
lea r8, [rsp + 0x70]
mov qword [r8], rdx
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x58]
mov r9d, 3
call fcn.140013790
jmp 0x1401073f3
mov rcx, qword [0x1402c6d38]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140106e16
mov rcx, qword [0x1402c6d38]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140107001
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
movabs rcx, 0x8000000000000001
add rcx, rbx
cmp rcx, 1
jbe 0x140107a5d
xor rax, rbx
shr rax, 0x3f
movabs rcx, 0x8000000000000001
add rax, rcx
add rax, 0xfffffffffffffffe
jmp 0x1401078a5
movabs rcx, 0x8000000000000001
add rcx, rbx
cmp rcx, 1
jbe 0x140107a60
xor rax, rbx
shr rax, 0x3f
movabs rcx, 0x8000000000000001
add rax, rcx
add rax, 0xfffffffffffffffe
jmp 0x1401078fc
movabs rcx, 0x8000000000000001
add rcx, rbx
cmp rcx, 1
jbe 0x140107a63
xor rax, rbx
shr rax, 0x3f
movabs rcx, 0x8000000000000001
add rax, rcx
add rax, 0xfffffffffffffffe
jmp 0x140107953