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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x198
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x100], xmm7
movaps xmmword [rbp + 0xf0], xmm6
mov qword [rbp + 0xe8], 0xfffffffffffffffe
movzx eax, byte [0x183596000]
mov edx, 9
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e4e9
movabs rcx, 0x696e6e69772f3a43
mov qword [rax], rcx
mov qword [rbp + 8], rax
mov byte [rax + 8], 0x74
lea rdx, [0x180072a46]
lea rcx, [rbp + 0x10]
mov r8d, 0x21
call fcn.180025390
mov rcx, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x18]
cmp rcx, 2
jne 0x18000ddd0
mov ecx, 2
call fcn.18000cc90
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 1
mov qword [rbp], 0
lea rcx, [rbp - 0x10]
mov r8d, 0x350b207
xor edx, edx
call fcn.18006b230
mov rsi, qword [rbp]
mov rcx, qword [rbp - 8]
add rcx, rsi
lea rdx, [0x180072a67]
mov r8d, 0x350b207
call sub.VCRUNTIME140.dll_memcpy
add rsi, 0x350b207
mov qword [rbp], rsi
mov qword [rbp + 0x20], rsi
movups xmm0, xmmword [rbp - 0x10]
movaps xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x28], 0
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x10]
mov r9d, 9
mov r8, qword [rbp + 8]
call fcn.1800073e0
movabs rax, 0x8000000000000002
cmp qword [rbp - 0x30], rax
je 0x18000ddd5
movups xmm0, xmmword [rbp - 0x50]
movups xmm1, xmmword [rbp - 0x40]
movups xmm2, xmmword [rbp - 0x30]
movups xmm3, xmmword [rbp - 0x20]
movaps xmmword [rbp + 0x40], xmm3
movaps xmmword [rbp + 0x30], xmm2
movaps xmmword [rbp + 0x20], xmm1
movaps xmmword [rbp + 0x10], xmm0
lea rax, [0x18357dc78]
mov qword [rsp + 0x20], rax
lea rcx, [0x1835868d0]
lea r9, fcn.18000e890
lea r8, [rbp + 0x10]
mov edx, 0x2b
call fcn.18006a450
jmp 0x18000e59d
call fcn.18000cc90
mov qword [rbp - 0x50], 0
lea rcx, [rbp - 0x50]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x18000e4fd
mov rcx, qword [rbp - 0x50]
call case.0x1800106d6.464
mov rdi, rax
mov ebx, edx
mov eax, edx
add eax, 0x3b9aca00
mov dword [rbp + 0xe0], eax
lea r14, [rbp - 0x50]
mov rsi, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r13d, 0xff
jmp 0x18000de37
cmp eax, 0x3b9aca00
sete al
cmp r15, 0x14
setb cl
or cl, al
je 0x18000dffa
mov qword [rbp - 0x50], 0
mov rcx, r14
call rsi
test eax, eax
je 0x18000e3cf
mov rcx, qword [rbp - 0x50]
call case.0x1800106d6.464
mov r15, rax
mov r12d, edx
mov r8, qword [0x183595f90]
test r8, r8
jne 0x18000de94
mov qword [rbp - 0x50], 0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x18000e43c
mov r8, qword [rbp - 0x50]
mov qword [0x183595f90], r8
test r8, r8
je 0x18000e42b
cmp r8, 0x3b9aca00
ja 0x18000deb0
mov eax, 0x3b9aca00
xor edx, edx
div r8d
jmp 0x18000deb2
xor eax, eax
lea ecx, [rax - 0x3b9aca00]
xor edx, edx
cmp r8, 2
cmovae ecx, eax
setb al
xor r8d, r8d
cmp r15, rdi
setne r8b
cmova r8d, r13d
test r8b, r8b
jne 0x18000dee4
cmp r12d, ebx
setne r8b
ja 0x18000df91
cmp r8b, 1
jne 0x18000df91
cmp r15, rdi
ja 0x18000e40e
mov r8, rdi
sub r8, r15
cmp r12d, ebx
jbe 0x18000df30
test r8, r8
je 0x18000e40e
dec r8
mov r9d, dword [rbp + 0xe0]
sub r9d, r12d
cmp r9d, 0x3b9aca00
jae 0x18000df3f
jmp 0x18000df64
mov r9d, ebx
sub r9d, r12d
cmp r9d, 0x3b9aca00
jb 0x18000df64
mov r10d, r9d
shr r10d, 9
imul r10, r10, 0x44b83
shr r10, 0x27
add r8, r10
jb 0x18000e47b
imul r10d, r10d, 0x3b9aca00
sub r9d, r10d
mov dl, al
xor eax, eax
cmp r8, rdx
setne al
mov edx, 0xff
cmovb eax, edx
xor r8d, r8d
cmp r9d, ecx
setne cl
jb 0x18000df87
mov r8b, cl
mov edx, r8d
test al, al
cmovne edx, eax
cmp dl, 1
jne 0x18000dff0
mov eax, 0x3b9aca00
sub r15, rdi
jb 0x18000de20
cmp r12d, ebx
jae 0x18000dfb7
test r15, r15
je 0x18000de20
dec r15
add r12d, 0x3b9aca00
mov eax, r12d
sub eax, ebx
cmp eax, 0x3b9aca00
jb 0x18000de20
mov ecx, eax
shr ecx, 9
imul rcx, rcx, 0x44b83
shr rcx, 0x27
add r15, rcx
jb 0x18000e4b2
imul ecx, ecx, 0x3b9aca00
sub eax, ecx
jmp 0x18000de20
xor r15d, r15d
xor eax, eax
jmp 0x18000de20
movzx eax, byte [0x183596000]
mov edx, 0x21
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e539
movups xmm6, xmmword [0x180072a56]
movups xmmword [rax + 0x10], xmm6
movups xmm7, xmmword [0x180072a46]
movups xmmword [rax], xmm7
mov byte [rax + 0x20], 0x65
mov qword [rbp + 0x10], 0x21
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], 0x21
mov byte [rbp + 0x28], 0
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 8
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x98], 0
mov qword [rbp + 0xa8], 0
mov word [rbp + 0xb0], 0
movabs rsi, 0x8000000000000000
mov qword [rbp + 0x48], rsi
mov dword [rbp + 0xd4], 0
mov word [rbp + 0xd0], 0
mov word [rbp + 0xd8], 0
mov dword [rbp + 0x68], 6
mov dword [rbp + 0x78], 6
mov dword [rbp + 0x88], 6
mov qword [rbp + 0xb8], 0
mov qword [rbp + 0xc8], 0
movzx eax, byte [0x183596000]
mov edx, 2
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e54a
lea rdi, [rbp + 0x30]
mov qword [rbp + 0xe0], rax
mov word [rax], 0x632d
mov rcx, rdi
call fcn.180038aa0
mov rbx, qword [rbp + 0x38]
mov qword [rbx], 0
mov qword [rbx + 8], 2
mov rax, qword [rbp + 0xe0]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 2
mov byte [rbx + 0x20], 0
mov qword [rbp + 0x40], 1
movzx eax, byte [0x183596000]
mov edx, 0x181e
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e55b
mov r14, rax
lea rdx, [0x18357dc90]
mov r8d, 0x181e
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
cmp qword [rbp + 0x30], 1
jne 0x18000e191
mov qword [rbp + 0xe0], r14
mov rcx, rdi
call fcn.180038aa0
mov rbx, qword [rbp + 0x38]
mov r14, qword [rbp + 0xe0]
mov qword [rbx + 0x28], 0
mov qword [rbx + 0x30], 0x181e
mov qword [rbx + 0x38], r14
mov qword [rbx + 0x40], 0x181e
mov byte [rbx + 0x48], 0
mov qword [rbp + 0x40], 2
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x10]
call fcn.180033b10
lea rcx, [rbp - 0x50]
call fcn.18000eaa0
lea rcx, [rbp + 0x10]
call fcn.18000ebd0
movzx eax, byte [0x183596000]
mov edx, 0x21
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e56c
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax], xmm7
mov byte [rax + 0x20], 0x65
mov qword [rbp + 0x10], 0x21
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], 0x21
mov byte [rbp + 0x28], 0
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 8
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x98], 0
mov qword [rbp + 0xa8], 0
mov word [rbp + 0xb0], 0
mov qword [rbp + 0x48], rsi
mov dword [rbp + 0xd4], 0
mov word [rbp + 0xd0], 0
mov word [rbp + 0xd8], 0
mov dword [rbp + 0x68], 6
mov dword [rbp + 0x78], 6
mov dword [rbp + 0x88], 6
mov qword [rbp + 0xb8], 0
mov qword [rbp + 0xc8], 0
movzx eax, byte [0x183596000]
mov edx, 2
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e57d
mov qword [rbp + 0xe0], rax
mov word [rax], 0x632d
mov rcx, rdi
call fcn.180038aa0
mov rsi, qword [rbp + 0x38]
mov qword [rsi], 0
mov qword [rsi + 8], 2
mov rax, qword [rbp + 0xe0]
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], 2
mov byte [rsi + 0x20], 0
mov qword [rbp + 0x40], 1
movzx eax, byte [0x183596000]
mov edx, 0x145f
xor ecx, ecx
call fcn.180034da0
test rax, rax
je 0x18000e58e
mov rbx, rax
lea rdx, [0x18357f4ae]
mov r8d, 0x145f
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
cmp qword [rbp + 0x30], 1
jne 0x18000e353
mov qword [rbp + 0xe0], rbx
mov rcx, rdi
call fcn.180038aa0
mov rsi, qword [rbp + 0x38]
mov rbx, qword [rbp + 0xe0]
mov qword [rsi + 0x28], 0
mov qword [rsi + 0x30], 0x145f
mov qword [rsi + 0x38], rbx
mov qword [rsi + 0x40], 0x145f
mov byte [rsi + 0x48], 0
mov qword [rbp + 0x40], 2
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x10]
call fcn.180033b10
lea rcx, [rbp - 0x50]
call fcn.18000eaa0
lea rcx, [rbp + 0x10]
call fcn.18000ebd0
mov rcx, qword [0x183595f98]
xor edx, edx
mov r8, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
movaps xmm6, xmmword [rbp + 0xf0]
movaps xmm7, xmmword [rbp + 0x100]
add rsp, 0x198
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbp + 0x10], rax
lea rax, [0x183585470]
mov qword [rsp + 0x20], rax
lea rcx, [0x1835868d0]
lea r9, case.0x1800391af.211
lea r8, [rbp + 0x10]
mov edx, 0x2b
call fcn.18006a450
jmp 0x18000e59d
lea rcx, [0x1835853e0]
lea r8, [0x183585408]
mov edx, 0x23
call fcn.18006a570
jmp 0x18000e59d
lea rcx, [0x183585440]
call fcn.18006a370
jmp 0x18000e59d
call qword [sym.imp.KERNEL32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbp + 0x10], rax
lea rax, [0x183585458]
mov qword [rsp + 0x20], rax
lea rcx, [0x1835868d0]
lea r9, case.0x1800391af.211
lea r8, [rbp + 0x10]
mov edx, 0x2b
call fcn.18006a450
jmp 0x18000e59d
lea rax, [0x183582e10]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], 1
mov qword [rbp + 0x20], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
lea rdx, [0x183582e68]
lea rcx, [rbp + 0x10]
call fcn.18006a130
jmp 0x18000e59d
lea rax, [0x183582e10]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], 1
mov qword [rbp + 0x20], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
lea rdx, [0x183582e68]
lea rcx, [rbp + 0x10]
call fcn.18006a130
jmp 0x18000e59d
mov ecx, 1
mov edx, 9
call fcn.180069f40
jmp 0x18000e59d
call qword [sym.imp.KERNEL32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbp + 0x10], rax
lea rax, [0x183585470]
mov qword [rsp + 0x20], rax
lea rcx, [0x1835868d0]
lea r9, case.0x1800391af.211
lea r8, [rbp + 0x10]
mov edx, 0x2b
call fcn.18006a450
jmp 0x18000e59d
mov ecx, 1
mov edx, 0x21
call fcn.180069f40
jmp 0x18000e59d
mov ecx, 1
mov edx, 2
call fcn.180069f40
jmp 0x18000e59d
mov ecx, 1
mov edx, 0x181e
call fcn.180069f40
jmp 0x18000e59d
mov ecx, 1
mov edx, 0x21
call fcn.180069f40
jmp 0x18000e59d
mov ecx, 1
mov edx, 2
call fcn.180069f40
jmp 0x18000e59d
mov ecx, 1
mov edx, 0x145f
call fcn.180069f40
ud2