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

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push r15
sub rsp, 0x160
mov rbp, qword [rcx + 0x40]
lea r8, [rsp + 0x90]
xor ebx, ebx
mov r15, rcx
cmp qword [rbp + 0xc8], rbx
jbe 0x1400118d5
nop
cmp ebx, 0x14
jge 0x140011571
mov rcx, qword [rbp + 0xc8]
inc ebx
mov rax, qword [rbp + 0xc0]
lea rdx, [rcx - 1]
mov qword [rbp + 0xc8], rdx
mov rcx, qword [rax + rcx*8 - 8]
mov qword [r8], rcx
add r8, 8
test rdx, rdx
jne 0x140011540
test ebx, ebx
je 0x1400118d5
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp byte [0x14009bbec], 0
je 0x1400115f1
mov eax, dword [r15 + 0x38]
lea rcx, [rsp + 0x188]
mov dword [rsp + 0x40], eax
xorps xmm0, xmm0
lea rax, str.EarlyStatNonGeneratedFile
mov dword [rsp + 0x68], 0x32
mov qword [rsp + 0x48], rax
movdqu xmmword [rsp + 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1400118f0
mov rax, qword [rsp + 0x188]
xor edx, edx
sub rax, qword [0x14009c1f8]
imul rax, rax, 0xf4240
div qword [0x14009c1f0]
add rax, qword [0x14009c200]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x158], rsi
mov rsi, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdi
mov rdi, qword [rsp + 0x180]
mov qword [rsp + 0x148], r12
mov r12d, dword [rsp + 0x180]
movsxd rax, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x140], r13
xor r13d, r13d
mov qword [rsp + 0x198], rax
mov eax, dword [rsp + 0x180]
mov qword [rsp + 0x138], r14
mov r14, qword [rsp + 0x180]
mov dword [rsp + 0x188], eax
mov dword [rsp + 0x190], r12d
mov qword [rsp + 0x28], rsi
nop
cmp byte [0x14009bbec], 0
mov rbx, qword [rsp + r13*8 + 0x90]
je 0x1400116fb
movsxd rdi, dword [rbx]
lea rcx, [rsp + 0x30]
mov r12d, dword [r15 + 0x38]
lea r14, str.File
xor eax, eax
mov dword [rsp + 0x190], r12d
sub eax, dword [rbx]
add rdi, rbx
neg eax
mov qword [rsp + 0x198], 0
mov dword [rsp + 0x188], 0x1f4
sbb rax, rax
and rdi, rax
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1400118fd
mov rax, qword [rsp + 0x30]
xor edx, edx
sub rax, qword [0x14009c1f8]
imul rax, rax, 0xf4240
div qword [0x14009c1f0]
mov rsi, rax
add rsi, qword [0x14009c200]
mov qword [rsp + 0x28], rsi
movsxd r8, dword [rbx]
xor ecx, ecx
sub ecx, dword [rbx]
add r8, rbx
mov r9d, dword [rbx + 4]
neg ecx
mov rdx, qword [rbp + 0x1d0]
sbb rcx, rcx
and r8, rcx
lea rcx, [rsp + 0x70]
call fcn.14004afb0
cmp byte [0x14009bbec], 0
je 0x140011870
lea rcx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1400118e3
mov rax, qword [rsp + 0x38]
xor edx, edx
sub rax, qword [0x14009c1f8]
movsxd rcx, dword [rsp + 0x188]
imul rax, rax, 0xf4240
div qword [0x14009c1f0]
mov r15, rax
sub r15, rsi
add r15, qword [0x14009c200]
cmp r15, rcx
jb 0x140011868
movsxd rbx, r12d
shl rbx, 6
add rbx, qword [0x1400c47e0]
cmp dword [rbx + 0x38], 0x8000
jae 0x140011868
movsxd rax, dword [rbx + 0x38]
mov edx, 0x20
inc dword [rbx + 0x38]
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x30]
mov qword [rax + rcx*8], rsi
lea r12, [rax + rcx*8]
mov rax, qword [rsp + 0x198]
mov rcx, r14
mov qword [r12 + 0x20], rax
call fcn.14004e9d4
mov rsi, rax
test rax, rax
je 0x14001180a
test rdi, rdi
jne 0x14001180a
mov r8, rax
mov rdx, r14
sub r8, r14
mov rcx, rbx
call fcn.140020f90
mov qword [r12 + 0x10], rax
lea rdx, [rsi + 1]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x1400117f6
mov rcx, rbx
call fcn.140020f90
jmp 0x14001185e
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r14 + r8], 0
jne 0x140011811
mov rdx, r14
mov rcx, rbx
call fcn.140020f90
mov qword [r12 + 0x10], rax
test rdi, rdi
je 0x140011857
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x140011840
mov rdx, rdi
mov rcx, rbx
call fcn.140020f90
jmp 0x14001185e
lea rax, [0x140089d66]
mov qword [r12 + 0x18], rax
mov qword [r12 + 8], r15
mov r15, qword [rsp + 0x180]
inc r13
cmp r13, qword [rsp + 0x20]
je 0x14001188c
mov rsi, qword [rsp + 0x28]
mov r12d, dword [rsp + 0x190]
jmp 0x140011670
lea rcx, [rsp + 0x40]
call fcn.140001370
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r13, qword [rsp + 0x140]
mov al, 1
mov r12, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x158]
mov r14, qword [rsp + 0x138]
add rsp, 0x160
pop r15
pop rbp
pop rbx
ret
xor al, al
add rsp, 0x160
pop r15
pop rbp
pop rbx
ret
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140014f00
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140014f00
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140014f00
int3