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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x108
movaps xmmword [rsp + 0xf0], xmm6
lea rbp, [rsp + 0x140]
xor eax, eax
mov qword [rbp - 0xd8], rax
xorps xmm4, xmm4
movaps xmmword [rbp - 0xd0], xmm4
movaps xmmword [rbp - 0xc0], xmm4
movabs rax, 0xffffffffffffffa0
movaps xmmword [rbp + rax - 0x50], xmm4
movaps xmmword [rbp + rax - 0x40], xmm4
movaps xmmword [rbp + rax - 0x30], xmm4
add rax, 0x30
jne 0x1401623c7
mov qword [rbp + 0x10], rcx
mov rdi, rdx
mov rbx, r8
call fcn.1400be370
mov r8, rax
xorps xmm0, xmm0
cvtsi2sd xmm0, rbx
movsd xmm6, qword [0x1402b09a0]
divsd xmm0, xmm6
lea rdx, [0x1401df630]
call fcn.14009e880
mov rdx, rax
lea rcx, [0x1401dc4c0]
lea r8, [0x1401bd740]
call fcn.14008cf90
mov rcx, rax
mov edx, 0xb
xor r8d, r8d
call fcn.140164880
lea rdx, [rbp - 0x60]
mov rcx, rdi
mov r8d, 0x186a0
cmp dword [rcx], ecx
call fcn.1401652d0
mov ecx, 0x1000
call fcn.1400e6650
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x18], rdi
mov rcx, qword [rdi + 8]
mov r14, qword [rcx + 8]
mov rcx, qword [0x140343bd0]
mov rcx, qword [rcx + 8]
mov edx, dword [rbp - 0x58]
mov r8, qword [rcx]
call qword [r8 + 0x38]
cmp eax, dword [rbp - 0x58]
jae 0x1401627c0
mov rcx, qword [rbp - 0x60]
mov edx, eax
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [r14 + 8]
mov r9, qword [rbp - 0x68]
mov r8d, 0x1000
call fcn.140166490
xor r14d, r14d
xor r15d, r15d
movabs r13, 0x7fffffffffffffff
movabs r12, 0x8000000000000000
xor eax, eax
mov qword [rbp - 0x70], rax
xor edx, edx
mov dword [rbp - 0x74], edx
xor r8d, r8d
mov dword [rbp - 0x78], r8d
lea rcx, [0x1401f1998]
call fcn.140002fd0
xor ecx, ecx
mov qword [rax + 8], rcx
mov byte [rax + 0x18], 0
mov qword [rax + 0x10], rcx
mov qword [rbp - 0xf0], rax
lea rcx, [0x1401f1998]
call fcn.140002fd0
xor ecx, ecx
mov qword [rax + 8], rcx
mov byte [rax + 0x18], 0
mov qword [rax + 0x10], rcx
mov qword [rbp - 0x100], rax
cmp byte [rax + 0x18], 0
jne 0x140162540
lea rcx, [rbp - 0xb0]
call sub.KERNEL32.dll_QueryPerformanceCounter
mov rcx, qword [rbp - 0xb0]
mov rsi, qword [rbp - 0x100]
mov qword [rsi + 0x10], rcx
mov byte [rsi + 0x18], 1
cmp dword [0x14034cb78], 0
jne 0x140162808
mov rax, qword [rbp - 0x100]
mov rdx, rax
mov qword [rbp - 0xf8], rdx
mov rax, qword [rdx + 8]
mov qword [rbp - 0xb8], rax
cmp byte [rdx + 0x18], 0
je 0x1401625a1
lea rcx, [rbp - 0xc0]
call sub.KERNEL32.dll_QueryPerformanceCounter
mov rcx, qword [rbp - 0xc0]
mov rsi, qword [rbp - 0xf8]
sub rcx, qword [rsi + 0x10]
mov rax, rcx
add rax, qword [rbp - 0xb8]
mov rdi, rax
cmp dword [0x14034cb78], 0
mov qword [rbp - 0xb8], rdi
jne 0x1401627fe
lea r8, [0x1401e5bc8]
mov qword [rbp - 0xe8], r8
cmp qword [r8 - 8], 0
jne 0x1401627ed
mov r10, r8
mov qword [rbp - 0x118], r10
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rbp - 0xb8]
mulsd xmm0, qword [r10 + 0x10]
cvttsd2si r9, xmm0
mov qword [rbp - 0xe0], r9
xorps xmm0, xmm0
cvtsi2sd xmm0, r9
divsd xmm0, xmm6
mov eax, dword [rbp - 0x78]
lea ecx, [rax + 1]
xorps xmm1, xmm1
cvtsi2sd xmm1, ecx
ucomisd xmm0, xmm1
jb 0x14016270b
lea rcx, [0x1401e5f38]
cmp qword [rcx - 8], 0
jne 0x1401627e3
mov rcx, qword [0x140344210]
mov rcx, qword [rcx + 8]
mov edx, 0x100
cmp dword [rcx], ecx
call fcn.140169ce0
mov rcx, rax
test rax, rax
jne 0x140162812
xor edx, edx
xor eax, eax
xor r8d, r8d
mov qword [rbp - 0xa8], r8
mov qword [rbp - 0xa0], rcx
mov dword [rbp - 0x98], r8d
mov byte [rbp - 0x94], 0
mov qword [rbp - 0x90], rdx
mov dword [rbp - 0x88], eax
mov ecx, dword [rbp - 0x98]
cmp ecx, dword [rbp - 0x88]
ja 0x1401627c5
mov rdx, qword [rbp - 0x90]
mov eax, ecx
lea rdx, [rdx + rax*2]
mov eax, dword [rbp - 0x88]
sub eax, ecx
cmp eax, 4
jb 0x14016281e
lea rcx, [0x1401dc298]
add rcx, 0xc
mov rax, qword [rcx]
mov qword [rdx], rax
mov ecx, dword [rbp - 0x98]
add ecx, 4
mov dword [rbp - 0x98], ecx
lea rcx, [rbp - 0xa8]
mov edx, dword [rbp - 0x74]
call fcn.1401ac080
lea rcx, [rbp - 0xa8]
call fcn.1400e3940
mov qword [rbp - 0x108], rax
mov ecx, 0xb
call fcn.140078d00
xor ecx, ecx
call fcn.140078c80
mov rcx, qword [rbp - 0x108]
call fcn.1400784a0
call fcn.140078d70
mov eax, dword [rbp - 0x78]
inc eax
mov dword [rbp - 0x78], eax
xor edx, edx
mov dword [rbp - 0x74], edx
mov r9, qword [rbp - 0xe0]
cmp r9, rbx
jg 0x1401628d6
mov rcx, qword [0x140343bd0]
mov rcx, qword [rcx + 8]
mov edx, dword [rbp - 0x58]
mov r8, qword [rcx]
call qword [r8 + 0x38]
cmp eax, dword [rbp - 0x58]
jae 0x1401627c0
mov rcx, qword [rbp - 0x60]
mov eax, eax
mov rax, qword [rcx + rax*8]
mov qword [rbp - 0x80], rax
xor ecx, ecx
mov rdx, qword [rbp - 0xf0]
mov qword [rdx + 8], rcx
lea rcx, [rbp - 0xc8]
call sub.KERNEL32.dll_QueryPerformanceCounter
mov rcx, qword [rbp - 0xc8]
mov rsi, qword [rbp - 0xf0]
mov qword [rsi + 0x10], rcx
mov byte [rsi + 0x18], 1
mov rdi, qword [rbp + 0x18]
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rbp - 0x110], rax
cmp dword [0x14034cb78], 0
jne 0x1401627d5
mov rcx, qword [rax + 8]
mov rdx, qword [rbp - 0x80]
mov r9, qword [rbp - 0x68]
mov r8d, 0x1000
call fcn.140166490
test eax, eax
jne 0x140162836
inc r14
mov rdx, qword [rbp - 0xf8]
jmp 0x140162551
call fcn.1401074a0
call fcn.1400a34e0
int3
call fcn.140004980
jmp 0x140162886
call fcn.140004980
mov rax, qword [rbp - 0x110]
jmp 0x140162792
call fcn.140002062
jmp 0x140162617
call fcn.14000127e
mov r8, qword [rbp - 0xe8]
jmp 0x1401625ba
call fcn.140004980
jmp 0x1401625a1
call fcn.140004980
jmp 0x140162540
lea rdx, [rcx + 0x10]
mov eax, dword [rcx + 8]
jmp 0x14016263e
lea rcx, [rbp - 0xa8]
lea rdx, [0x1401dc298]
call fcn.1400e3a80
jmp 0x1401626ba
mov rax, qword [rsi + 8]
mov qword [rbp - 0xd0], rax
cmp byte [rsi + 0x18], 0
je 0x140162886
lea rcx, [rbp - 0xd8]
call sub.KERNEL32.dll_QueryPerformanceCounter
mov rcx, qword [rbp - 0xd8]
mov rsi, qword [rbp - 0xf0]
sub rcx, qword [rsi + 0x10]
mov rax, rcx
add rax, qword [rbp - 0xd0]
mov rdi, rax
cmp dword [0x14034cb78], 0
mov qword [rbp - 0xd0], rdi
jne 0x1401627cb
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rbp - 0xd0]
mov r10, qword [rbp - 0x118]
mulsd xmm0, qword [r10 + 0x10]
cvttsd2si rcx, xmm0
cmp rcx, r13
jge 0x1401628ac
mov r13, rcx
cmp rcx, r12
jle 0x1401628b4
mov r12, rcx
mov rax, rcx
add rax, qword [rbp - 0x70]
mov qword [rbp - 0x70], rax
inc r15
mov edx, dword [rbp - 0x74]
inc edx
mov dword [rbp - 0x74], edx
mov rsi, qword [rbp - 0xf0]
jmp 0x1401627b1
lea rcx, [0x1401dbfd0]
xor edx, edx
mov r8d, 0xa
call fcn.140164880
mov rbx, r14
mov rdi, r15
mov r14, qword [rbp - 0x70]
mov r9, qword [rbp - 0x68]
test r9, 0xffffffffffff0000
je 0x140162909
mov rcx, r9
call fcn.140108b40
mov rsi, qword [rbp + 0x10]
mov qword [rsi], rbx
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], r14
mov qword [rsi + 0x18], r13
mov qword [rsi + 0x20], r12
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xf0]
add rsp, 0x108
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret