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

Disassembly:
mov rax, rsp
sub rsp, 0x68
test dl, dl
je 0x1800296ce
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
movaps xmmword [rax - 0x28], xmm7
call fcn.180025b40
xor esi, esi
movabs rbp, 0xd80958fc74e988a6
mov rcx, rbp
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.1800259e0
call fcn.180025b40
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180025b40
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
movabs rcx, 0x3fef770d40960d5a
inc dword [rax + 8]
call fcn.1800259e0
call fcn.180025b40
mov rcx, qword [rax]
movsd xmm0, qword [rcx + 0x10]
movups xmm7, xmmword [rcx]
movsd qword [rsp + 0x30], xmm0
call fcn.180025b40
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180025b40
lea r8, str.prop_boogieboard_05
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov qword [rcx + rdx*8], r8
movabs rcx, 0xd24d37cc275948cc
inc dword [rax + 8]
call fcn.1800259e0
call fcn.180025b40
mov rcx, qword [rax]
mov ebx, dword [rcx]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x1801f355c]
cmp eax, 0x64
jb 0x1800296b7
mov rax, qword [0x1801f2f58]
mov qword [rsp + 0x60], rdi
movaps xmmword [rsp + 0x50], xmm6
mov rcx, qword [rax + 0x70]
mov word [rcx], 0x9090
call fcn.180025b40
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm7
inc dword [rax + 8]
call fcn.180025b40
shufps xmm7, xmm7, 0xaa
subss xmm7, dword [0x180136610]
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm7
inc dword [rax + 8]
call fcn.180025b40
movss xmm0, dword [rsp + 0x30]
subss xmm0, dword [0x180136610]
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm0
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
movabs rcx, 0x509d5878eb39e842
inc dword [rax + 8]
call fcn.1800259e0
call fcn.180025b40
mov rdx, qword [rax]
mov rax, qword [0x1801f2f58]
mov edi, dword [rdx]
mov rdx, qword [rax + 0x70]
mov word [rdx], 0x574
call fcn.180025b40
mov rcx, rbp
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.1800259e0
call fcn.180025b40
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180025b40
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
movabs rcx, 0xe83d4f9ba2a38914
inc dword [rax + 8]
call fcn.1800259e0
call fcn.180025b40
mov rcx, qword [rax]
movss xmm6, dword [rcx]
call fcn.180025b40
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], edi
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0x8e2530aa8ada980e
inc dword [rax + 8]
call fcn.1800259e0
call fcn.180025b40
call qword [sym.imp.KERNEL32.dll_GetTickCount]
movaps xmm6, xmmword [rsp + 0x50]
mov rdi, qword [rsp + 0x60]
mov dword [0x1801f355c], eax
mov rsi, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x68
ret