Function at 0x1401832f0
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, 0x108
movapd xmmword [rsp + 0xf0], xmm8
movapd xmmword [rsp + 0xe0], xmm7
movapd xmmword [rsp + 0xd0], xmm6
mov esi, r9d
mov qword [rsp + 0x28], r8
mov r14, rdx
mov rbx, rcx
mov rax, qword [0x1402b3040]
xor rax, rsp
mov qword [rsp + 0xc8], rax
movabs r15, 0xfffffffc00000000
movapd xmm0, xmmword [0x14026f080]
movapd xmmword [rsp + 0x80], xmm0
movapd xmmword [rsp + 0x70], xmm0
movapd xmmword [rsp + 0x60], xmm0
movapd xmmword [rsp + 0x50], xmm0
lea rdx, str.Read
lea r8, [0x140281a58]
lea rcx, [rsp + 0x30]
mov r9d, 0x42
call fcn.14012cb70
mov eax, dword [0x1402c2670]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r12, qword [rax + 0x170]
mov rax, r12
and rax, r15
cmp rax, qword [0x1402b5708]
je 0x140183786
mov qword [rsp + 0x50], r12
mov eax, dword [0x1402c2670]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0x178]
mov r12, qword [rdi]
mov rcx, r12
and rcx, r15
mov rax, r12
cmp rcx, qword [0x1402b5708]
je 0x140183e51
lea rcx, [rsp + 0x50]
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], rdi
mov qword [rdi], rcx
mov qword [rcx + 0x18], rax
test r12, r12
jne 0x1401837ca
xor eax, eax
movabs rbp, 0x8637bd05af7
mov byte [rsp + 0x70], al
xor ecx, ecx
mov byte [rsp + 0x78], cl
mov byte [rsp + 0x88], cl
mov edx, dword [0x1402c2670]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
cmp byte [rdx + 0x198], cl
je 0x140183793
test al, 1
jne 0x1401838fc
test r12, r12
jne 0x14018355e
lea r12, [rsp + 0x78]
cmp byte [r12 + 0x10], 1
je 0x140183e61
mov rax, qword [fcn.140118b10]
lea rcx, [0x140118bc0]
cmp rax, rcx
jne 0x140183e16
lea r12, [rsp + 0xa0]
mov qword [r12], 0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r12]
cmp rax, rbp
jge 0x140183ef4
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c5cb8]
mov rdi, rax
mov qword [rsp + 0x78], rdi
mov eax, dword [0x1402c5da8]
mov ecx, dword [0x1402c2670]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140183954
lea rcx, [0x1402c5da0]
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1401839f3
mov eax, dword [0x1402c5dc8]
mov ecx, dword [0x1402c2670]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140183989
cmp qword [0x1402c5dc0], 0
jne 0x1401837d4
mov qword [rsp + 0x80], 0
lea rcx, [0x1402c5da0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13, qword [rsp + 0x80]
test r13, r13
jne 0x14018376f
mov byte [rsp + 0x88], 1
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x140183577
cmp qword [rsp + 0x58], 0
jne 0x140183577
xor edx, edx
call fcn.14011b390
mov r12, rbp
mov qword [rsp + 0x98], 0xa
mov al, byte [0x1402c585a]
test al, al
jne 0x140183eaa
mov ebp, 0xffffffff
test r14, r14
js 0x1401835f1
test esi, esi
js 0x1401835f1
xorpd xmm0, xmm0
lea rax, [rsp + 0xa0]
movapd xmmword [rax + 0x10], xmm0
movapd xmmword [rax], xmm0
mov qword [rax + 0x10], r14
lea r9, [rsp + 0x30]
mov dword [r9], 0xaaaaaaaa
mov rcx, qword [rbx]
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0x28]
mov r8d, esi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140183ba4
mov ebp, dword [rsp + 0x30]
test ebp, ebp
js 0x140183e49
mov qword [rsp + 0x30], 0xa
mov al, byte [0x1402c585a]
test al, al
jne 0x140183e76
call fcn.14018f5ec
mov ebx, dword [rax]
call fcn.14018f5ec
mov dword [rax], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r14, qword [rsp + 0x50]
test r14, r14
je 0x1401836bb
cmp qword [rsp + 0x58], 0
jne 0x1401836bb
cmp byte [r14 + 0x19], 1
jne 0x1401836bb
mov rdi, qword [r14 + 0x28]
add rdi, 0x68
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140183946
mov qword [r14 + 0x20], 0
cmp byte [r14 + 0x3b], 0
jne 0x1401836ab
mov rax, qword [r14 + 0x28]
cmp byte [r14 + 0x39], 1
je 0x14018390a
dec dword [rax + 0x128]
cmp byte [r14 + 0x19], 0
je 0x140183ee1
cmp byte [r14 + 0x18], 0
jne 0x1401836ab
mov rcx, qword [r14 + 0x28]
cmp byte [r14 + 0x3a], 1
je 0x140183f1e
dec dword [rcx + 0x12c]
mov word [r14 + 0x39], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.14018f5ec
mov dword [rax], ebx
cmp byte [rsp + 0x88], 1
jne 0x1401836e5
mov rdi, qword [rsp + 0x80]
test rdi, rdi
jne 0x14018385c
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1401836f7
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
and rax, r15
cmp rax, qword [0x1402b5708]
je 0x140183e3f
mov qword [rsp + 0x58], 0
mov rcx, qword [rsp + 0x50]
and r15, rcx
cmp r15, qword [0x1402b5708]
je 0x140183768
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.140191d70
mov eax, ebp
movaps xmm6, xmmword [rsp + 0xd0]
movaps xmm7, xmmword [rsp + 0xe0]
movaps xmm8, xmmword [rsp + 0xf0]
add rsp, 0x108
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1400fd6f0
jmp 0x140183729
mov rax, qword [r13 + 0x1f0]
cmp qword [rsp + 0x78], rax
jge 0x140183556
jmp 0x140183e9d
mov rcx, r12
call fcn.1400fd430
jmp 0x1401833b7
mov eax, dword [0x1402cbc40]
mov ecx, dword [0x1402c2670]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140183a05
cmp byte [0x1402cbc3c], 0
jne 0x14018355e
jmp 0x140183b96
mov al, byte [r12 + 0x20]
jmp 0x14018340e
mov eax, dword [0x1402c5db8]
mov ecx, dword [0x1402c2670]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1401839be
mov rbp, qword [0x1402c5db0]
movabs rcx, 0x7fffffffffffffff
mov r12, rdi
test rbp, rbp
je 0x140183c1e
mov r12d, 0x3938700
add r12, qword [rbp + 0x1f0]
cmovo r12, rcx
cmp r12, rdi
jle 0x140183c1e
mov qword [rsp + 0x80], rbp
mov eax, 1
lock xadd dword [rbp], eax
cmp eax, 0x7fffffff
movabs rbp, 0x8637bd05af7
jne 0x140183538
jmp 0x140183ea7
mov rax, qword [fcn.140118b10]
lea rcx, [0x140118bc0]
cmp rax, rcx
jne 0x140183e29
lea rsi, [rsp + 0xa0]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
cmp rax, r12
jge 0x140183f3d
imul rax, rax, 0xf4240
cqo
idiv qword [0x1402c5cb8]
mov qword [rsp + 0x30], rax
mov r14, qword [rsp + 0x78]
xor ecx, ecx
cmp rax, r14
setns cl
movabs r12, 0x7fffffffffffffff
add rcx, r12
mov rbx, rax
sub rbx, r14
cmovo rbx, rcx
cmp rbx, 0xf4240
jge 0x140183a5e
mov rsi, qword [rsp + 0x80]
test rsi, rsi
je 0x1401836e5
lock dec dword [rsi]
jne 0x1401836e5
jmp 0x140183f28
test r12, r12
je 0x14018355e
jmp 0x140183dd3
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x108]
dec rdx
mov qword [rax + 0x108], rdx
cmp rcx, qword [rax + 0x88]
je 0x140183938
cmp qword [rax + 0x118], rdx
jae 0x140183a4e
mov word [rax + 0xb8], 0
jmp 0x140183684
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140183660
lea rcx, [0x1402c5da8]
call fcn.14018f720
cmp dword [0x1402c5da8], 0xffffffff
jne 0x1401834e4
mov qword [0x1402c5da0], 0
lea rcx, [0x1402c5da8]
call fcn.14018f6b4
jmp 0x1401834e4
lea rcx, [0x1402c5dc8]
call fcn.14018f720
cmp dword [0x1402c5dc8], 0xffffffff
jne 0x14018351e
mov qword [0x1402c5dc0], 0
lea rcx, [0x1402c5dc8]
call fcn.14018f6b4
jmp 0x14018351e
lea rcx, [0x1402c5db8]
call fcn.14018f720
cmp dword [0x1402c5db8], 0xffffffff
jne 0x1401837f9
mov qword [0x1402c5db0], 0
lea rcx, [0x1402c5db8]
call fcn.14018f6b4
jmp 0x1401837f9
lea rcx, [0x1402c5da0]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x1401834f9
lea rcx, [0x1402cbc40]
call fcn.14018f720
cmp dword [0x1402cbc40], 0xffffffff
jne 0x1401837b8
mov rcx, qword [0x1402c5bc8]
test rcx, rcx
je 0x140183a36
lea rdx, str.enable_background_thread_pool
call fcn.140146010
mov byte [0x1402cbc3c], 1
lea rcx, [0x1402cbc40]
call fcn.14018f6b4
jmp 0x1401837b8
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x140183684
mov ecx, 0x3938700
add rcx, qword [rdi + 0x1f0]
cmovo rcx, r12
cmp rcx, rax
jle 0x140183f98
mov rax, qword [rdi + 0x1f0]
xor edx, edx
cmp r14, rax
setns dl
add rdx, r12
mov rcx, r14
sub rcx, rax
movabs rsi, 0x8000000000000001
cmovo rcx, rdx
lea rdx, [rcx + rsi]
cmp rdx, 2
jb 0x140183f7f
cvtsi2sd xmm0, rcx
movsd xmm8, qword [0x140281a40]
divsd xmm0, xmm8
call fcn.1401cb720
xor r12d, r12d
movsd xmm6, qword [0x140281a48]
ucomisd xmm0, xmm6
mov eax, 0x7fffffff
cmovb eax, r12d
movsd xmm7, qword [0x140281a50]
ucomisd xmm7, xmm0
mov r13d, 0x7fffffff
maxsd xmm0, xmm6
cvttsd2si r14d, xmm0
cmovb r14d, eax
add rsi, rbx
cmp rsi, 2
jae 0x140183b0d
movsd xmm0, qword [0x140277048]
jmp 0x140183b1a
xorps xmm0, xmm0
cvtsi2sd xmm0, rbx
divsd xmm0, xmm8
call fcn.1401cb7d0
ucomisd xmm0, xmm6
cmovb r13d, r12d
ucomisd xmm7, xmm0
maxsd xmm0, xmm6
cvttsd2si ebx, xmm0
cmovb ebx, r13d
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
add ebx, r14d
cmp ebx, 0x3c
mov r12d, 0x3c
cmovl r12d, ebx
lea rsi, [rdi + 8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x140183b8b
cmp r14d, r12d
jge 0x140183b77
movsxd rax, r14d
movsxd rcx, r12d
inc qword [rdi + rax*8 + 0x10]
inc rax
cmp rcx, rax
jne 0x140183b6a
mov rcx, rsi
call r13
cmp ebx, 0x3d
jl 0x1401838dd
jmp 0x140183f64
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x140183b5f
mov al, byte [rsp + 0x70]
mov r12, qword [rsp + 0x58]
jmp 0x140183448
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ebp, ebp
cmp eax, 0x26
setne bpl
neg ebp
jmp 0x1401835f1
cmp byte [rbp + 0x200], 0
jne 0x140183ca2
test r13, r13
je 0x140183be2
mov eax, 1
lock xadd dword [r13], eax
cmp eax, 0x7fffffff
je 0x140183ffd
mov r12, qword [rbp + 0x1f8]
mov qword [rbp + 0x1f8], r13
test r12, r12
je 0x140183ca2
jmp 0x140184000
lock dec dword [r12]
jne 0x140183cd4
mov rcx, r12
call fcn.1400168e0
mov rcx, r12
call fcn.14018f5a0
jmp 0x140183cd4
xor eax, eax
cmp rdi, r12
setns al
add rax, rcx
mov rcx, rdi
sub rcx, r12
cmovo rcx, rax
cmp rcx, 0x989680
jge 0x140183fdb
mov ecx, 0x208
call fcn.14018f5a8
mov r13, rax
mov dword [rax], 0
lea rcx, [rax + 8]
mov r8d, 0x1e8
xor edx, edx
call fcn.1401cdd80
mov qword [r13 + 0x1f0], r12
mov qword [r13 + 0x1f8], 0
mov byte [r13 + 0x200], 0
test r13, r13
je 0x140183c99
mov eax, 1
lock xadd dword [r13], eax
cmp eax, 0x7fffffff
je 0x140183fd5
test rbp, rbp
jne 0x140183bba
test r13, r13
je 0x140183cbd
mov eax, 1
lock xadd dword [r13], eax
cmp eax, 0x7fffffff
je 0x140183fd8
mov r12, qword [0x1402c5db0]
mov qword [0x1402c5db0], r13
test r12, r12
jne 0x140183bfe
lea rcx, [0x1402c5da0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rax, qword [r13 + 0x1f0]
xor edx, edx
cmp rdi, rax
setns dl
movabs rcx, 0x7fffffffffffffff
add rdx, rcx
mov rcx, rdi
sub rcx, rax
movabs rbp, 0x8000000000000001
cmovo rcx, rdx
lea rdx, [rcx + rbp]
cmp rdx, 2
jb 0x140183fea
mov ebp, 0x3938700
xor eax, eax
cmp rbp, rcx
setns al
movabs rdx, 0x7fffffffffffffff
add rax, rdx
sub rbp, rcx
cmovo rbp, rax
mov ecx, Ordinal_41
call fcn.14018f5a8
mov r12, rax
mov dword [rax], 1
lea rax, [0x140064380]
mov qword [r12 + 8], rax
lea rax, [0x140066660]
mov qword [r12 + 0x10], rax
lea rax, [0x1401cf820]
mov qword [r12 + 0x18], rax
lea rdx, str.MonitorNextJankWindowIfNecessary
lea r8, str....._base_threading_scoped_blocking_call_internal.cc
lea rdi, [rsp + 0xa0]
mov rcx, rdi
mov r9d, Ordinal_208
call fcn.14012cb70
lea r9, [rsp + 0xc0]
mov qword [r9], r12
mov qword [rsp + 0x20], rbp
lea r8, [0x140281e55]
xor ecx, ecx
mov rdx, rdi
call fcn.1400158d0
mov qword [rsp + 0x80], r13
movabs rbp, 0x8637bd05af7
jmp 0x14018354d
cmp byte [r12 + 0x38], 1
jne 0x14018355e
mov r13, qword [r12 + 0x30]
mov qword [r12 + 0x30], 0
test r13, r13
je 0x14018355e
lock dec dword [r13]
jne 0x14018355e
mov rcx, r13
call fcn.1400168e0
mov rcx, r13
call fcn.14018f5a0
jmp 0x14018355e
mov rcx, r12
call qword [0x1402a3ee8]
mov rdi, qword [rsp + 0x78]
jmp 0x1401834bf
lea rsi, [rsp + 0x30]
mov rcx, rsi
call qword [0x1402a3ee8]
mov rax, qword [rsi]
jmp 0x1401838ac
call fcn.1400fd6f0
jmp 0x14018370f
int3
mov rcx, r12
call fcn.1400fd430
mov rax, qword [rdi]
jmp 0x1401833ef
mov rcx, r12
call fcn.140201960
mov byte [rsp + 0x88], 0
jmp 0x14018346a
movzx ecx, al
lea r8, [rsp + 0xa0]
mov qword [r8], 0
lea rdx, [rsp + 0x30]
mov r9d, 2
call fcn.140107530
jmp 0x140183608
mov qword [rsp + 0x78], rax
jmp 0x140183556
int3
movzx ecx, al
lea r9, [rsp + 0xa0]
lea rax, [rsp + 0x30]
mov qword [r9], rax
lea rax, str.ScopedBlockingCall
lea r8, [rsp + 0xc0]
mov qword [r8], rax
lea rdx, [rsp + 0x98]
call fcn.1401f5bf0
jmp 0x140183594
lea rcx, [0x1402742d5]
lea rdx, str....._third_partylibc_srcincludeoptional:795:_assertion_this__has_value___failed:_optional_operator_called_on_a_disengaged_value_n
call fcn.1401ceaf0
mov rcx, qword [0x1402c5cb8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rdi, rax
add rdi, r8
jmp 0x1401834ba
call fcn.14020cca0
jmp 0x1401836ab
mov rcx, rsi
call fcn.1400168e0
mov rcx, rsi
call fcn.14018f5a0
jmp 0x1401836e5
mov rcx, qword [0x1402c5cb8]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x1401838a7
mov rdi, qword [rdi + 0x1f8]
sub ebx, r12d
xor r14d, r14d
test rdi, rdi
jne 0x140183b3e
jmp 0x1401838dd
xor ecx, ecx
cmp rax, r14
setg cl
lea rax, [0x140281a30]
movsd xmm0, qword [rax + rcx*8]
jmp 0x140183ab0
lea rsi, [rsp + 0xa0]
mov rcx, rsi
mov rdx, rax
call fcn.140064460
mov rsi, qword [rsi]
test rsi, rsi
je 0x140183a77
lock dec dword [rsi]
jne 0x140183a77
mov rcx, rsi
call fcn.1400168e0
mov rcx, rsi
call fcn.14018f5a0
jmp 0x140183a77
int3
int3
mov byte [rbp + 0x200], 1
mov r12, rdi
jmp 0x140183c40
xor ecx, ecx
cmp rax, rdi
setg cl
not rcx
add rbp, rcx
jmp 0x140183d40
int3
lock dec dword [r12]
jne 0x140183ca2
mov rcx, r12
call fcn.1400168e0
mov rcx, r12
call fcn.14018f5a0
jmp 0x140183ca2