Function at 0x140092650
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, 0xd8
movapd xmmword [rsp + 0xc0], xmm6
mov esi, r8d
mov rdi, rdx
mov rbx, rcx
mov rax, qword [0x140174028]
xor rax, rsp
mov qword [rsp + 0xb8], rax
movabs r13, 0xfffffffc00000000
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xb0], rax
movapd xmm0, xmmword [0x14015bb90]
movapd xmmword [rsp + 0xa0], xmm0
movapd xmmword [rsp + 0x90], xmm0
movapd xmmword [rsp + 0x80], xmm0
movapd xmmword [rsp + 0x70], xmm0
lea rdx, str.ReadAtCurrentPos
lea r8, str....._base_files_file_win.cc
lea rcx, [rsp + 0x28]
mov r9d, 0x5f
call fcn.140093320
mov eax, dword [0x140183a44]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14, qword [rax + 0x170]
mov rax, r14
and rax, r13
cmp rax, qword [0x140183548]
je 0x140092b6e
mov qword [rsp + 0x70], r14
mov eax, dword [0x140183a44]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea r15, [rax + 0x178]
mov r14, qword [r15]
mov rax, r14
and rax, r13
cmp rax, qword [0x140183548]
je 0x1400931d3
lea rax, [rsp + 0x70]
mov qword [rax + 8], r14
mov qword [rax + 0x10], r15
mov rcx, qword [r15]
mov qword [r15], rax
mov qword [rax + 0x18], rcx
mov rax, qword [rax + 8]
test rax, rax
jne 0x140092b7b
xor ecx, ecx
mov byte [rsp + 0x90], cl
mov byte [rsp + 0x98], 0
mov edx, dword [0x140183a44]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
cmp byte [rdx + 0x180], 0
je 0x140092b37
test cl, cl
jne 0x140092c09
test rax, rax
jne 0x1400928d2
lea r14, [rsp + 0xa0]
cmp byte [r14 - 8], 0
jne 0x1400931e8
mov rax, qword [fcn.14007e570]
lea rcx, [0x1400b9ff0]
cmp rax, rcx
jne 0x140093191
lea r14, [rsp + 0x48]
mov qword [r14], 0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r14]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x140093223
imul rax, rax, 0xf4240
cqo
idiv qword [0x140186968]
mov rbp, rax
mov qword [rsp + 0xa0], rbp
mov eax, dword [0x14018a120]
mov ecx, dword [0x140183a44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140092ca0
lea rcx, [0x14018a118]
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14009317f
mov eax, dword [0x14018a140]
mov ecx, dword [0x140183a44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140092cd5
cmp qword [0x14018a138], 0
jne 0x140092b83
mov qword [rsp + 0xa8], 0
lea rcx, [0x14018a118]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r15, qword [rsp + 0xa8]
test r15, r15
je 0x1400928ca
mov rax, qword [r15 + 0x1f0]
cmp qword [rsp + 0xa0], rax
jl 0x140093213
mov byte [rsp + 0x98], 1
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x1400928eb
cmp qword [rsp + 0x78], 0
jne 0x1400928eb
xor edx, edx
call fcn.1400a6780
test esi, esi
js 0x1400931bd
lea r9, [rsp + 0x48]
mov dword [r9], 0xaaaaaaaa
mov rcx, qword [rbx]
mov qword [rsp + 0x20], 0
mov rdx, rdi
mov r8d, esi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400931fd
mov esi, dword [rsp + 0x48]
test esi, esi
js 0x1400931e0
call fcn.1400bac38
mov ebp, dword [rax]
call fcn.1400bac38
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 r14, qword [rsp + 0x70]
test r14, r14
je 0x1400929de
cmp qword [rsp + 0x78], 0
jne 0x1400929de
cmp byte [r14 + 0x18], 0
je 0x1400929de
mov rbx, qword [r14 + 0x28]
add rbx, 0x28
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140092c50
mov qword [r14 + 0x20], 0
cmp byte [r14 + 0x3b], 0
jne 0x1400929ce
cmp byte [r14 + 0x39], 0
mov rax, qword [r14 + 0x28]
jne 0x140092c21
dec dword [rax + 0x140]
cmp byte [r14 + 0x18], 0
je 0x1400931d1
cmp byte [r14 + 0x19], 0
jne 0x1400929ce
cmp byte [r14 + 0x3a], 0
mov rcx, qword [r14 + 0x28]
jne 0x14009324d
dec dword [rcx + 0x144]
mov word [r14 + 0x39], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.1400bac38
mov dword [rax], ebp
cmp byte [rsp + 0x98], 0
je 0x140092ab8
mov r14, qword [rsp + 0xa8]
test r14, r14
je 0x140092ab0
mov rax, qword [fcn.14007e570]
lea rcx, [0x1400b9ff0]
cmp rax, rcx
jne 0x1400931a7
lea rdi, [rsp + 0x48]
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 0x140093273
imul rax, rax, 0xf4240
cqo
idiv qword [0x140186968]
mov rdi, rax
mov qword [rsp + 0x28], rdi
mov r15, qword [rsp + 0xa0]
xor eax, eax
cmp rdi, r15
setns al
movabs rbp, 0x7fffffffffffffff
add rax, rbp
mov r12, rdi
sub r12, r15
cmovo r12, rax
cmp r12, 0xf4240
jge 0x140092d64
mov rdi, qword [rsp + 0xa8]
test rdi, rdi
je 0x140092ab0
lock dec dword [rdi]
je 0x14009325e
mov byte [rsp + 0x98], 0
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x140092ad0
mov rcx, qword [rsp + 0x88]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
and rax, r13
cmp rax, qword [0x140183548]
je 0x1400931c7
mov qword [rsp + 0x78], 0
mov rcx, qword [rsp + 0x70]
and r13, rcx
cmp r13, qword [0x140183548]
je 0x140092b30
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.1400bce30
mov eax, esi
movaps xmm6, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14007d5f0
jmp 0x140092b02
mov eax, dword [0x14018c9cc]
mov ecx, dword [0x140183a44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140092d0a
cmp byte [0x14018c9c8], 0
jne 0x1400928d2
jmp 0x140092d53
mov rcx, r14
call fcn.14007cc60
jmp 0x140092717
mov cl, byte [rax + 0x20]
jmp 0x140092772
mov eax, dword [0x14018a130]
mov ecx, dword [0x140183a44]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140092c6b
mov r12, qword [0x14018a128]
mov r14, rbp
test r12, r12
je 0x140092edd
mov rax, qword [r12 + 0x1f0]
mov r14d, 0x3938700
lea rcx, [r14 + rax]
sar rcx, 0x3f
btc rcx, 0x3f
add r14, rax
cmovo r14, rcx
cmp r14, rbp
jle 0x140092edd
mov qword [rsp + 0xa8], r12
mov eax, 1
lock xadd dword [r12], eax
cmp eax, 0x7fffffff
jne 0x14009289b
jmp 0x140093220
test rax, rax
je 0x1400928d2
cmp byte [rax + 0x28], 0
je 0x1400928d2
jmp 0x1400932dd
mov rcx, qword [rax + 0x40]
mov rdx, qword [rax + 0x120]
dec rdx
mov qword [rax + 0x120], rdx
cmp rcx, qword [rax + 0x48]
je 0x140092c45
cmp qword [rax + 0x130], rdx
jae 0x140092c5e
mov word [rax + 0x78], 0
jmp 0x1400929a7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140092983
movzx ecx, word [rcx + 0x10]
mov word [rax + 0x78], cx
jmp 0x1400929a7
lea rcx, [0x14018a130]
call fcn.1400bac58
cmp dword [0x14018a130], 0xffffffff
jne 0x140092ba8
mov qword [0x14018a128], 0
lea rcx, [0x14018a130]
call fcn.1400baf38
jmp 0x140092ba8
lea rcx, [0x14018a120]
call fcn.1400bac58
cmp dword [0x14018a120], 0xffffffff
jne 0x140092847
mov qword [0x14018a118], 0
lea rcx, [0x14018a120]
call fcn.1400baf38
jmp 0x140092847
lea rcx, [0x14018a140]
call fcn.1400bac58
cmp dword [0x14018a140], 0xffffffff
jne 0x140092881
mov qword [0x14018a138], 0
lea rcx, [0x14018a140]
call fcn.1400baf38
jmp 0x140092881
lea rcx, [0x14018c9cc]
call fcn.1400bac58
cmp dword [0x14018c9cc], 0xffffffff
jne 0x140092b5c
mov rcx, qword [0x140186af0]
test rcx, rcx
je 0x140092d3b
lea rdx, str.enable_background_thread_pool
call fcn.140080220
mov byte [0x14018c9c8], 1
lea rcx, [0x14018c9cc]
call fcn.1400baf38
jmp 0x140092b5c
mov cl, byte [rsp + 0x90]
mov rax, qword [rsp + 0x78]
jmp 0x1400927a1
mov rax, qword [r14 + 0x1f0]
mov ecx, 0x3938700
lea rdx, [rcx + rax]
sar rdx, 0x3f
btc rdx, 0x3f
add rcx, rax
cmovo rcx, rdx
cmp rcx, rdi
jle 0x1400932a3
mov rax, qword [r14 + 0x1f0]
xor edx, edx
cmp r15, rax
setns dl
add rdx, rbp
mov rcx, r15
sub rcx, rax
movabs rbp, 0x8000000000000001
cmovo rcx, rdx
lea rdx, [rcx + rbp]
cmp rdx, 2
jb 0x1400930f9
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x14015ece0]
call fcn.1400f3130
movsd xmm6, qword [0x14014ce50]
ucomisd xmm6, xmm0
jb 0x1400930e2
maxsd xmm0, qword [0x14014ce68]
cvttsd2si ebx, xmm0
add rbp, r12
cmp rbp, 2
jb 0x1400930c9
xorps xmm0, xmm0
cvtsi2sd xmm0, r12
divsd xmm0, qword [0x14015ece0]
xorpd xmm1, xmm1
ucomisd xmm0, xmm1
jb 0x1400930b7
addsd xmm0, qword [0x14014ca10]
call fcn.1400f3130
ucomisd xmm6, xmm0
jb 0x1400930a0
maxsd xmm0, qword [0x14014ce68]
cvttsd2si ebp, xmm0
mov r12, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
add ebp, ebx
cmp ebp, 0x3c
mov r15d, 0x3c
cmovl r15d, ebp
lea rdi, [r14 + 8]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14009314b
cmp ebx, r15d
jge 0x140092e82
movsxd rax, ebx
movsxd rcx, r15d
inc qword [r14 + rax*8 + 0x10]
inc rax
cmp rcx, rax
jne 0x140092e75
mov rcx, rdi
call r12
cmp ebp, 0x3d
jl 0x140092a9a
jmp 0x140093112
cmp byte [r12 + 0x200], 0
jne 0x140092f6a
test r15, r15
je 0x140092ebf
mov eax, 1
lock xadd dword [r15], eax
cmp eax, 0x7fffffff
je 0x140093311
mov r14, qword [r12 + 0x1f8]
mov qword [r12 + 0x1f8], r15
test r14, r14
je 0x140092f6a
jmp 0x14009312c
xor eax, eax
cmp rbp, r14
setns al
movabs rcx, 0x7fffffffffffffff
add rax, rcx
mov rcx, rbp
sub rcx, r14
cmovo rcx, rax
cmp rcx, 0x989680
jge 0x140093159
mov ecx, 0x208
call fcn.1400babfc
mov r15, rax
mov dword [rax], 0
lea rcx, [rax + 8]
mov r8d, 0x1e8
xor edx, edx
call fcn.1400bef60
mov qword [r15 + 0x1f0], r14
mov qword [r15 + 0x1f8], 0
mov byte [r15 + 0x200], 0
test r15, r15
je 0x140092f61
mov eax, 1
lock xadd dword [r15], eax
cmp eax, 0x7fffffff
je 0x14009329d
test r12, r12
jne 0x140092e96
test r15, r15
je 0x140092f84
mov eax, 1
lock xadd dword [r15], eax
cmp eax, 0x7fffffff
je 0x1400932a0
mov r12, qword [0x14018a128]
mov qword [0x14018a128], r15
test r12, r12
jne 0x140093080
lea rcx, [0x14018a118]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r15 + 0x1f0]
xor r8d, r8d
cmp rbp, rax
setns r8b
movabs r9, 0x7fffffffffffffff
add r8, r9
mov rcx, rbp
sub rcx, rax
movabs rdx, 0x8000000000000001
cmovo rcx, r8
lea r8, [rcx + rdx]
cmp r8, 2
jb 0x14009316a
mov r12d, 0x3938700
xor eax, eax
cmp r12, rcx
setns al
add rax, r9
sub r12, rcx
cmovo r12, rax
mov ecx, 0x28
call fcn.1400babfc
mov r14, rax
mov dword [rax], 1
lea rax, [0x1400f4f40]
mov qword [r14 + 8], rax
lea rax, [0x1400f50a0]
mov qword [r14 + 0x10], rax
lea rax, [0x140111820]
mov qword [r14 + 0x18], rax
lea rdx, str.MonitorNextJankWindowIfNecessary
lea r8, str....._base_threading_scoped_blocking_call_internal.cc
lea rbp, [rsp + 0x48]
mov rcx, rbp
mov r9d, 0xca
call fcn.140093320
lea r9, [rsp + 0x68]
mov qword [r9], r14
mov qword [rsp + 0x20], r12
lea r8, [0x140160779]
xor ecx, ecx
mov rdx, rbp
call fcn.140098ec0
mov qword [rsp + 0xa8], r15
jmp 0x1400928b0
lock dec dword [r12]
jne 0x140092f9b
mov rcx, r12
call fcn.14000b6b0
mov rcx, r12
call fcn.1400bab7c
jmp 0x140092f9b
xor eax, eax
ucomisd xmm0, qword [0x14014ce68]
mov ebp, 0x7fffffff
cmovb ebp, eax
jmp 0x140092e3f
addsd xmm0, qword [0x14014ce58]
call fcn.1400f27a0
jmp 0x140092e29
xor eax, eax
cmp rdi, r15
setl al
lea rcx, [0x140160520]
movsd xmm0, qword [rcx + rax*8]
jmp 0x140092e06
xor eax, eax
ucomisd xmm0, qword [0x14014ce68]
mov ebx, 0x7fffffff
cmovb ebx, eax
jmp 0x140092df1
xor ecx, ecx
cmp rax, r15
setg cl
lea rax, [0x140160520]
movsd xmm0, qword [rax + rcx*8]
jmp 0x140092dc6
mov r14, qword [r14 + 0x1f8]
sub ebp, r15d
xor ebx, ebx
test r14, r14
jne 0x140092e46
jmp 0x140092a9a
lock dec dword [r14]
jne 0x140092f6a
mov rcx, r14
call fcn.14000b6b0
mov rcx, r14
call fcn.1400bab7c
jmp 0x140092f6a
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140092e6a
mov byte [r12 + 0x200], 1
mov r14, rbp
jmp 0x140092f09
xor r12d, r12d
cmp rax, rbp
setg r12b
not r12
add r12, rdx
jmp 0x140093000
lea rcx, [0x14018a118]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14009285c
mov rcx, r14
call qword [case.0x14010edb0.0]
mov rbp, qword [rsp + 0xa0]
jmp 0x140092822
lea rdi, [rsp + 0x28]
mov rcx, rdi
call qword [case.0x14010edb0.0]
mov rdi, qword [rdi]
jmp 0x140092a66
mov esi, 0xffffffff
jmp 0x14009292b
call fcn.14007d5f0
jmp 0x140092ae8
ud2
mov rcx, r14
call fcn.14007cc60
jmp 0x14009274c
int3
mov rcx, r14
call fcn.140116c10
mov byte [rsp + 0x98], 0
jmp 0x1400927c5
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
cmp eax, 0x26
setne sil
neg esi
jmp 0x14009292b
mov qword [rsp + 0xa0], rax
jmp 0x1400928ca
int3
mov rcx, qword [0x140186968]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rbp, rax
add rbp, r8
jmp 0x14009281a
dec qword [rcx + 0x128]
call fcn.140075c00
jmp 0x1400929ce
mov rcx, rdi
call fcn.14000b6b0
mov rcx, rdi
call fcn.1400bab7c
jmp 0x140092ab0
mov rcx, qword [0x140186968]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rdi, rax
add rdi, r8
jmp 0x140092a61
int3
int3
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rdi
call fcn.140034390
mov rbx, qword [rbx]
test rbx, rbx
je 0x140092d8d
lock dec dword [rbx]
jne 0x140092d8d
mov rcx, rbx
call fcn.14000b6b0
mov rcx, rbx
call fcn.1400bab7c
jmp 0x140092d8d
mov r14, qword [rax + 0x38]
mov qword [rax + 0x38], 0
test r14, r14
je 0x1400928d2
lock dec dword [r14]
jne 0x1400928d2
mov rcx, r14
call fcn.14000b6b0
mov rcx, r14
call fcn.1400bab7c
jmp 0x1400928d2
int3