Function at 0x1800422d0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbp
push r13
push r15
lea rbp, [rax - 0xaa8]
sub rsp, 0xb90
mov qword [rax - 0x20], rbx
mov qword [rax - 0x38], r12
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, qword [0x18005f9b0]
mov rbx, rax
jbe 0x180042316
call fcn.180046900
movsxd rcx, dword [rax + 0x88]
add rcx, rbx
mov qword [0x18005f9b0], rcx
call fcn.180046900
movsxd rcx, dword [rax + 0x84]
lea rax, [0x1800539e8]
mov ecx, dword [rax + rcx*4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x18004234a
call fcn.180046900
cmp byte [rax + 0x16], 0
sete bl
call fcn.180046900
mov byte [rax + 0x16], bl
xor r15d, r15d
mov qword [rsp + 0xb78], rdi
xor ecx, ecx
mov qword [rsp + 0xb68], r14
xor eax, eax
mov qword [rbp + 0x68], r15
xor edx, edx
mov qword [rbp + 0x98], r15
cmp byte [0x18005f8e9], al
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0xab8], rcx
jne 0x1800423e7
mov rdi, qword [0x18005fa20]
mov rbx, qword [0x18005fa28]
sub rbx, rdi
mov rdx, rbx
sar rdx, 5
test rdx, rdx
je 0x1800423bc
lea rcx, [rbp + 0x88]
call fcn.18004da90
mov r15, qword [rbp + 0x98]
mov qword [rbp + 0x68], r15
mov r13, qword [rbp + 0x88]
mov r8, rbx
mov rcx, r13
mov rdx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + r13]
mov rcx, r13
mov r14, rax
mov qword [rbp + 0xab8], rcx
mov rdx, r13
jmp 0x1800423f5
mov r14, qword [rbp + 0x90]
mov r13, qword [rbp + 0x88]
sub rax, rcx
xor r12d, r12d
sar rax, 5
test rax, rax
je 0x180044181
mov qword [rsp + 0xb80], rsi
lea r15, [0x18005451e]
movaps xmmword [rsp + 0xb40], xmm7
lea r13, str.PLAYER
movsd xmm7, qword [0x1800549e0]
xor esi, esi
movaps xmmword [rsp + 0xb30], xmm8
sub r14, rdx
movsd xmm8, qword [0x1800549f8]
movaps xmmword [rsp + 0xb20], xmm9
movsd xmm9, qword [0x180054a08]
movaps xmmword [rsp + 0xaf0], xmm12
xorps xmm12, xmm12
movaps xmmword [rsp + 0xae0], xmm13
movsd xmm13, qword [0x180054a28]
movaps xmmword [rsp + 0xad0], xmm14
movss xmm14, dword [0x1800549ac]
movaps xmmword [rsp + 0xb50], xmm6
movaps xmmword [rsp + 0xb10], xmm10
sar r14, 5
movaps xmmword [rsp + 0xb00], xmm11
movaps xmmword [rsp + 0xac0], xmm15
mov qword [rbp + 0xab0], rsi
mov qword [rbp + 0x128], r14
nop dword [rax]
mov rax, rsi
shl rax, 5
movups xmm1, xmmword [rax + rcx]
movups xmm0, xmmword [rax + rcx + 0x10]
movq rdi, xmm1
movups xmmword [rbp + 0x1c0], xmm1
movups xmmword [rbp + 0x1d0], xmm0
cmp rdi, 0x10000
jb 0x1800440e3
call fcn.180046bc0
cmp rdi, qword [rax + 0x58]
je 0x1800440dc
cmp qword [rbp + 0x1c8], 0
je 0x1800440dc
test rdi, rdi
je 0x1800440dc
call fcn.180046bc0
cmp qword [rax + 0x70], 0
je 0x1800440dc
call fcn.180046bc0
cmp qword [rax + 0x58], 0
je 0x1800440dc
call fcn.180046bc0
cmp qword [rax + 0x70], 0x10000
jb 0x1800440dc
call fcn.180046a40
mov ebx, dword [rax + 0x50]
call fcn.180046bc0
lea rcx, [rbp + 0x190]
mov rdx, qword [rax + 0x70]
add rdx, rbx
call fcn.18004a9c0
call fcn.180046a40
mov ecx, dword [rax + 0x24]
add rcx, rdi
call fcn.180046d10
mov rbx, rax
cmp rax, 0x10000
jb 0x1800440dc
call fcn.180046a40
lea rcx, [rbp + 0x1a8]
mov edx, dword [rax + 0x50]
add rdx, rbx
call fcn.18004a9c0
movsd xmm11, qword [rbp + 0x1a8]
ucomisd xmm11, xmm12
movsd xmm6, qword [rbp + 0x1b0]
movsd xmm10, qword [rbp + 0x1b8]
jp 0x1800425d8
jne 0x1800425d8
ucomisd xmm6, xmm12
jp 0x1800425d8
jne 0x1800425d8
ucomisd xmm10, xmm12
jp 0x1800425d8
je 0x1800440dc
movaps xmm0, xmm10
movsd qword [rbp + 0x150], xmm11
subsd xmm0, xmm13
movsd qword [rbp + 0x158], xmm6
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x130]
movsd qword [rbp + 0x160], xmm0
call fcn.180041280
movaps xmm0, xmm10
movsd qword [rbp + 0x170], xmm11
addsd xmm0, xmm13
movsd qword [rbp + 0x178], xmm6
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0xa0]
movsd qword [rbp + 0x180], xmm0
call fcn.180041280
movsd xmm2, qword [rbp + 0x190]
movsd xmm0, qword [rbp + 0x198]
subsd xmm2, xmm11
movsd xmm1, qword [rbp + 0x1a0]
subsd xmm0, xmm6
subsd xmm1, xmm10
mulsd xmm2, xmm2
mulsd xmm0, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm0
xorps xmm0, xmm0
addsd xmm2, xmm1
cvtpd2ps xmm3, xmm2
ucomiss xmm0, xmm3
ja 0x180042691
xorps xmm0, xmm0
sqrtss xmm0, xmm3
jmp 0x180042699
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mulss xmm0, dword [0x180054938]
xorps xmm6, xmm6
movsd xmm13, qword [rbp + 0xa8]
movsd xmm12, qword [rbp + 0x138]
movaps xmm10, xmm13
subsd xmm10, xmm12
cvtss2sd xmm6, xmm0
andps xmm10, xmmword [0x180055040]
movaps xmm11, xmm10
movsd qword [rsp + 0x50], xmm6
mulsd xmm11, qword [0x1800549d8]
call fcn.180046900
movups xmm0, xmmword [rax + 0x1c]
movups xmmword [rbp - 0x80], xmm0
call fcn.180046900
movups xmm0, xmmword [rax + 0x38]
movups xmmword [rbp + 0x110], xmm0
call fcn.180046900
cmp byte [rax + 0x12], 0
je 0x1800427e3
call fcn.180046900
cmp byte [rax + 0x13], 0
je 0x1800427e3
call fcn.180046900
movups xmm8, xmmword [rax + 0x54]
call fcn.180046900
movss xmm9, dword [rax + 0x94]
call fcn.180046bc0
mov eax, dword [rax + 0x24]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2ps xmm7, xmm7
call fcn.180046bc0
lea r8, str.Foreground
movaps xmmword [rsp + 0x60], xmm8
mov eax, dword [rax + 0x28]
cdq
sub eax, edx
mov edx, 1
sar eax, 1
movd xmm6, eax
mov rax, qword [0x18005f8f0]
cvtdq2ps xmm6, xmm6
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
lea rcx, [rsp + 0x60]
movss dword [rbp + 0xac0], xmm6
movss dword [rbp + 0xac4], xmm7
mov r8, rax
call fcn.180005330
mov r9d, eax
movss dword [rsp + 0x28], xmm14
movaps xmm2, xmm9
mov dword [rsp + 0x20], 0
lea rdx, [rbp + 0xac0]
mov rcx, r8
call fcn.180023460
movsd xmm7, qword [0x1800549e0]
movsd xmm8, qword [0x1800549f8]
movsd xmm9, qword [0x180054a08]
movsd xmm6, qword [rsp + 0x50]
call fcn.180046bc0
cmp qword [rax + 0x58], 0
je 0x18004295b
call fcn.180046bc0
cmp qword [rax + 0x70], 0
je 0x18004295b
call fcn.180046900
cmp byte [rax + 0x17], 0
jne 0x18004281d
call fcn.180046900
cmp byte [rax + 0x18], 0
je 0x18004295b
call fcn.180046bc0
mov rcx, qword [rax + 0x58]
add rcx, 0x6e0
call fcn.180046d10
test rax, rax
je 0x18004295b
lea rcx, [rax + 0x100]
call fcn.180046d10
test rax, rax
je 0x18004295b
lea rdx, [rax + 0x1360]
lea rcx, [rbp + 0x570]
call fcn.18004c7c0
mov rcx, qword [rbp + 0x570]
add rcx, 0x18
call fcn.180046d10
mov r14, rax
call fcn.180046900
cmp byte [rax + 0x17], 0
je 0x1800428de
call fcn.180046900
mov edi, dword [0x18005f910]
lea rbx, [r14 + 0x48]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r9d, edi
mov qword [rsp + 0x20], rbx
mov edx, eax
lea r8, [rsi + 0x70]
call fcn.180040a50
call fcn.180046900
mov edi, dword [0x18005f910]
lea rbx, [r14 + 0x4c]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r9d, edi
mov qword [rsp + 0x20], rbx
mov edx, eax
lea r8, [rsi + 0x70]
call fcn.180040a50
mov rsi, qword [rbp + 0xab0]
call fcn.180046900
cmp byte [rax + 0x18], 0
je 0x18004294f
mov edi, dword [0x18005f910]
lea rbx, [r14 + 0xc8]
mov dword [rbp + 0xab0], 0x40800000
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r9d, edi
mov qword [rsp + 0x20], rbx
mov edx, eax
lea r8, [rbp + 0xab0]
call fcn.180040a50
mov edi, dword [0x18005f910]
lea rbx, [r14 + 0xcc]
mov dword [rbp + 0xab0], 0x40800000
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r9d, edi
mov qword [rsp + 0x20], rbx
mov edx, eax
lea r8, [rbp + 0xab0]
call fcn.180040a50
call fcn.180046900
mov r14, qword [rbp + 0x128]
call fcn.180046900
mov ebx, dword [rbp + 0x1dc]
cmp byte [rax + 0x15], 0
je 0x180042980
call fcn.180046900
cmp byte [rax + 0x16], 0
je 0x180042980
cmp ebx, 1
ja 0x1800440cf
call fcn.180046900
movss xmm0, dword [rax + 0x98]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm6
jbe 0x1800440cf
call fcn.180046900
movsd xmm6, qword [rbp + 0xa0]
movss xmm14, dword [rbp - 0x74]
movss xmm15, dword [rbp - 0x78]
cmp byte [rax + 2], 0
je 0x180042c70
test ebx, ebx
jne 0x180042b44
call fcn.180046900
movss xmm0, dword [rbp - 0x80]
movss dword [rbp + 0x100], xmm0
movss xmm0, dword [rbp - 0x7c]
movss xmm4, dword [rax + 0x8c]
lea rax, [rbp + 0x100]
movss dword [rbp + 0x104], xmm0
movaps xmm0, xmm11
mulsd xmm0, qword [0x1800549d0]
movss dword [rsp + 0x28], xmm4
cvtpd2ps xmm3, xmm10
mov qword [rsp + 0x20], rax
subsd xmm6, xmm0
movss dword [rbp + 0x108], xmm15
cvtpd2ps xmm2, xmm11
cvtpd2ps xmm0, xmm6
cvtpd2ps xmm1, xmm13
movss dword [rbp + 0x10c], xmm14
call fcn.180041670
call fcn.180046900
movss xmm0, dword [rbp - 0x80]
movaps xmm1, xmm11
movss dword [rbp + 0xc0], xmm0
addsd xmm1, xmm7
movss xmm0, dword [rbp - 0x7c]
movaps xmm4, xmm6
movss xmm5, dword [rax + 0x8c]
subsd xmm4, xmm7
movss dword [rbp + 0xc4], xmm0
lea rax, [rbp + 0xc0]
movaps xmm0, xmm10
movss dword [rsp + 0x28], xmm5
addsd xmm0, xmm7
movss dword [rbp + 0xc8], xmm15
cvtpd2ps xmm2, xmm1
mov qword [rsp + 0x20], rax
cvtpd2ps xmm3, xmm0
movaps xmm0, xmm13
movss dword [rbp + 0xcc], xmm14
subsd xmm0, xmm7
cvtpd2ps xmm1, xmm0
cvtpd2ps xmm0, xmm4
call fcn.180041670
call fcn.180046900
movss xmm0, dword [rbp - 0x80]
subsd xmm6, xmm8
movss xmm7, dword [rbp - 0x7c]
movaps xmm1, xmm11
movss dword [rbp + 0xd0], xmm0
addsd xmm1, xmm8
movss xmm4, dword [rax + 0x8c]
movaps xmm0, xmm10
addsd xmm0, xmm8
movss dword [rsp + 0x28], xmm4
lea rax, [rbp + 0xd0]
movss dword [rbp + 0xd4], xmm7
movss dword [rbp + 0xd8], xmm15
cvtpd2ps xmm2, xmm1
mov qword [rsp + 0x20], rax
cvtpd2ps xmm3, xmm0
movaps xmm0, xmm13
movss dword [rbp + 0xdc], xmm14
subsd xmm0, xmm8
cvtpd2ps xmm1, xmm0
cvtpd2ps xmm0, xmm6
call fcn.180041670
movsd xmm6, qword [rbp + 0xa0]
jmp 0x180042c75
movaps xmm0, xmm11
mulsd xmm0, qword [0x1800549d0]
movsd qword [rbp + 0xab0], xmm0
cmp ebx, 1
jne 0x180042c70
call fcn.180046900
movups xmm0, xmmword [rbp + 0x110]
subsd xmm6, qword [rbp + 0xab0]
movss xmm4, dword [rax + 0x8c]
lea rax, [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
movss dword [rsp + 0x28], xmm4
cvtpd2ps xmm3, xmm10
mov qword [rsp + 0x20], rax
cvtpd2ps xmm0, xmm6
cvtpd2ps xmm2, xmm11
cvtpd2ps xmm1, xmm13
call fcn.180041670
call fcn.180046900
movups xmm0, xmmword [rbp + 0x110]
movaps xmm1, xmm11
movaps xmm4, xmm6
movss xmm5, dword [rax + 0x8c]
addsd xmm1, xmm7
movdqa xmmword [rsp + 0x60], xmm0
subsd xmm4, xmm7
movaps xmm0, xmm10
movss dword [rsp + 0x28], xmm5
addsd xmm0, xmm7
lea rax, [rsp + 0x60]
cvtpd2ps xmm2, xmm1
mov qword [rsp + 0x20], rax
cvtpd2ps xmm3, xmm0
movaps xmm0, xmm13
subsd xmm0, xmm7
cvtpd2ps xmm1, xmm0
cvtpd2ps xmm0, xmm4
call fcn.180041670
call fcn.180046900
movups xmm0, xmmword [rbp + 0x110]
movaps xmm1, xmm11
subsd xmm6, xmm8
movss xmm4, dword [rax + 0x8c]
addsd xmm1, xmm8
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
movaps xmm0, xmm10
movss dword [rsp + 0x28], xmm4
addsd xmm0, xmm8
mov qword [rsp + 0x20], rax
cvtpd2ps xmm2, xmm1
cvtpd2ps xmm3, xmm0
movaps xmm0, xmm13
subsd xmm0, xmm8
cvtpd2ps xmm1, xmm0
cvtpd2ps xmm0, xmm6
call fcn.180041670
movsd xmm6, qword [rbp + 0xa0]
movss xmm7, dword [rbp - 0x7c]
call fcn.180046900
cmp byte [rax + 0xf], 0
je 0x180042e06
test ebx, ebx
jne 0x180042d49
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movss xmm0, dword [rbp - 0x80]
lea edx, [rbx + 1]
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm7
mov rcx, qword [rax + 0x1dc0]
movss dword [rbp + 0xe8], xmm15
movss dword [rbp + 0xec], xmm14
mov rcx, qword [rcx]
call fcn.180006ec0
mulsd xmm10, qword [0x1800549d0]
lea rcx, [rbp + 0xe0]
mov r8, rax
movaps xmm0, xmm11
mulsd xmm0, qword [0x1800549d0]
addsd xmm10, xmm13
addsd xmm0, xmm6
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xac8], xmm0
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0xacc], xmm0
call fcn.180005330
movss xmm10, dword [0x1800549ac]
lea rdx, [rbp + 0xac8]
cvtpd2ps xmm2, xmm11
mov r9d, eax
mov rcx, r8
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], ebx
call fcn.180023460
jmp 0x180042e0f
cmp ebx, 1
jne 0x180042e06
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movss xmm0, dword [rbp - 0x80]
mov edx, ebx
movss dword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm7
mov rcx, qword [rax + 0x1dc0]
movss dword [rbp + 0xf8], xmm15
movss dword [rbp + 0xfc], xmm14
mov rcx, qword [rcx]
call fcn.180006ec0
mulsd xmm10, qword [0x1800549d0]
lea rcx, [rbp + 0xf0]
mov r8, rax
movaps xmm0, xmm11
mulsd xmm0, qword [0x1800549d0]
addsd xmm10, xmm13
addsd xmm0, xmm6
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x70], xmm0
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0x74], xmm0
call fcn.180005330
movss xmm10, dword [0x1800549ac]
lea rdx, [rbp + 0x70]
cvtpd2ps xmm2, xmm11
mov r9d, eax
mov rcx, r8
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 0
call fcn.180023460
jmp 0x180042e0f
movss xmm10, dword [0x1800549ac]
call fcn.180046900
movsd xmm7, qword [rbp + 0x130]
cmp byte [rax + 6], 0
je 0x1800432cd
test ebx, ebx
jne 0x180042edf
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
lea edx, [rbx + 1]
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180055000]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
movaps xmm0, xmm7
xorps xmm8, xmm8
subsd xmm0, xmm9
cvtpd2ps xmm1, xmm12
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x7c], xmm1
movss dword [rbp + 0x78], xmm0
test eax, 0xff000000
je 0x1800432d1
mov rdx, qword [r8 + 0x38]
lea r9, [rsp + 0x60]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], bl
movss dword [rsp + 0x40], xmm8
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r9
mov r9, qword [rbp + 0x78]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], eax
call fcn.1800275b0
jmp 0x1800432d1
cmp ebx, 1
jne 0x180042fb0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
mov edx, ebx
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180055000]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
movaps xmm0, xmm7
xorps xmm8, xmm8
subsd xmm0, xmm9
cvtpd2ps xmm1, xmm12
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x84], xmm1
movss dword [rbp + 0x80], xmm0
test eax, 0xff000000
je 0x1800432d1
mov rdx, qword [r8 + 0x38]
lea r9, [0x180054523]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
mov qword [rsp + 0x38], r9
lea r9, [0x180054520]
mov qword [rsp + 0x30], r9
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], r9
mov r9, qword [rbp + 0x80]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], eax
call fcn.1800275b0
jmp 0x1800432d1
cmp ebx, 2
jne 0x180043079
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
lea edx, [rbx - 1]
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180054db0]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
movaps xmm0, xmm7
xorps xmm8, xmm8
subsd xmm0, xmm9
cvtpd2ps xmm1, xmm12
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x54], xmm1
movss dword [rbp - 0x58], xmm0
test eax, 0xff000000
je 0x1800432d1
mov rdx, qword [r8 + 0x38]
lea r9, [0x180054529]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
mov qword [rsp + 0x38], r9
lea r9, str.CHEST
mov qword [rsp + 0x30], r9
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], r9
mov r9, qword [rbp - 0x58]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], eax
call fcn.1800275b0
jmp 0x1800432d1
cmp ebx, 3
jne 0x180043142
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
lea edx, [rbx - 2]
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180054db0]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
movaps xmm0, xmm7
xorps xmm8, xmm8
subsd xmm0, xmm9
cvtpd2ps xmm1, xmm12
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x4c], xmm1
movss dword [rbp - 0x50], xmm0
test eax, 0xff000000
je 0x1800432d1
mov rdx, qword [r8 + 0x38]
lea r9, [0x180054531]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
mov qword [rsp + 0x38], r9
lea r9, str.ALTAR
mov qword [rsp + 0x30], r9
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], r9
mov r9, qword [rbp - 0x50]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], eax
call fcn.1800275b0
jmp 0x1800432d1
cmp ebx, 4
jne 0x18004320b
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
lea edx, [rbx - 3]
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180054db0]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
movaps xmm0, xmm7
xorps xmm8, xmm8
subsd xmm0, xmm9
cvtpd2ps xmm1, xmm12
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x44], xmm1
movss dword [rbp - 0x48], xmm0
test eax, 0xff000000
je 0x1800432d1
mov rdx, qword [r8 + 0x38]
lea r9, [0x180054538]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
mov qword [rsp + 0x38], r9
lea r9, str.ITEM
mov qword [rsp + 0x30], r9
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], r9
mov r9, qword [rbp - 0x48]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], eax
call fcn.1800275b0
jmp 0x1800432d1
cmp ebx, 5
jne 0x1800432cd
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
lea edx, [rbx - 4]
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180054da0]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
movaps xmm0, xmm7
xorps xmm8, xmm8
subsd xmm0, xmm9
cvtpd2ps xmm1, xmm12
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x3c], xmm1
movss dword [rbp - 0x40], xmm0
test eax, 0xff000000
je 0x1800432d1
mov rdx, qword [r8 + 0x38]
lea r9, [0x180054542]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
mov qword [rsp + 0x38], r9
lea r9, str.PORTAL
mov qword [rsp + 0x30], r9
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], r9
mov r9, qword [rbp - 0x40]
movups xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x20], eax
call fcn.1800275b0
jmp 0x1800432d1
xorps xmm8, xmm8
call fcn.180046900
cmp byte [rax + 7], 0
je 0x18004337c
cmp ebx, 1
ja 0x18004337c
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180055000]
mov rbx, rax
movups xmmword [rsp + 0x60], xmm0
cvtpd2ps xmm0, xmm7
cvtpd2ps xmm1, xmm12
movss dword [rbp - 0x38], xmm0
movss dword [rbp - 0x34], xmm1
call fcn.180046bc0
movd xmm6, dword [rax + 0x24]
cvtdq2ps xmm6, xmm6
call fcn.180046bc0
lea rcx, [rsp + 0x60]
movss dword [rbp - 0x2c], xmm6
mov eax, dword [rax + 0x28]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x30], xmm0
call fcn.180005330
mov r9d, eax
movss dword [rsp + 0x20], xmm10
lea rdx, [rbp - 0x30]
mov rcx, rbx
lea r8, [rbp - 0x38]
call fcn.180022bd0
call fcn.180046900
cmp byte [rax + 5], 0
je 0x180043492
movsd xmm2, qword [rsp + 0x50]
lea rdx, str.Dist:_.fm
movq r8, xmm2
lea rcx, [rbp + 0x5c0]
call fcn.18004d690
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
call fcn.180006ec0
movaps xmm0, xmmword [0x180054cd0]
lea rcx, [rsp + 0x60]
movups xmmword [rsp + 0x60], xmm0
mov r8, rax
call fcn.180005330
subsd xmm7, xmm9
mov r9d, eax
addsd xmm12, qword [0x180054a10]
cvtpd2ps xmm0, xmm7
movss dword [rbp - 0x28], xmm0
cvtpd2ps xmm0, xmm12
movss dword [rbp - 0x24], xmm0
test eax, 0xff000000
je 0x180043492
lea rcx, [rbp + 0x5c0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x180043421
lea rcx, [rbp + 0x5c0]
add rcx, rax
lea rax, [rbp + 0x5c0]
cmp rax, rcx
je 0x180043492
mov rax, qword [r8 + 0x38]
mov rdx, r8
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
movss xmm2, dword [rax + 0x10]
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0x5c0]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax + 8]
mov dword [rsp + 0x20], r9d
mov r9, qword [rbp - 0x28]
movups xmmword [rsp + 0x60], xmm0
call fcn.1800275b0
call fcn.180046900
cmp byte [rax + 3], 0
je 0x1800440c6
mov rbx, qword [rbp + 0x1c8]
lea rcx, [rbp - 0x70]
mov rdx, rbx
mov r8d, 0x2e
call fcn.180041010
lea rdx, [rbp + 0x580]
lea rcx, [rbp + 0xa0]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x580], xmm0
movsd qword [rbp + 0x590], xmm1
call fcn.180041280
mov r8d, 0x2d
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x130]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x1e0], xmm0
movsd qword [rbp + 0x1f0], xmm1
call fcn.180041280
mov r8d, 3
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x200]
lea rcx, [rsp + 0x60]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x200], xmm0
movsd qword [rbp + 0x210], xmm1
call fcn.180041280
mov r8d, 4
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0x110]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x220], xmm0
movsd qword [rbp + 0x230], xmm1
call fcn.180041280
mov r8d, 5
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x420]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x240], xmm0
movsd qword [rbp + 0x250], xmm1
call fcn.180041280
mov r8d, 2
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x260]
lea rcx, [rbp + 0x468]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x260], xmm0
movsd qword [rbp + 0x270], xmm1
call fcn.180041280
mov r8d, 0x34
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x480]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x280], xmm0
movsd qword [rbp + 0x290], xmm1
call fcn.180041280
mov r8d, 0x30
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x498]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x2a0], xmm0
movsd qword [rbp + 0x2b0], xmm1
call fcn.180041280
mov r8d, 0x35
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0x4b0]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x2c0], xmm0
movsd qword [rbp + 0x2d0], xmm1
call fcn.180041280
mov r8d, 0x31
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x4c8]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x2e0], xmm0
movsd qword [rbp + 0x2f0], xmm1
call fcn.180041280
mov r8d, 0x36
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x4e0]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x300], xmm0
movsd qword [rbp + 0x310], xmm1
call fcn.180041280
mov r8d, 0x32
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x320]
lea rcx, [rbp + 0x4f8]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x320], xmm0
movsd qword [rbp + 0x330], xmm1
call fcn.180041280
mov r8d, 0x1a
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x438]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x340], xmm0
movsd qword [rbp + 0x350], xmm1
call fcn.180041280
mov r8d, 0x1a
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0x450]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x360], xmm0
movsd qword [rbp + 0x370], xmm1
call fcn.180041280
mov r8d, 0x1b
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x380], xmm0
lea rdx, [rbp + 0x380]
movsd qword [rbp + 0x390], xmm1
lea rcx, [rbp + 0x510]
call fcn.180041280
mov r8d, 0x1b
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x3a0]
lea rcx, [rbp + 0x528]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x3a0], xmm0
movsd qword [rbp + 0x3b0], xmm1
call fcn.180041280
mov r8d, 0x1c
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x3c0]
lea rcx, [rbp + 0x558]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x3c0], xmm0
movsd qword [rbp + 0x3d0], xmm1
call fcn.180041280
mov r8d, 9
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x540]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x3e0], xmm0
movsd qword [rbp + 0x3f0], xmm1
call fcn.180041280
xor r8d, r8d
lea rcx, [rbp - 0x70]
mov rdx, rbx
call fcn.180041010
lea rdx, [rbp + 0x400]
lea rcx, [rbp + 0x5a0]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x400], xmm0
movsd qword [rbp + 0x410], xmm1
call fcn.180041280
movsd xmm0, qword [rbp + 0xa0]
lea r8, str.Foreground
mov rax, qword [0x18005f8f0]
mov edx, 1
movsd xmm1, qword [rbp + 0xa8]
movsd xmm7, qword [rbp + 0x130]
movsd xmm6, qword [rbp + 0x138]
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm0, xmm0
mov rcx, qword [rcx]
cvtpd2ps xmm1, xmm1
movss dword [rbp - 0x20], xmm0
cvtpd2ps xmm7, xmm7
cvtpd2ps xmm6, xmm6
movaps xmm0, xmm7
movss dword [rbp - 0x1c], xmm1
unpcklps xmm0, xmm6
movsd qword [rbp + 0xab0], xmm0
call fcn.180006ec0
lea rcx, [rbp - 0x80]
mov r10, rax
call fcn.180005330
movss xmm12, dword [0x1800549c8]
lea rdx, [rbp - 0x20]
mov r9d, eax
movss dword [rsp + 0x20], xmm12
lea r8, [rbp + 0xab0]
mov rcx, r10
mov ebx, eax
call fcn.180022bd0
movsd xmm10, qword [rsp + 0x60]
movsd xmm9, qword [rsp + 0x68]
cvtpd2ps xmm10, xmm10
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movaps xmm0, xmm10
movss dword [rbp - 0x18], xmm7
cvtpd2ps xmm9, xmm9
mov edx, 1
mov rcx, qword [rax + 0x1dc0]
movss dword [rbp - 0x14], xmm6
mov rcx, qword [rcx]
unpcklps xmm0, xmm9
movsd qword [rbp + 0xab0], xmm0
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp - 0x18]
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm7, qword [rbp + 0x110]
mov edx, 1
movsd xmm6, qword [rbp + 0x118]
cvtpd2ps xmm7, xmm7
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm6, xmm6
movaps xmm0, xmm7
movss dword [rbp - 0x10], xmm10
unpcklps xmm0, xmm6
movsd qword [rbp + 0xab0], xmm0
movss dword [rbp - 0xc], xmm9
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp - 0x10]
call fcn.180022bd0
movsd xmm0, qword [rbp + 0x420]
lea r8, str.Foreground
movsd xmm1, qword [rbp + 0x428]
mov edx, 1
mov rax, qword [0x18005f8f0]
cvtpd2ps xmm0, xmm0
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm1, xmm1
mov rcx, qword [rcx]
movss dword [rbp - 8], xmm7
unpcklps xmm0, xmm1
movsd qword [rbp + 0xab0], xmm0
movss dword [rbp - 4], xmm6
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp - 8]
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm15, qword [rbp + 0x438]
mov edx, 1
movsd xmm13, qword [rbp + 0x440]
cvtpd2ps xmm15, xmm15
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm13, xmm13
movaps xmm0, xmm15
movss dword [rbp], xmm10
unpcklps xmm0, xmm13
movsd qword [rbp + 0xab0], xmm0
movss dword [rbp + 4], xmm9
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp]
call fcn.180022bd0
movsd xmm0, qword [rbp + 0x450]
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm14, qword [rbp + 0x458]
mov edx, 1
cvtpd2ps xmm0, xmm0
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
movss dword [rbp + 0xab0], xmm0
cvtpd2ps xmm14, xmm14
movss dword [rbp + 8], xmm10
unpcklps xmm0, xmm14
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0xc], xmm9
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rsp + 0x50]
mov rcx, rax
lea rdx, [rbp + 8]
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm8, qword [rbp + 0x468]
mov edx, 1
movsd xmm6, qword [rbp + 0x470]
cvtpd2ps xmm8, xmm8
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm6, xmm6
movaps xmm0, xmm8
movss dword [rbp + 0x10], xmm10
unpcklps xmm0, xmm6
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x14], xmm9
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rsp + 0x50]
mov rcx, rax
lea rdx, [rbp + 0x10]
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm11, qword [rbp + 0x480]
mov edx, 1
movsd xmm7, qword [rbp + 0x488]
cvtpd2ps xmm11, xmm11
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm7, xmm7
movaps xmm0, xmm11
movss dword [rbp + 0x18], xmm8
unpcklps xmm0, xmm7
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x1c], xmm6
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm12
lea r8, [rsp + 0x50]
mov rcx, rax
lea rdx, [rbp + 0x18]
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm12, qword [rbp + 0x498]
mov edx, 1
movsd xmm10, qword [rbp + 0x4a0]
cvtpd2ps xmm12, xmm12
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm10, xmm10
movaps xmm0, xmm12
movss dword [rbp + 0x20], xmm8
unpcklps xmm0, xmm10
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x24], xmm6
call fcn.180006ec0
movss xmm0, dword [0x1800549c8]
lea r8, [rsp + 0x50]
movss dword [rsp + 0x20], xmm0
mov r9d, ebx
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm9, qword [rbp + 0x4b0]
mov edx, 1
movsd xmm8, qword [rbp + 0x4b8]
cvtpd2ps xmm9, xmm9
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm8, xmm8
movaps xmm0, xmm9
movss dword [rbp + 0x28], xmm11
unpcklps xmm0, xmm8
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x2c], xmm7
call fcn.180006ec0
movss xmm11, dword [0x1800549c8]
lea r8, [rsp + 0x50]
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea rdx, [rbp + 0x28]
mov rcx, rax
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm7, qword [rbp + 0x4c8]
mov edx, 1
movsd xmm6, qword [rbp + 0x4d0]
cvtpd2ps xmm7, xmm7
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm6, xmm6
movaps xmm0, xmm7
movss dword [rbp + 0x30], xmm12
unpcklps xmm0, xmm6
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x34], xmm10
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea r8, [rsp + 0x50]
mov rcx, rax
lea rdx, [rbp + 0x30]
call fcn.180022bd0
movsd xmm0, qword [rbp + 0x4e0]
lea r8, str.Foreground
movsd xmm1, qword [rbp + 0x4e8]
mov edx, 1
mov rax, qword [0x18005f8f0]
cvtpd2ps xmm0, xmm0
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm1, xmm1
mov rcx, qword [rcx]
movss dword [rbp + 0x38], xmm9
unpcklps xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x3c], xmm8
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea r8, [rsp + 0x50]
mov rcx, rax
lea rdx, [rbp + 0x38]
call fcn.180022bd0
movsd xmm0, qword [rbp + 0x4f8]
lea r8, str.Foreground
movsd xmm1, qword [rbp + 0x500]
mov edx, 1
mov rax, qword [0x18005f8f0]
cvtpd2ps xmm0, xmm0
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm1, xmm1
mov rcx, qword [rcx]
movss dword [rbp + 0x40], xmm7
unpcklps xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x44], xmm6
call fcn.180006ec0
movss dword [rsp + 0x20], xmm11
mov r9d, ebx
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x40]
mov rcx, rax
call fcn.180022bd0
mov rax, qword [0x18005f8f0]
lea r8, str.Foreground
movsd xmm9, qword [rbp + 0x510]
mov edx, 1
movsd xmm8, qword [rbp + 0x518]
cvtpd2ps xmm9, xmm9
mov rcx, qword [rax + 0x1dc0]
mov rcx, qword [rcx]
cvtpd2ps xmm8, xmm8
movaps xmm0, xmm9
movss dword [rbp + 0x48], xmm15
unpcklps xmm0, xmm8
movsd qword [rsp + 0x50], xmm0
movss dword [rbp + 0x4c], xmm13
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea r8, [rsp + 0x50]
mov rcx, rax
lea rdx, [rbp + 0x48]
call fcn.180022bd0
movss xmm0, dword [rbp + 0xab0]
lea r8, str.Foreground
mov rax, qword [0x18005f8f0]
mov edx, 1
movsd xmm7, qword [rbp + 0x528]
movsd xmm6, qword [rbp + 0x530]
movss dword [rbp + 0x50], xmm0
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm7, xmm7
mov rcx, qword [rcx]
cvtpd2ps xmm6, xmm6
movaps xmm0, xmm7
movss dword [rbp + 0x54], xmm14
unpcklps xmm0, xmm6
movsd qword [rbp + 0xab0], xmm0
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp + 0x50]
call fcn.180022bd0
movsd xmm0, qword [rbp + 0x540]
lea r8, str.Foreground
movsd xmm1, qword [rbp + 0x548]
mov edx, 1
mov rax, qword [0x18005f8f0]
cvtpd2ps xmm0, xmm0
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm1, xmm1
mov rcx, qword [rcx]
movss dword [rbp + 0x58], xmm7
unpcklps xmm0, xmm1
movsd qword [rbp + 0xab0], xmm0
movss dword [rbp + 0x5c], xmm6
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp + 0x58]
call fcn.180022bd0
movsd xmm0, qword [rbp + 0x558]
lea r8, str.Foreground
movsd xmm1, qword [rbp + 0x560]
mov edx, 1
mov rax, qword [0x18005f8f0]
cvtpd2ps xmm0, xmm0
mov rcx, qword [rax + 0x1dc0]
cvtpd2ps xmm1, xmm1
mov rcx, qword [rcx]
movss dword [rbp + 0x60], xmm9
unpcklps xmm0, xmm1
movsd qword [rbp + 0xab0], xmm0
movss dword [rbp + 0x64], xmm8
call fcn.180006ec0
mov r9d, ebx
movss dword [rsp + 0x20], xmm11
lea r8, [rbp + 0xab0]
mov rcx, rax
lea rdx, [rbp + 0x60]
call fcn.180022bd0
movss xmm14, dword [0x1800549ac]
movsd xmm13, qword [0x180054a28]
xorps xmm12, xmm12
mov rcx, qword [rbp + 0xab8]
movsd xmm7, qword [0x1800549e0]
inc r12d
movsd xmm8, qword [0x1800549f8]
inc rsi
movsd xmm9, qword [0x180054a08]
movsxd rax, r12d
mov qword [rbp + 0xab0], rsi
cmp rax, r14
jb 0x1800424c0
mov r15, qword [rbp + 0x68]
mov r13, qword [rbp + 0x88]
movaps xmm15, xmmword [rsp + 0xac0]
movaps xmm14, xmmword [rsp + 0xad0]
movaps xmm13, xmmword [rsp + 0xae0]
movaps xmm12, xmmword [rsp + 0xaf0]
movaps xmm11, xmmword [rsp + 0xb00]
movaps xmm10, xmmword [rsp + 0xb10]
movaps xmm9, xmmword [rsp + 0xb20]
movaps xmm8, xmmword [rsp + 0xb30]
movaps xmm7, xmmword [rsp + 0xb40]
movaps xmm6, xmmword [rsp + 0xb50]
mov rsi, qword [rsp + 0xb80]
mov r14, qword [rsp + 0xb68]
mov r12, qword [rsp + 0xb70]
mov rdi, qword [rsp + 0xb78]
mov rbx, qword [rsp + 0xb88]
test r13, r13
je 0x1800441e0
sub r15, r13
mov rax, r13
and r15, 0xffffffffffffffe0
cmp r15, 0x1000
jb 0x1800441d5
mov r13, qword [r13 - 8]
add r15, 0x27
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800441d5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rdx, r15
mov rcx, r13
call fcn.18004dbb4
add rsp, 0xb90
pop r15
pop r13
pop rbp
ret