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

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0xb0
lea rbp, [rsp + 0x40]
movsxd r10, dword [rcx]
mov r13, rdx
mov qword [rbp + 0xa8], rbx
add r10, rcx
xor ebx, ebx
mov qword [rbp + 0xb0], rsi
mov eax, ebx
mov qword [rbp + 0xb8], rdi
sub eax, dword [rcx]
mov r12, r9
neg eax
mov rdi, rcx
mov rdx, 0xffffffffffffffff
sbb rax, rax
and r10, rax
nop
inc rdx
cmp byte [r10 + rdx], bl
jne 0x140048d60
add edx, 0x14
movabs rsi, 0xffffffffffffff0
movsxd rax, edx
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140048d85
mov rcx, rsi
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.14004c200
movsxd r9, dword [rdi]
sub rsp, rcx
add r9, rdi
movsxd rdx, edx
mov eax, ebx
sub eax, dword [rdi]
neg eax
lea r15, [rsp + 0x40]
mov rcx, r15
sbb rax, rax
and r9, rax
call fcn.140003390
movsxd r14, dword [rdi + 0xc]
mov rax, r14
shl rax, 4
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140048dcd
mov rcx, rsi
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.14004c200
sub rsp, rcx
lea rsi, [rsp + 0x40]
test r14d, r14d
jle 0x140048e5a
mov r8, rbx
add rdi, 0x10
mov r9, rsi
movsxd rcx, dword [rdi]
lea r9, [r9 + 0x10]
add rcx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rcx, rax
mov eax, ebx
sub eax, dword [rcx + r8*8]
lea rcx, [rcx + r8*8]
movsxd rdx, dword [rcx]
add rdx, rcx
neg eax
sbb rax, rax
and rdx, rax
mov eax, ebx
mov qword [r9 - 0x10], rdx
sub eax, dword [rdi]
movsxd rcx, dword [rdi]
add rcx, rdi
neg eax
sbb rax, rax
and rcx, rax
mov eax, ebx
lea rcx, [rcx + r8*8]
add rcx, 4
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
neg eax
sbb rax, rax
inc r8
and rdx, rax
mov qword [r9 - 8], rdx
cmp r8, r14
jl 0x140048df0
lea rcx, [rbp + 0xa0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140048f9c
mov rax, qword [rbp + 0xa0]
lea rcx, [rbp + 0x38]
sub rax, qword [0x140099f88]
xor edx, edx
imul rax, rax, 0xf4240
mov qword [rsp + 0x38], rbx
mov r9, rsi
div qword [0x140099f80]
mov qword [rsp + 0x30], rbx
mov r8d, r14d
mov rdi, rax
mov dword [rsp + 0x28], ebx
add rdi, qword [0x140099f90]
mov rdx, r13
mov qword [rsp + 0x20], r12
call fcn.1400253d0
lea rcx, [rbp]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 8], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbp + 0x18], xmm1
movups xmmword [rbp + 0x28], xmm0
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140048fa9
mov rax, qword [rbp]
xor edx, edx
sub rax, qword [0x140099f88]
xorps xmm0, xmm0
imul rax, rax, 0xf4240
div qword [0x140099f80]
mov rcx, rax
sub rcx, rdi
add rcx, qword [0x140099f90]
js 0x140048f19
cvtsi2sd xmm0, rcx
jmp 0x140048f2e
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm0, qword [0x14008df68]
mov edi, dword [rbp + 8]
lea r8, [rbp + 8]
test edi, edi
mov r9, r15
setne bl
mov ecx, ebx
cvttsd2si edx, xmm0
call fcn.14003c510
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x140048f74
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp + 0x30]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov edi, dword [rbp + 8]
mov rbx, qword [rbp + 0xa8]
test edi, edi
mov rsi, qword [rbp + 0xb0]
mov rdi, qword [rbp + 0xb8]
sete al
lea rsp, [rbp + 0x70]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3