Function at 0x1400fab60
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rsi, rcx
lea r14, vtable.CArray_unsigned_long_int__unsigned_long_int_const____ptr64_.0
mov qword [rsp + 0x20], r14
xor ebp, ebp
mov r12d, ebp
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rbp
mov edi, ebp
mov qword [rsp + 0x30], rbp
add rcx, 0xd90
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rsi + 0x7e0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r13, qword [rsi + 0x8c0]
mov r15, qword [rsi + 0x8b8]
cmp r15, r13
je 0x1400fad9b
movabs rcx, 0xaaaaaaaaaaaaaaab
nop dword [rax]
mov r9d, dword [r15]
mov eax, r9d
and eax, 0xc0000000
mov rdx, rbp
mov r8, qword [rsi + 0xd80]
cmp eax, 0x40000000
jne 0x1400face2
mov rbx, qword [rsi + 0xd78]
sub r8, rbx
sar r8, 2
imul r8, rcx
test r8, r8
je 0x1400fad82
mov r10d, r9d
shr r10d, 0x10
and r10d, 0x3fff
mov rcx, rbx
nop dword [rax]
cmp r10d, dword [rcx]
jne 0x1400fac3e
movzx eax, r9w
cmp eax, dword [rcx + 4]
je 0x1400fac50
inc rdx
add rcx, 0xc
cmp rdx, r8
jae 0x1400fad78
jmp 0x1400fac30
test edx, edx
js 0x1400fad78
movsxd rax, edx
lea rcx, [rax + rax*2]
lea r14, [rcx*4]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, dword [r14 + rbx + 8]
jb 0x1400fad78
lfence
mov rax, qword [rsi + 0xd78]
mov edi, dword [r14 + rax]
and edi, 0x3fff
or edi, 0xffff8000
shl edi, 0x10
movzx eax, word [r14 + rax + 4]
or edi, eax
mov rbx, qword [rsp + 0x30]
lfence
mov rdx, qword [rsp + 0x30]
inc rdx
lea rcx, [rsp + 0x20]
call fcn.1400423e0
mov r12, qword [rsp + 0x28]
mov dword [r12 + rbx*4], edi
mov rcx, qword [rsi + 0xd78]
add rcx, r14
mov r8, qword [rsi + 0xd80]
lea rdx, [rcx + 0xc]
sub r8, rdx
call sub.VCRUNTIME140.dll_memmove
jmp 0x1400fad70
mov rdi, qword [rsi + 0xd78]
sub r8, rdi
sar r8, 2
imul r8, rcx
test r8, r8
je 0x1400fad82
mov r10d, r9d
shr r10d, 0x10
and r10d, 0x3fff
mov rax, rdi
nop
cmp r10d, dword [rax]
jne 0x1400fad1e
movzx ecx, r9w
cmp ecx, dword [rax + 4]
je 0x1400fad2c
inc rdx
add rax, 0xc
cmp rdx, r8
jae 0x1400fad78
jmp 0x1400fad10
test edx, edx
js 0x1400fad78
movsxd rax, edx
lea rcx, [rax + rax*2]
lea rbx, [rcx*4]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, dword [rdi + rbx + 8]
jb 0x1400fad78
lfence
mov rcx, qword [rsi + 0xd78]
add rcx, rbx
mov r8, qword [rsi + 0xd80]
lea rdx, [rcx + 0xc]
sub r8, rdx
call sub.VCRUNTIME140.dll_memmove
mov r12, qword [rsp + 0x28]
add qword [rsi + 0xd80], 0xfffffffffffffff4
movabs rcx, 0xaaaaaaaaaaaaaaab
add r15, 4
cmp r15, r13
jne 0x1400fabe0
mov rdi, qword [rsp + 0x30]
lea r14, vtable.CArray_unsigned_long_int__unsigned_long_int_const____ptr64_.0
lea rcx, [rsi + 0x7e0]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsi + 0xd90]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rdi, rdi
jle 0x1400fadf0
mov rbx, r12
nop dword [rax]
mov eax, dword [rbx]
mov dword [rsp + 0x90], eax
mov r9d, 1
mov r8d, r9d
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.1400f9940
inc ebp
lea rbx, [rbx + 4]
movsxd rax, ebp
cmp rax, rdi
jl 0x1400fadc0
mov qword [rsp + 0x20], r14
test r12, r12
je 0x1400fae02
mov rcx, r12
call fcn.140007ea0
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret