Function at 0x140080e80
Capabilities:
Check for time delay via queryperformancecounter
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
movapd xmmword [rsp + 0xe0], xmm6
mov edi, r8d
mov rbx, rdx
mov qword [rsp + 0x38], rcx
mov rax, qword [0x14013a028]
xor rax, rsp
mov qword [rsp + 0xd8], rax
movabs r14, 0xfffffffc00000000
movapd xmm0, xmmword [0x140119af0]
movapd xmmword [rsp + 0x90], xmm0
movapd xmmword [rsp + 0x80], xmm0
movapd xmmword [rsp + 0x70], xmm0
movapd xmmword [rsp + 0x60], xmm0
lea rdx, str.ReadAtCurrentPos
lea r8, str....._base_files_file_win.cc
lea rcx, [rsp + 0x40]
mov r9d, 0x5f
call fcn.1400824a0
mov eax, dword [0x140148908]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r15, qword [rax + 0x168]
mov rax, r15
and rax, r14
cmp rax, qword [0x14013c508]
je 0x14008191d
mov qword [rsp + 0x60], r15
mov eax, dword [0x140148908]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rsi, [rax + 0x170]
mov r15, qword [rsi]
mov rax, r15
and rax, r14
cmp rax, qword [0x14013c508]
je 0x14008210e
lea rax, [rsp + 0x60]
mov qword [rax + 8], r15
mov qword [rax + 0x10], rsi
mov rcx, qword [rsi]
mov qword [rsi], rax
mov qword [rax + 0x18], rcx
mov rax, qword [rax + 8]
test rax, rax
jne 0x140081a14
xor ecx, ecx
movabs rsi, 0x8637bd05af7
mov byte [rsp + 0x80], cl
xor edx, edx
mov byte [rsp + 0x88], dl
mov byte [rsp + 0x98], dl
mov r8d, dword [0x140148908]
mov r9, qword gs:[0x58]
mov r8, qword [r9 + r8*8]
cmp byte [r8 + 0x180], dl
je 0x14008192a
test cl, cl
jne 0x140081b04
test rax, rax
jne 0x1400810ea
lea r15, [rsp + 0x88]
cmp byte [r15 + 0x10], 0
jne 0x14008215a
mov rax, qword [fcn.1400801d0]
lea rcx, [0x140080280]
cmp rax, rcx
jne 0x1400820ce
lea r15, [rsp + 0xa0]
mov qword [r15], 0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r15]
cmp rax, rsi
jge 0x1400821ff
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
mov r15, rax
mov qword [rsp + 0x88], r15
mov eax, dword [0x14014e738]
mov ecx, dword [0x140148908]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140081b90
lea rcx, [0x14014e730]
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140081d28
mov eax, dword [0x14014e758]
mov ecx, dword [0x140148908]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140081bc5
cmp qword [0x14014e750], 0
jne 0x140081990
mov qword [rsp + 0x90], 0
lea rcx, [0x14014e730]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r12, qword [rsp + 0x90]
test r12, r12
jne 0x14008196d
mov byte [rsp + 0x98], 1
mov r13, qword [rsp + 0x60]
test r13, r13
je 0x140081464
cmp qword [rsp + 0x68], 0
jne 0x140081464
cmp byte [r13 + 0x19], 0
je 0x140081464
mov rsi, qword [r13 + 8]
mov rax, qword [rsi + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x140081b86
mov ebp, dword [rsi + 0x50]
cmp dword [rsi + 0x54], ebp
jne 0x1400821aa
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xc0], rax
mov r15, qword [r13 + 0x28]
mov rax, qword [r15]
mov rax, qword [rax + 0x48]
lea rcx, [0x1400a3660]
cmp rax, rcx
jne 0x1400821df
mov ecx, 0x60
call fcn.1400a5638
mov r12, rax
mov rax, r15
and rax, r14
cmp rax, qword [0x14013c508]
movabs rsi, 0x8637bd05af7
je 0x140082185
mov qword [r12 + 8], r15
mov byte [r12 + 0x40], 0
xorpd xmm0, xmm0
movupd xmmword [r12 + 0x10], xmm0
movupd xmmword [r12 + 0x20], xmm0
lea rax, fcn.14008ecd0
mov qword [r12], rax
mov qword [r12 + 0x48], 0
mov qword [rsp + 0xc0], r12
mov r15, qword [r13 + 0x28]
add r15, 0x68
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140081ae8
mov rax, qword [0x14013c540]
lea rcx, [0x140080280]
cmp rax, rcx
mov dword [rsp + 0x34], edi
lea r12, [rsp + 0xa0]
jne 0x140081e7c
mov qword [r12], 0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r12]
cmp rax, rsi
jge 0x140082229
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
mov qword [r13 + 0x20], rax
cmp byte [r13 + 0x3b], 0
jne 0x14008135d
cmp byte [r13 + 0x19], 0
je 0x140082123
cmp byte [r13 + 0x18], 0
jne 0x140081256
mov rax, qword [r13 + 0x28]
inc dword [rax + 0x134]
mov rax, qword [r13 + 0x28]
inc dword [rax + 0x130]
mov r12, qword [r13 + 0x28]
cmp byte [r12 + 0x140], 0
jne 0x14008135d
mov rsi, rbx
mov r13, qword [rsp + 0xc0]
mov rbx, qword [r12 + 0x98]
mov rdi, qword [r12 + 0x128]
test rbx, rbx
jne 0x140081a1c
xor ebx, ebx
add rbx, rdi
cmp rbx, qword [r12 + 0x118]
ja 0x140081d3a
mov rbp, qword [r12 + 0x98]
mov rdi, qword [r12 + 0x120]
test rbp, rbp
jne 0x140081a82
xor ebp, ebp
mov rbx, qword [r12 + 0xa8]
add rbx, qword [r12 + 0xa0]
je 0x140081643
mov rax, qword [r12 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x140081643
mov rax, qword [r12 + 0x80]
cmp rax, qword [r12 + 0x88]
je 0x1400821cc
mov cl, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x140081342
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x14007ce30]
cmp rdx, r8
je 0x140081330
mov rax, rdx
call qword [0x14012eaa8]
lea rcx, [rbx + rax]
dec rcx
add rbx, rax
cmp rcx, 1
adc rbx, 0xffffffffffffffff
add rdi, rbp
lea rax, [rbx + rdi]
inc rax
cmp rax, qword [r12 + 0x110]
mov rbx, rsi
ja 0x1400816a8
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r15, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], 0
test r15, r15
je 0x140081460
mov rax, qword [r15]
mov rax, qword [rax]
lea rcx, [fcn.14008ecd0]
cmp rax, rcx
jne 0x1400821b9
lea rax, fcn.14008ecd0
mov qword [r15], rax
mov rbp, qword [r15 + 0x48]
lea rdi, [r15 + 0x50]
test bpl, 1
jne 0x140082136
lea r12, [r15 + 0x48]
cmp rbp, 2
jae 0x140081769
test rbp, rbp
jne 0x140081636
lea rax, [0x14011be50]
mov qword [r15], rax
mov rdx, qword [r15 + 0x28]
lea rbp, [r15 + 0x30]
mov rax, rdx
mov rdi, rbp
and rax, 1
jne 0x14008213e
lea r12, [r15 + 0x28]
mov r13, rdx
shr r13, 1
mov cl, 1
cmp rdx, 2
jae 0x140081bfa
mov rdx, rbp
test rax, rax
jne 0x140082147
test cl, cl
je 0x140081b4b
test rax, rax
jne 0x140082192
mov qword [r15 + 0x28], 0
cmp byte [r15 + 0x40], 0
jne 0x140081e8e
mov rdi, qword [r15 + 0x10]
test rdi, rdi
jne 0x14008180a
mov rcx, qword [r15 + 8]
mov rax, rcx
and rax, r14
cmp rax, qword [0x14013c508]
je 0x140082150
mov rcx, r15
call fcn.1400a5630
mov edi, dword [rsp + 0x34]
mov qword [rsp + 0xc8], 0xa
mov al, byte [0x14014b81a]
test al, al
jne 0x140081671
test edi, edi
js 0x1400820fa
lea r9, [rsp + 0xa0]
mov dword [r9], 0xaaaaaaaa
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
mov qword [rsp + 0x20], 0
mov rdx, rbx
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14008216f
mov esi, dword [rsp + 0xa0]
test esi, esi
js 0x14008211b
mov qword [rsp + 0x40], 0xa
mov al, byte [0x14014b81a]
test al, al
jne 0x14008164a
call fcn.1400a5674
mov ebp, dword [rax]
call fcn.1400a5674
mov dword [rax], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r15, qword [rsp + 0x60]
test r15, r15
je 0x140081593
cmp qword [rsp + 0x68], 0
jne 0x140081593
cmp byte [r15 + 0x19], 0
je 0x140081593
mov rbx, qword [r15 + 0x28]
add rbx, 0x68
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140081af6
mov qword [r15 + 0x20], 0
cmp byte [r15 + 0x3b], 0
jne 0x140081583
cmp byte [r15 + 0x39], 0
mov rax, qword [r15 + 0x28]
jne 0x1400818e1
dec dword [rax + 0x130]
cmp byte [r15 + 0x19], 0
je 0x140082123
cmp byte [r15 + 0x18], 0
jne 0x140081583
cmp byte [r15 + 0x3a], 0
mov rcx, qword [r15 + 0x28]
jne 0x1400821a0
dec dword [rcx + 0x134]
mov word [r15 + 0x39], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.1400a5674
mov dword [rax], ebp
cmp byte [rsp + 0x98], 0
je 0x1400815bd
mov rbx, qword [rsp + 0x90]
test rbx, rbx
jne 0x1400816bc
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1400815cf
mov rcx, qword [rsp + 0x78]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
and rax, r14
cmp rax, qword [0x14013c508]
je 0x140082104
mov qword [rsp + 0x68], 0
mov rcx, qword [rsp + 0x60]
and r14, rcx
cmp r14, qword [0x14013c508]
je 0x14008162f
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.1400a77a0
mov eax, esi
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14005dfe0
jmp 0x140081601
mov rcx, r12
call fcn.140069590
jmp 0x1400813cc
xor ebx, ebx
jmp 0x140081342
movzx ecx, al
lea r8, [rsp + 0xa0]
mov qword [r8], 0
lea rdx, [rsp + 0x40]
mov r9d, 2
call fcn.14005e780
jmp 0x1400814e0
movzx ecx, al
lea r9, [rsp + 0xa0]
lea rax, [rsp + 0x40]
mov qword [r9], rax
lea rax, str.ScopedBlockingCall
lea r8, [rsp + 0xd0]
mov qword [r8], rax
lea rdx, [rsp + 0xc8]
call fcn.140089af0
jmp 0x14008147e
cmp dword [r12 + 0x130], 0
jle 0x14008135d
jmp 0x140081d4c
mov rax, qword [fcn.1400801d0]
lea rcx, [0x140080280]
cmp rax, rcx
jne 0x1400820e4
lea rdi, [rsp + 0xa0]
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 0x140082274
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
mov qword [rsp + 0x40], rax
mov r12, qword [rsp + 0x88]
xor ecx, ecx
cmp rax, r12
setns cl
movabs r13, 0x7fffffffffffffff
add rcx, r13
mov r15, rax
sub r15, r12
cmovo r15, rcx
cmp r15, 0xf4240
jge 0x140081d5f
mov rdi, qword [rsp + 0x90]
test rdi, rdi
je 0x1400815bd
lock dec dword [rdi]
jne 0x1400815bd
jmp 0x140082253
mov qword [rsp + 0x28], rbx
shr rbp, 1
shl rbp, 3
xor ebx, ebx
mov r13, qword [rdi + rbx]
test r13, r13
je 0x140082268
mov eax, 1
lock xadd dword [r13 + 8], eax
cmp eax, 0x7fffffff
je 0x140082250
mov qword [rsp + 0xc8], 0x9b
mov al, byte [0x14014b8ab]
test al, al
jne 0x1400822cc
mov rax, qword [r13 + 0x70]
lea rdx, [rax + 8]
cmp byte [rax + 0x10], 0
je 0x1400817ef
lea rsi, [r13 + 8]
mov rcx, qword [rdx]
call qword [sym.imp.KERNEL32.dll_SetEvent]
lock dec dword [rsi]
je 0x14008229b
add rbx, 8
cmp rbp, rbx
jne 0x140081777
mov rbp, qword [r12]
mov rbx, qword [rsp + 0x28]
jmp 0x1400813c3
mov qword [rsp + 0xc8], 0x164
mov al, byte [0x14014b974]
test al, al
je 0x1400817c2
jmp 0x140082326
mov rsi, rbx
mov rbx, qword [r15 + 0x18]
mov rcx, rdi
cmp rbx, rdi
je 0x1400818d0
add rbx, 0xfffffffffffffff0
lea r12, [rsp + 0xa0]
test rbx, rbx
je 0x140082313
mov r8, qword [rbx]
test r8, r8
je 0x14008185c
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14008185c
mov qword [rbx], 0
mov rdx, r12
call fcn.140068950
mov r8, qword [rsp + 0xa0]
jmp 0x14008186b
mov qword [rsp + 0xa0], r8
mov qword [rbx], 0
test r8, r8
je 0x140081884
lock dec dword [r8 + 8]
jne 0x140081884
mov rcx, r8
mov edx, 1
call fcn.140070920
mov rcx, qword [rbx + 8]
mov rax, rcx
and rax, r14
cmp rax, qword [0x14013c508]
jne 0x14008189c
call fcn.14005e390
mov qword [rbx + 8], 0
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400818bc
lock dec dword [rcx + 8]
jne 0x1400818bc
mov edx, 1
call fcn.140070920
lea rax, [rbx - 0x10]
cmp rbx, rdi
mov rbx, rax
jne 0x140081829
mov rcx, qword [r15 + 0x10]
mov qword [r15 + 0x18], rdi
call fcn.1400a5630
mov rbx, rsi
jmp 0x140081441
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x110]
dec rdx
mov qword [rax + 0x110], rdx
cmp rcx, qword [rax + 0x88]
je 0x14008190f
cmp qword [rax + 0x120], rdx
jae 0x140081d18
mov word [rax + 0xb8], 0
jmp 0x14008155c
mov rcx, r15
call fcn.14005de80
jmp 0x140080f34
mov eax, dword [0x140151a6c]
mov ecx, dword [0x140148908]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140081c9a
cmp byte [0x140151a68], 0
jne 0x1400810ea
mov cl, byte [rsp + 0x80]
mov rax, qword [rsp + 0x68]
jmp 0x140080fd1
mov rax, qword [r12 + 0x1f0]
cmp qword [rsp + 0x88], rax
jge 0x1400810e2
mov qword [rsp + 0x88], rax
jmp 0x1400810e2
mov rbp, rbx
mov esi, edi
mov eax, dword [0x14014e748]
mov ecx, dword [0x140148908]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140081ce3
mov rdi, qword [0x14014e740]
mov rbx, r15
test rdi, rdi
je 0x140081f13
mov eax, 0x3938700
add rax, qword [rdi + 0x1f0]
movabs rbx, 0x7fffffffffffffff
cmovno rbx, rax
cmp rbx, r15
jle 0x140081f13
mov qword [rsp + 0x90], rdi
mov eax, 1
lock xadd dword [rdi], eax
cmp eax, 0x7fffffff
mov edi, esi
mov rbx, rbp
jne 0x1400810c4
int3
mov cl, byte [rax + 0x20]
jmp 0x140080f8f
mov rax, qword [r12 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x140081297
mov rax, qword [r12 + 0x80]
cmp rax, qword [r12 + 0x88]
je 0x1400821cc
cmp byte [rax + 0x10], 0
jne 0x140081299
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x14007ce30]
cmp rdx, r8
jne 0x1400822b0
lea rcx, [rbx + rax]
dec rcx
add rbx, rax
cmp rcx, 1
adc rbx, 0xffffffffffffffff
jmp 0x140081299
mov rax, qword [r12 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x1400812c3
mov rax, qword [r12 + 0x80]
cmp rax, qword [r12 + 0x88]
je 0x1400821cc
cmp byte [rax + 0x10], 0
jne 0x1400812c5
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x14007ce30]
cmp rdx, r8
jne 0x1400822be
lea rcx, [rax + rbp]
dec rcx
add rbp, rax
cmp rcx, 1
adc rbp, 0xffffffffffffffff
jmp 0x1400812c5
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1400811da
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140081538
test rax, rax
je 0x1400810ea
cmp byte [rax + 0x38], 0
je 0x1400810ea
mov r15, qword [rax + 0x30]
mov qword [rax + 0x30], 0
test r15, r15
je 0x1400810ea
lock dec dword [r15]
jne 0x1400810ea
mov rcx, r15
call fcn.14000d100
mov rcx, r15
call fcn.1400a5630
jmp 0x1400810ea
lea rdi, [rdx + r13*8]
add rdi, 0xfffffffffffffff8
neg r13
test rdi, rdi
je 0x140082313
mov rsi, qword [rdi]
test rsi, rsi
je 0x140081b71
lock dec dword [rsi + 8]
je 0x14008239f
add rdi, 0xfffffffffffffff8
inc r13
jne 0x140081b56
mov rax, qword [r12]
and eax, 1
jmp 0x140081418
mov ebp, 3
jmp 0x140081128
lea rcx, [0x14014e738]
call fcn.1400a56f4
cmp dword [0x14014e738], 0xffffffff
jne 0x140081070
mov qword [0x14014e730], 0
lea rcx, [0x14014e738]
call fcn.1400a5694
jmp 0x140081070
lea rcx, [0x14014e758]
call fcn.1400a56f4
cmp dword [0x14014e758], 0xffffffff
jne 0x1400810aa
mov qword [0x14014e750], 0
lea rcx, [0x14014e758]
call fcn.1400a5694
jmp 0x1400810aa
mov qword [rsp + 0x28], rbx
shl r13, 3
xor ebx, ebx
mov rsi, qword [rdi + rbx]
test rsi, rsi
je 0x140081c23
mov eax, 1
lock xadd dword [rsi + 8], eax
cmp eax, 0x7fffffff
je 0x140082373
mov rax, qword [r15 + 8]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x140081c49
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x140082376
mov rcx, rsi
call fcn.140017de0
mov rcx, qword [r15 + 8]
cmp byte [rcx + 0x180], 0
jne 0x140082379
test rsi, rsi
je 0x140081c71
lock dec dword [rsi + 8]
je 0x14008238a
add rbx, 8
cmp r13, rbx
jne 0x140081c05
mov rcx, qword [r12]
mov r13, rcx
shr r13, 1
mov eax, ecx
and eax, 1
cmp rcx, 2
setb cl
mov rbx, qword [rsp + 0x28]
jmp 0x140081404
lea rcx, [0x140151a6c]
call fcn.1400a56f4
cmp dword [0x140151a6c], 0xffffffff
jne 0x14008194f
mov rcx, qword [0x14014bae0]
test rcx, rcx
je 0x140081ccb
lea rdx, str.enable_background_thread_pool
call fcn.140061360
mov byte [0x140151a68], 1
lea rcx, [0x140151a6c]
call fcn.1400a5694
jmp 0x14008194f
lea rcx, [0x14014e748]
call fcn.1400a56f4
cmp dword [0x14014e748], 0xffffffff
jne 0x1400819ba
mov qword [0x14014e740], 0
lea rcx, [0x14014e748]
call fcn.1400a5694
jmp 0x1400819ba
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x14008155c
lea rcx, [0x14014e730]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140081085
mov rbx, rsi
cmp dword [r12 + 0x134], 0
jle 0x1400812aa
mov al, 1
mov byte [r13 + 0x40], al
mov byte [r12 + 0x140], al
jmp 0x14008135d
mov ecx, 0x3938700
add rcx, qword [rbx + 0x1f0]
cmovo rcx, r13
cmp rcx, rax
jle 0x14008242c
mov rax, qword [rbx + 0x1f0]
xor edx, edx
cmp r12, rax
setns dl
add rdx, r13
mov rcx, r12
sub rcx, rax
movabs rdi, 0x8000000000000001
cmovo rcx, rdx
lea rdx, [rcx + rdi]
cmp rdx, 2
jb 0x140082413
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x1401277d0]
call fcn.1400d6208
movsd xmm6, qword [0x1401277d8]
ucomisd xmm6, xmm0
jb 0x1400823ba
maxsd xmm0, qword [0x1401277e0]
cvttsd2si ebp, xmm0
add rdi, r15
cmp rdi, 2
jae 0x140081def
movsd xmm0, qword [0x1401277e8]
jmp 0x140081dff
xorps xmm0, xmm0
cvtsi2sd xmm0, r15
divsd xmm0, qword [0x1401277d0]
call fcn.1400d62b8
ucomisd xmm6, xmm0
jb 0x1400823d1
maxsd xmm0, qword [0x1401277e0]
cvttsd2si r15d, xmm0
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
add r15d, ebp
cmp r15d, 0x3c
mov r12d, 0x3c
cmovl r12d, r15d
lea rdi, [rbx + 8]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140081e71
cmp ebp, r12d
jge 0x140081e5c
movsxd rax, ebp
movsxd rcx, r12d
inc qword [rbx + rax*8 + 0x10]
inc rax
cmp rcx, rax
jne 0x140081e4f
mov rcx, rdi
call r13
cmp r15d, 0x3d
jl 0x14008174a
jmp 0x1400823f9
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140081e44
mov rcx, r12
call qword [0x14012eaa8]
mov rax, qword [r12]
jmp 0x14008122b
mov rcx, qword [r15 + 8]
call fcn.1400d88d0
cmp qword [r15 + 0x28], 0
je 0x140081434
mov rcx, r12
call fcn.140103510
jmp 0x140081434
cmp byte [rdi + 0x200], 0
jne 0x140081fa4
test r12, r12
je 0x140081ed7
mov eax, 1
lock xadd dword [r12], eax
cmp eax, 0x7fffffff
je 0x14008247c
mov r13, qword [rdi + 0x1f8]
mov qword [rdi + 0x1f8], r12
test r13, r13
je 0x140081fa4
jmp 0x14008247f
lock dec dword [r13]
jne 0x140081fd6
mov rcx, r13
call fcn.14000d100
mov rcx, r13
call fcn.1400a5630
jmp 0x140081fd6
xor eax, eax
cmp r15, rbx
setns al
movabs rcx, 0x7fffffffffffffff
add rax, rcx
mov rcx, r15
sub rcx, rbx
cmovo rcx, rax
cmp rcx, 0x989680
jge 0x1400823ea
mov ecx, 0x208
call fcn.1400a5638
mov r12, rax
mov dword [rax], 0
lea rcx, [rax + 8]
mov r8d, 0x1e8
xor edx, edx
call fcn.1400a98e0
mov qword [r12 + 0x1f0], rbx
mov qword [r12 + 0x1f8], 0
mov byte [r12 + 0x200], 0
test r12, r12
je 0x140081f9b
mov eax, 1
lock xadd dword [r12], eax
cmp eax, 0x7fffffff
je 0x1400823b4
test rdi, rdi
jne 0x140081eaf
test r12, r12
je 0x140081fbf
mov eax, 1
lock xadd dword [r12], eax
cmp eax, 0x7fffffff
je 0x1400823b7
mov r13, qword [0x14014e740]
mov qword [0x14014e740], r12
test r13, r13
jne 0x140081ef3
lea rcx, [0x14014e730]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r12 + 0x1f0]
xor edx, edx
cmp r15, rax
setns dl
movabs rcx, 0x7fffffffffffffff
add rdx, rcx
mov rcx, r15
sub rcx, rax
movabs rdi, 0x8000000000000001
cmovo rcx, rdx
lea rdx, [rcx + rdi]
cmp rdx, 2
jb 0x140082469
mov edi, 0x3938700
xor eax, eax
cmp rdi, rcx
setns al
movabs rdx, 0x7fffffffffffffff
add rax, rdx
sub rdi, rcx
cmovo rdi, rax
mov ecx, 0x28
call fcn.1400a5638
mov r15, rax
mov dword [rax], 1
lea rax, [0x140055df0]
mov qword [r15 + 8], rax
lea rax, [0x140052d50]
mov qword [r15 + 0x10], rax
lea rax, [0x1400f5560]
mov qword [r15 + 0x18], rax
lea rdx, str.MonitorNextJankWindowIfNecessary
lea r8, str....._base_threading_scoped_blocking_call_internal.cc
lea r13, [rsp + 0xa0]
mov rcx, r13
mov r9d, 0xca
call fcn.1400824a0
lea r9, [rsp + 0xd0]
mov qword [r9], r15
mov qword [rsp + 0x20], rdi
lea r8, [0x1401285dd]
xor ecx, ecx
mov rdx, r13
call fcn.14000ce60
mov qword [rsp + 0x90], r12
mov edi, esi
mov rbx, rbp
jmp 0x1400810d9
mov rcx, r15
call qword [0x14012eaa8]
mov r15, qword [rsp + 0x88]
jmp 0x14008104b
lea rdi, [rsp + 0x40]
mov rcx, rdi
call qword [0x14012eaa8]
mov rax, qword [rdi]
jmp 0x140081716
mov esi, 0xffffffff
jmp 0x1400814c9
call fcn.14005dfe0
jmp 0x1400815e7
mov rcx, r15
call fcn.14005de80
jmp 0x140080f69
int3
lea rcx, [0x14011cbdc]
lea rdx, str....._third_partylibc_srcincludeoptional:801:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.1400da0b0
mov rdi, qword [rdi]
jmp 0x1400813b5
mov rdi, qword [rbp]
jmp 0x1400813ee
mov rdx, qword [rbp]
jmp 0x140081410
call fcn.14005dfe0
jmp 0x140081458
mov rcx, r15
call fcn.1400fa3e0
mov byte [rsp + 0x98], 0
jmp 0x140080ff5
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
cmp eax, 0x26
setne sil
neg esi
jmp 0x1400814c9
mov rcx, r15
call fcn.14005de80
jmp 0x140081188
mov rcx, qword [rbp]
call fcn.1400a5630
jmp 0x140081421
call fcn.140103310
jmp 0x140081583
mov ecx, ebp
call fcn.140004a80
mov dword [rsi + 0x54], ebp
jmp 0x140081131
mov rcx, r15
mov edx, 1
call qword [0x14012eaa8]
jmp 0x140081460
lea rcx, [0x14011cbdc]
lea rdx, str....._third_partylibc_srcinclude_vector:618:_assertion__empty___failed:_front___called_on_an_empty_vector_n
call fcn.1400da0b0
lea rdx, [rsp + 0xc0]
mov rcx, r15
call qword [0x14012eaa8]
movabs rsi, 0x8637bd05af7
jmp 0x1400811c1
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov r15, rax
add r15, r8
jmp 0x140081043
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14008122b
int3
mov rcx, rdi
call fcn.14000d100
mov rcx, rdi
call fcn.1400a5630
jmp 0x1400815bd
xor ecx, ecx
call fcn.1400a5460
jmp 0x1400817d8
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x140081711
mov rcx, r13
call fcn.1400d89c0
mov rcx, r13
call fcn.1400a5630
jmp 0x1400817d8
mov rax, rdx
call qword [0x14012eaa8]
jmp 0x140081a6b
mov rax, rdx
call qword [0x14012eaa8]
jmp 0x140081ad1
movzx ecx, al
mov rax, qword [0x140149db0]
xor rax, r13
lea rdx, [rsp + 0xa0]
mov qword [rdx], rax
lea rax, str.WorkerThreadWaitableEvent::WakeUp
lea r8, [rsp + 0xd0]
mov qword [r8], rax
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0xc8]
mov r9d, 3
call fcn.140013dc0
jmp 0x1400817b4
lea rcx, [0x14011cbdc]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.1400da0b0
movzx ecx, al
mov rax, qword [0x140149db0]
xor rax, rdx
mov rsi, rdx
lea rdx, [rsp + 0xa0]
mov qword [rdx], rax
lea rax, str.WaitableEvent::Signal
lea r8, [rsp + 0xd0]
mov qword [r8], rax
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0xc8]
mov r9d, 3
call fcn.140013dc0
mov rdx, rsi
jmp 0x1400817c2
int3
int3
add rcx, 0x170
call fcn.14008df30
jmp 0x140081c62
mov rcx, rsi
call fcn.1400d89c0
mov rcx, rsi
call fcn.1400a5630
jmp 0x140081c71
mov rcx, rsi
call fcn.1400d89c0
mov rcx, rsi
call fcn.1400a5630
jmp 0x140081b71
int3
int3
xor eax, eax
ucomisd xmm0, qword [0x1401277e0]
mov ebp, 0x7fffffff
cmovb ebp, eax
jmp 0x140081ddc
xor eax, eax
ucomisd xmm0, qword [0x1401277e0]
mov r15d, 0x7fffffff
cmovb r15d, eax
jmp 0x140081e1b
mov byte [rdi + 0x200], 1
mov rbx, r15
jmp 0x140081f3f
mov rbx, qword [rbx + 0x1f8]
sub r15d, r12d
xor ebp, ebp
test rbx, rbx
jne 0x140081e22
jmp 0x14008174a
xor ecx, ecx
cmp rax, r12
setg cl
lea rax, [0x1401277c0]
movsd xmm0, qword [rax + rcx*8]
jmp 0x140081db1
lea rdi, [rsp + 0xa0]
mov rcx, rdi
mov rdx, rax
call fcn.1400559e0
mov rdi, qword [rdi]
test rdi, rdi
je 0x140081d78
lock dec dword [rdi]
jne 0x140081d78
mov rcx, rdi
call fcn.14000d100
mov rcx, rdi
call fcn.1400a5630
jmp 0x140081d78
xor ecx, ecx
cmp rax, r15
setg cl
not rcx
add rdi, rcx
jmp 0x140082043
int3
lock dec dword [r13]
jne 0x140081fa4
mov rcx, r13
call fcn.14000d100
mov rcx, r13
call fcn.1400a5630
jmp 0x140081fa4