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

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x120
mov qword [rax - 0x80], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x18008f230]
xor rax, rsp
mov qword [rsp + 0x110], rax
mov rsi, rcx
mov r8, qword [rsp + 0x170]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x88], rdx
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0xb0], rax
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0xa0], rdx
xor edi, edi
mov r12d, edi
lea rax, [0x180071e48]
test r8, r8
cmovne rax, r8
mov qword [rsp + 0x98], rax
mov dword [rsp + 0x44], edi
mov dword [rdx], edi
mov dword [rsp + 0x40], edi
mov qword [rsp + 0x60], rdi
mov rax, qword [rcx + 0x20]
sub rax, qword [rcx + 0x18]
sar rax, 5
mov qword [rsp + 0x80], rax
lea r15, [0x18008d218]
mov r9, qword [0x18008d218]
cmp dword [rsp + 0x44], edi
jne 0x18003d867
mov r14, qword [rsp + 0x60]
cmp r14, qword [rsp + 0x80]
jae 0x18003d832
mov r12d, edi
inc dword [rsp + 0x40]
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
shl r14, 5
add r14, qword [rsi + 0x18]
cmp qword [r14 + 0x18], 8
jb 0x18003d385
mov r14, qword [r14]
mov rcx, qword [0x18008d218]
cmp rcx, r15
je 0x18003d3af
test byte [rcx + 0x1c], 4
je 0x18003d3af
mov edx, 0xf
mov r9, r14
lea r8, [0x180079190]
mov rcx, qword [rcx + 0x10]
call fcn.180001364
mov r8, r14
lea rdx, [rsp + 0x78]
mov rcx, qword [rsi + 0x10]
call fcn.1800286f8
nop
mov r9d, 1
lea r8d, [r9 + 0xf]
lea rdx, str.wZQ9Z7G_VQyey2nDOVI7ikHnOyau_Au_
lea rcx, [rsp + 0xd0]
call fcn.180028834
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
mov r9, r14
lea r8, str.POST
lea rdx, [rsp + 0x48]
mov rax, qword [rax + 0x58]
call qword [case.0x180062b2e.0]
nop
mov r9d, 2
lea r8d, [r9 + 0xe]
lea rdx, str.WySA9KmpZDSPD8Kd_
lea rcx, [rsp + 0xe0]
call fcn.180028834
mov r9d, 3
lea r8d, [r9 + 0xf]
lea rdx, [0x180079160]
lea rcx, [rsp + 0xf0]
call fcn.180028834
mov rcx, qword [rsp + 0x48]
add rcx, 0x60
mov rax, qword [rcx]
mov rdx, qword [rsp + 0x88]
mov rax, qword [rax + 8]
call qword [case.0x180062b2e.0]
mov rcx, qword [rsp + 0x48]
add rcx, 0x60
mov rax, qword [rcx]
mov dl, byte [rsp + 0x18a]
mov rax, qword [rax + 0x40]
call qword [case.0x180062b2e.0]
mov byte [rsp + 0x102], dil
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x90]
call fcn.180039670
mov dword [rsi + 0x74], eax
mov rbx, qword [rsp + 0x68]
mov rax, qword [0x18008d218]
cmp rax, r15
je 0x18003d4de
test byte [rax + 0x1c], 4
je 0x18003d4de
mov rcx, rbx
call fcn.1800395c8
mov r9d, eax
mov rax, qword [0x18008d218]
mov edx, 0x10
lea r8, [0x180079190]
mov rcx, qword [rax + 0x10]
call fcn.180001330
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x18003d508
mov rcx, qword [rax + 0x38]
movsxd rdx, dword [rcx + 4]
lea rcx, [rax + 0x38]
add rcx, rdx
mov rax, qword [rcx]
mov rax, qword [rax]
call qword [case.0x180062b2e.0]
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
call fcn.18003d898
mov r13d, eax
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.180039670
mov ebx, eax
mov rcx, qword [0x18008d218]
cmp rcx, r15
je 0x18003d588
test byte [rcx + 0x1c], 4
je 0x18003d588
mov rcx, qword [rsp + 0x70]
call fcn.1800395c8
mov r9d, eax
mov rax, qword [0x18008d218]
mov edx, 0x11
mov dword [rsp + 0x20], ebx
lea r8, [0x180079190]
mov rcx, qword [rax + 0x10]
call fcn.1800028e4
mov rcx, qword [rsp + 0x48]
add rcx, 0x60
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x180062b2e.0]
mov ecx, eax
mov rax, qword [rsp + 0xa0]
mov dword [rax], ecx
mov rcx, qword [rsp + 0x48]
add rcx, 0x60
mov rax, qword [rcx]
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rax + 0x18]
call qword [case.0x180062b2e.0]
lea rbx, [rsi + 0x38]
mov rax, rbx
cmp qword [rbx + 0x18], 8
jb 0x18003d5d9
mov rax, qword [rbx]
mov qword [rbx + 0x10], rdi
mov word [rax], di
mov dword [rsi + 0x30], 1
cmp byte [rsp + 0x188], dil
jne 0x18003d63b
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
mov r8d, 0x80000
mov rdx, rbx
mov rax, qword [rax + 0x68]
call qword [case.0x180062b2e.0]
test eax, eax
jne 0x18003d63b
mov rcx, qword [0x18008d218]
cmp rcx, r15
je 0x18003d63b
test byte [rcx + 0x1c], 2
je 0x18003d63b
lea edx, [rax + 0x12]
mov r9d, 0x80000
lea r8, [0x180079190]
mov rcx, qword [rcx + 0x10]
call fcn.180001600
mov dword [rsi + 0x70], r13d
mov rcx, qword [0x18008d218]
cmp rcx, r15
je 0x18003d678
test byte [rcx + 0x1c], 4
je 0x18003d678
cmp qword [rbx + 0x18], 8
jb 0x18003d65b
mov rbx, qword [rbx]
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], r13d
mov r9, r14
mov rcx, qword [rcx + 0x10]
call fcn.18003cb9c
mov rcx, qword [0x18008d218]
cmp r13d, 0xc8
jne 0x18003d68b
mov dword [rsp + 0x44], 1
jmp 0x18003d6b3
cmp rcx, r15
je 0x18003d6b3
test byte [rcx + 0x1c], 1
je 0x18003d6b3
mov edx, 0x14
mov qword [rsp + 0x20], r14
mov r9d, r13d
lea r8, [0x180079190]
mov rcx, qword [rcx + 0x10]
call fcn.180006038
mov rax, qword [rsp + 0x48]
movups xmm0, xmmword [rax + 0xb4]
movups xmm1, xmmword [rax + 0xc4]
movups xmm2, xmmword [rax + 0xd4]
movq rcx, xmm0
mov rbx, qword [rsp + 0xc0]
mov dword [rbx + 0x78], ecx
shr rcx, 0x20
mov dword [rbx + 0x7c], ecx
psrldq xmm0, 8
movq rcx, xmm0
mov dword [rbx + 0x84], ecx
shr rcx, 0x20
mov dword [rbx + 0x88], ecx
movq rcx, xmm1
mov dword [rbx + 0x8c], ecx
shr rcx, 0x20
mov dword [rbx + 0x90], ecx
psrldq xmm1, 8
movq rcx, xmm1
mov dword [rbx + 0x94], ecx
shr rcx, 0x20
mov dword [rbx + 0x98], ecx
movd dword [rbx + 0x9c], xmm2
movdqa xmm0, xmm2
psrldq xmm0, 4
movd dword [rbx + 0xa0], xmm0
movdqa xmm1, xmm2
psrldq xmm1, 8
movd dword [rbx + 0xa4], xmm1
psrldq xmm2, 0xc
movd dword [rbx + 0xa8], xmm2
mov ecx, dword [rsp + 0x40]
mov dword [rsi + 0x80], ecx
mov rcx, qword [rax + 0x38]
movsxd rdx, dword [rcx + 4]
lea rcx, [rax + 0x38]
add rcx, rdx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x180062b2e.0]
nop
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x18003d7b2
mov rcx, qword [rax + 0x38]
movsxd rdx, dword [rcx + 4]
lea rcx, [rax + 0x38]
add rcx, rdx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x180062b2e.0]
nop
jmp 0x18003d80f
mov r9, qword [0x18008d218]
mov ecx, r12d
call fcn.180035a0c
test eax, eax
jne 0x18003d82c
inc qword [rsp + 0x60]
jmp 0x18003d341
cmp dword [rsp + 0x44], edi
jne 0x18003d867
cmp r9, r15
je 0x18003d853
test byte [r9 + 0x1c], 1
je 0x18003d853
mov edx, 0x16
lea r8, [0x180079190]
mov rcx, qword [r9 + 0x10]
call fcn.180001310
test r12d, r12d
js 0x18003d860
mov r12d, 0x80004005
jmp 0x18003d867
mov dword [rsi + 0x70], 0x1c3
mov eax, r12d
mov rcx, qword [rsp + 0x110]
xor rcx, rsp
call fcn.180040cc0
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret