Function at 0x180028188
Capabilities:
Encode data using xor
Hash data with crc32
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x208]
sub rsp, 0x2c8
mov ecx, dword [0x1801ab048]
xor r15d, r15d
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov eax, dword [0x1801aa1ac]
cdq
sub eax, edx
sar eax, 1
movd xmm13, eax
mov eax, dword [0x1801aa1b4]
cdq
sub eax, edx
sar eax, 1
cvtdq2ps xmm13, xmm13
movd xmm11, eax
cvtdq2ps xmm11, xmm11
test ecx, ecx
je 0x180028233
sub ecx, 1
je 0x180028233
cmp ecx, 1
je 0x180028233
movss xmm6, dword [rbp + 0x210]
jmp 0x18002823c
call qword [0x1801ab040]
movaps xmm6, xmm0
call fcn.18000b8cc
mov rcx, rax
call fcn.18000b22c
mov ecx, dword [0x1801ab048]
subss xmm6, dword [rax]
movaps xmm7, xmm6
mulss xmm7, dword [0x180158500]
addss xmm7, dword [0x180158404]
test ecx, ecx
je 0x180028274
sub ecx, 1
je 0x180028274
cmp ecx, 1
jne 0x18002827a
call qword [0x1801ab040]
call fcn.18000b8cc
mov rcx, rax
call fcn.18000b22c
cmp byte [0x1801aa198], r15b
movsd xmm8, qword [0x180158518]
je 0x1800282c7
cmp byte [0x1801aa204], r15b
je 0x1800282c7
mov ecx, dword [0x1801aa238]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800282c7
xorps xmm14, xmm14
cvtss2sd xmm14, xmm7
comisd xmm14, xmm8
jbe 0x1800282c7
mov dl, 1
jmp 0x1800282d3
xorps xmm14, xmm14
mov dl, r15b
cvtss2sd xmm14, xmm7
movss xmm9, dword [0x1801584ec]
lea rcx, str.ManipulatorCircle_animation
movaps xmm3, xmm9
call fcn.180004494
cmp byte [0x1801aa198], r15b
movaps xmm12, xmm0
je 0x18002831c
cmp byte [0x1801aa204], r15b
je 0x18002831c
mov ecx, dword [0x1801aa238]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18002831c
comisd xmm14, xmm8
mov dl, 1
ja 0x18002831f
mov dl, r15b
movss xmm3, dword [0x180158478]
lea rcx, str.ManipulatorCircleFill_animation
call fcn.180004494
comiss xmm12, dword [0x1801583fc]
movaps xmm8, xmm0
xorps xmm10, xmm10
jbe 0x1800283cd
call fcn.18000b8cc
mov rcx, rax
call fcn.18000a1d4
and dword [rbp + 0x24], r15d
lea rdx, [rbp + 0xf8]
and dword [rbp + 0x28], r15d
mov rcx, rax
and dword [rbp + 0x34], r15d
and dword [rbp + 0x38], r15d
movss dword [rbp + 0x2c], xmm8
movss dword [rbp + 0x3c], xmm12
mov dword [rbp + 0x20], 0x3f800000
mov dword [rbp + 0x30], 0x3f800000
call fcn.180009fec
movaps xmm2, xmm7
lea rdx, [rbp + 0xa0]
mulss xmm2, dword [0x1801585bc]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp + 0xa8], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
movsd qword [rbp + 0xa0], xmm0
call fcn.18000daa0
call fcn.18001f5b8
mov esi, dword [0x1801a9ac0]
or r13, 0xffffffffffffffff
cmp byte [0x1801aa16c], r15b
movss xmm15, dword [0x180158494]
mov r12d, 4
je 0x180028550
mov rcx, qword [0x1801aa170]
test rcx, rcx
je 0x180028550
call fcn.18000a258
test al, al
je 0x180028550
mov rax, qword gs:[0x58]
mov rax, qword [rax + rsi*8]
mov eax, dword [r12 + rax]
cmp dword [0x1801aaf28], eax
jg 0x1800295b0
mov rcx, qword [0x1801aa170]
lea rdx, [rbp + 0x104]
and dword [rbp + 0x214], r15d
mov ebx, 0x12
and dword [rbp + 0x210], r15d
mov r8d, ebx
call fcn.18000b2a8
ucomiss xmm10, dword [rax]
jne 0x18002849f
mov rcx, qword [0x1801aa170]
lea rdx, [rbp + 0x110]
mov r8d, ebx
call fcn.18000b2a8
ucomiss xmm10, dword [rax + 4]
jne 0x18002849f
mov rcx, qword [0x1801aa170]
lea rdx, [rbp + 0xe0]
mov r8d, ebx
call fcn.18000b2a8
ucomiss xmm10, dword [rax + 8]
je 0x180028550
mov rcx, qword [0x1801aa170]
lea rdx, [rbp + 0xec]
mov r8d, 0x2f
call fcn.18000b2a8
lea rdx, [rbp + 0x210]
lea rcx, [rbp - 0x70]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x70], xmm0
mov dword [rbp - 0x68], eax
call fcn.18000bb38
test al, al
je 0x180028550
movss xmm0, dword [0x180168090]
lea rax, [rbp + 0x40]
movss xmm1, dword [0x180168094]
movss xmm3, dword [rbp + 0x210]
movss xmm2, dword [0x1801aa624]
movss dword [rbp + 0x40], xmm0
movss xmm0, dword [0x180168098]
movss dword [rbp + 0x48], xmm0
movss xmm0, dword [0x180158504]
mov byte [rsp + 0x38], 1
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rbp + 0x214]
movss dword [rbp + 0x44], xmm1
movss xmm1, dword [0x1801aa620]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
mov dword [rbp + 0x4c], 0x3f800000
call fcn.18000ccb8
mov dl, byte [0x1801aa204]
lea rcx, str.ManipulatorInd_animation
movaps xmm3, xmm9
call fcn.180004494
comiss xmm0, dword [0x1801583f0]
jbe 0x1800287df
movss xmm3, dword [0x180158650]
lea rax, [rbp + 0x50]
and dword [rbp + 0x50], r15d
movaps xmm8, xmm11
subss xmm8, dword [0x1801585f8]
and dword [rbp + 0x54], r15d
movaps xmm12, xmm13
subss xmm12, dword [0x180158624]
and dword [rbp + 0x58], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
movaps xmm2, xmm8
movss dword [rbp + 0x5c], xmm0
movss xmm0, dword [0x180158588]
movaps xmm1, xmm12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000da10
cmp byte [0x1801aa204], r15b
je 0x1800286c4
mov ecx, dword [0x1801aa238]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800286c4
cmp byte [0x1801aa204], r15b
je 0x18002860e
comisd xmm14, xmmword [0x1801584b8]
mov dl, 1
ja 0x180028611
mov dl, r15b
movaps xmm3, xmm9
lea rcx, str.ManipulatorInd_Active_animation
call fcn.180004494
movaps xmm2, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm2
comisd xmm1, xmmword [0x1801584d8]
jbe 0x1800286c4
comiss xmm7, xmm15
mulss xmm6, dword [0x180158650]
movaps xmm1, xmm7
addss xmm1, xmm7
minss xmm6, dword [0x180158668]
jae 0x18002865c
movaps xmm0, xmm9
jmp 0x18002866c
movss xmm0, dword [0x180158530]
subss xmm0, xmm1
movaps xmm1, xmm9
subss xmm6, dword [0x180158530]
and dword [rbp + 0x68], r15d
addss xmm8, xmm9
mov dword [rsp + 0x38], r15d
addss xmm12, xmm9
movss dword [rsp + 0x30], xmm10
lea rax, [rbp + 0x60]
movss dword [rbp + 0x64], xmm0
movss xmm0, dword [0x180158574]
movaps xmm3, xmm6
movss dword [rbp + 0x60], xmm1
movss dword [rbp + 0x6c], xmm2
movaps xmm1, xmm12
mov qword [rsp + 0x28], rax
movaps xmm2, xmm8
movss dword [rsp + 0x20], xmm0
call fcn.18000da10
and dword [rbp + 0x21c], r15d
and dword [rbp + 0x218], r15d
cmp byte [0x1801aa18e], r15b
je 0x1800287df
movss xmm0, dword [0x1801aa330]
ucomiss xmm0, xmm10
jne 0x18002870d
movss xmm0, dword [0x1801aa334]
ucomiss xmm0, xmm10
jne 0x18002870d
movss xmm0, dword [0x1801aa338]
ucomiss xmm0, xmm10
je 0x1800287df
movsd xmm0, qword [0x1801aa330]
lea rdx, [rbp + 0x218]
mov eax, dword [0x1801aa338]
lea rcx, [rbp - 0x60]
movsd qword [rbp - 0x60], xmm0
mov dword [rbp - 0x58], eax
call fcn.18000bb38
test al, al
je 0x1800287df
movss xmm8, dword [0x1801680a0]
lea rcx, [rbp + 0x70]
movss xmm7, dword [0x1801680a4]
movss xmm6, dword [0x1801680a8]
and dword [rbp + 0x7c], r15d
movss dword [rbp + 0x70], xmm8
movss dword [rbp + 0x74], xmm7
movss dword [rbp + 0x78], xmm6
call fcn.180033b60
lea rcx, [rbp + 0x80]
movss dword [rbp + 0x80], xmm8
mov r8d, eax
movss dword [rbp + 0x84], xmm7
movss dword [rbp + 0x88], xmm6
mov dword [rbp + 0x8c], 0x41c80000
call fcn.180033b60
movss xmm0, dword [rbp + 0x218]
lea rdx, [rbp + 0x220]
movss xmm1, dword [rbp + 0x21c]
mov r9d, eax
movss xmm2, dword [0x1801680f0]
movss dword [rbp + 0x220], xmm0
movss dword [rbp + 0x224], xmm1
mov dword [rsp + 0x20], r8d
call fcn.18000dcc0
mov dl, byte [0x1801aa1f4]
lea rcx, str.Flyhack_animation
movaps xmm3, xmm9
call fcn.180004494
movaps xmm12, xmm0
comiss xmm12, dword [0x1801583f0]
jbe 0x1800289f9
movss xmm1, dword [0x1801aa378]
lea rax, [rbp + 0x10]
subss xmm1, dword [0x180158648]
movss xmm6, dword [0x180158660]
movss xmm14, dword [0x180158580]
movaps xmm3, xmm6
movss xmm8, dword [0x180158598]
movaps xmm2, xmm14
and dword [rbp + 0x10], r15d
and dword [rbp + 0x14], r15d
and dword [rbp + 0x18], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
mov qword [rsp + 0x28], rax
movss dword [rbp + 0x1c], xmm12
movss dword [rsp + 0x20], xmm8
call fcn.18000da10
movss xmm1, dword [0x1801aa378]
lea rax, [rbp - 0x50]
subss xmm1, dword [0x180158648]
movss xmm2, dword [0x1801585d4]
movaps xmm3, xmm6
and dword [rbp - 0x50], r15d
and dword [rbp - 0x4c], r15d
and dword [rbp - 0x48], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
mov qword [rsp + 0x28], rax
movss dword [rbp - 0x44], xmm12
movss dword [rsp + 0x20], xmm8
call fcn.18000da10
movss xmm0, dword [0x1801aa168]
movss xmm3, dword [0x1801aa26c]
subss xmm0, xmm9
movss xmm6, dword [0x1801aa158]
divss xmm3, xmm0
movss xmm0, dword [0x1801aa144]
comiss xmm3, xmm15
subss xmm0, xmm9
movaps xmm2, xmm3
addss xmm2, xmm3
divss xmm6, xmm0
jae 0x1800288fe
movaps xmm0, xmm9
jmp 0x18002890e
movss xmm0, dword [0x180158530]
subss xmm0, xmm2
movaps xmm2, xmm9
movss xmm1, dword [0x1801aa378]
minss xmm3, xmm9
movss xmm7, dword [0x180158644]
lea rax, [rbp - 0x40]
movss xmm8, dword [0x18015865c]
subss xmm1, xmm7
and dword [rbp - 0x38], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
movss xmm14, dword [0x180158588]
movss dword [rbp - 0x40], xmm2
movaps xmm2, xmm14
mulss xmm3, xmm8
movss dword [rbp - 0x3c], xmm0
movss dword [rbp - 0x34], xmm12
call fcn.18000da10
comiss xmm6, xmm15
movaps xmm0, xmm6
addss xmm0, xmm6
jae 0x18002898a
movaps xmm2, xmm9
jmp 0x18002899a
movss xmm2, dword [0x180158530]
subss xmm2, xmm0
movaps xmm0, xmm9
movss xmm1, dword [0x1801aa378]
minss xmm6, xmm9
and dword [rbp - 0x28], r15d
lea rax, [rbp - 0x30]
mov dword [rsp + 0x38], r15d
subss xmm1, xmm7
movss dword [rsp + 0x30], xmm10
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [0x180158580]
mulss xmm6, xmm8
mov qword [rsp + 0x28], rax
movss dword [rbp - 0x2c], xmm2
movss xmm2, dword [0x1801585d8]
movaps xmm3, xmm6
movss dword [rbp - 0x24], xmm12
movss dword [rsp + 0x20], xmm0
call fcn.18000da10
jmp 0x180028a02
movss xmm14, dword [0x180158588]
mov dl, byte [0x1801aa215]
lea rcx, str.ReloadInd_animation
call fcn.18000418c
mov r14d, eax
cmp eax, 1
jle 0x180028e7b
call fcn.18000b8cc
mov rcx, rax
call fcn.18002eac0
mov rdi, rax
test rax, rax
je 0x180028e7b
mov r8, qword [rax]
test r8, r8
je 0x180028e7b
mov r8, qword [r8 + 0x10]
test r8, r8
je 0x180028e7b
or edx, 0xffffffff
mov rax, r13
inc rax
cmp byte [r8 + rax], r15b
jne 0x180028a58
test eax, eax
je 0x180028e7b
mov r9d, eax
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
shr edx, 8
movzx eax, cl
inc r8
lea rcx, [0x18014ec00]
xor edx, dword [rcx + rax*4]
sub r9, 1
jne 0x180028a6c
not edx
cmp edx, 0x407209f5
jne 0x180028e7b
cmp byte [0x1801aa0ce], r15b
jne 0x180028c69
mov rcx, rdi
call fcn.18000a910
mov rcx, rdi
mov rbx, rax
call fcn.18000a910
movss xmm6, dword [0x18015843c]
movss xmm0, dword [rbx]
movss xmm2, dword [0x1801aa13c]
movss xmm1, dword [rax]
mulss xmm1, xmm6
subss xmm0, xmm1
comiss xmm2, xmm0
ja 0x180028c69
comiss xmm2, xmm10
jbe 0x180028c69
movss xmm12, dword [0x1801583f4]
movaps xmm7, xmm11
subss xmm7, dword [0x180158604]
and dword [rsp + 0x50], r15d
movaps xmm8, xmm13
subss xmm8, dword [0x180158624]
and dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x50]
and dword [rsp + 0x58], r15d
movaps xmm2, xmm7
movss xmm3, dword [0x180158650]
mov qword [rsp + 0x70], rax
movaps xmm1, xmm8
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
movd xmm0, r14d
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm12
movss dword [rsp + 0x5c], xmm0
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
call fcn.18000da10
mov rcx, rdi
call fcn.18000a910
mov rcx, rdi
mov rbx, rax
call fcn.18000a910
cmp byte [0x1801aa215], r15b
movss xmm1, dword [rbx]
movss xmm0, dword [rax]
mulss xmm0, xmm6
movss xmm6, dword [0x1801aa13c]
subss xmm1, xmm0
divss xmm6, xmm1
addss xmm6, dword [0x180158404]
je 0x180028bc0
ucomiss xmm6, xmm9
mov dl, 1
jne 0x180028bc3
mov dl, r15b
lea rcx, str.ReloadInd1_animation
call fcn.18000418c
cmp eax, 1
jle 0x180028e7b
mulss xmm6, dword [0x180158650]
addss xmm7, xmm9
and dword [rsp + 0x60], r15d
and dword [rsp + 0x68], r15d
addss xmm8, xmm9
movd xmm1, eax
minss xmm6, dword [0x180158668]
cvtdq2ps xmm1, xmm1
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x64], 0x3f48c8ca
mov rax, qword [rsp + 0x60]
mov qword [rbp - 0x80], rax
movss dword [rsp + 0x30], xmm10
movaps xmm2, xmm7
subss xmm6, dword [0x180158530]
mulss xmm1, xmm12
movss xmm12, dword [0x180158574]
movss dword [rsp + 0x6c], xmm1
movaps xmm3, xmm6
mov rax, qword [rsp + 0x68]
movaps xmm1, xmm8
mov qword [rbp - 0x78], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm12
call fcn.18000da10
jmp 0x180028e84
mov rax, qword gs:[0x58]
mov ebx, r12d
lea r12, [0x1801aae9c]
mov rsi, qword [rax + rsi*8]
mov eax, dword [rsi + rbx]
cmp dword [0x1801aae9c], eax
jg 0x18002960a
mov rax, qword [0x1801aac90]
movss xmm0, dword [0x1801aa138]
comiss xmm0, dword [rax + rdi]
jae 0x180028e7b
movss xmm15, dword [0x1801583f4]
movaps xmm8, xmm11
subss xmm8, dword [0x180158604]
and dword [rsp + 0x60], r15d
movaps xmm12, xmm13
subss xmm12, dword [0x180158624]
and dword [rsp + 0x64], r15d
mov rax, qword [rsp + 0x60]
and dword [rsp + 0x68], r15d
movaps xmm2, xmm8
movss xmm3, dword [0x180158650]
mov qword [rbp - 0x80], rax
movaps xmm1, xmm12
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
movd xmm0, r14d
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm15
movss dword [rsp + 0x6c], xmm0
mov rax, qword [rsp + 0x68]
mov qword [rbp - 0x78], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
call fcn.18000da10
mov eax, dword [rsi + rbx]
cmp dword [0x1801aae9c], eax
jg 0x18002963d
mov rax, qword [0x1801aac90]
mov rcx, rdi
movss xmm6, dword [rax + rdi]
subss xmm6, dword [0x1801aa138]
call fcn.18000a910
movss xmm7, dword [rax]
mov eax, dword [rsi + rbx]
cmp dword [0x1801aae9c], eax
jg 0x18002957d
mov rax, qword [0x1801aac90]
movss xmm3, dword [0x1801aa138]
movaps xmm1, xmm3
addss xmm1, xmm7
movss xmm2, dword [rax + rdi]
comiss xmm2, xmm10
jae 0x180028d96
maxss xmm1, xmm10
jmp 0x180028db4
movaps xmm0, xmm3
addss xmm7, xmm2
subss xmm0, xmm2
comiss xmm0, xmm10
ja 0x180028dad
minss xmm7, xmm1
jmp 0x180028db1
maxss xmm7, xmm1
movaps xmm1, xmm7
cmp byte [0x1801aa215], r15b
subss xmm1, xmm3
divss xmm6, xmm1
addss xmm6, dword [0x180158404]
je 0x180028dd5
ucomiss xmm6, xmm9
mov dl, 1
jne 0x180028dd8
mov dl, r15b
lea rcx, str.ReloadInd2_animation
call fcn.18000418c
cmp eax, 1
jle 0x180028e7b
mulss xmm6, dword [0x180158650]
addss xmm8, xmm9
and dword [rsp + 0x50], r15d
and dword [rsp + 0x58], r15d
addss xmm12, xmm9
movss xmm0, dword [0x180158574]
minss xmm6, dword [0x180158668]
movd xmm1, eax
movaps xmm2, xmm8
cvtdq2ps xmm1, xmm1
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x54], 0x3f48c8ca
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
subss xmm6, dword [0x180158530]
mulss xmm1, xmm15
movss dword [rsp + 0x30], xmm10
movss dword [rsp + 0x5c], xmm1
movaps xmm3, xmm6
mov rax, qword [rsp + 0x58]
movaps xmm1, xmm12
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000da10
movss xmm12, dword [0x180158574]
mov dl, byte [0x1801aa218]
lea rcx, str.Crosshair_animation
movaps xmm3, xmm9
call fcn.180004494
comiss xmm0, dword [0x180158404]
jbe 0x180028f64
mov rcx, qword [0x1801aa270]
movss dword [rbp - 0x14], xmm0
movaps xmm0, xmmword [0x180158870]
movss dword [rbp + 0x228], xmm13
mov rax, qword [rcx + 0x3ec8]
movss dword [rbp + 0x22c], xmm11
mov dword [rbp - 0x20], 0x3f800000
mov dword [rbp - 0x1c], 0x3f800000
mov byte [rax + 0xb8], 1
mov rbx, qword [rcx + 0x3ec8]
lea rcx, [rbp + 0xb0]
mov dword [rbp - 0x18], 0x3f800000
movups xmmword [rbp + 0xb0], xmm0
call fcn.180033b60
movss xmm2, dword [0x180158570]
lea rdx, [rbp + 0x228]
mov rcx, qword [rbx + 0x298]
mov edi, 0x40
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004c090
lea rcx, [rbp - 0x20]
movss dword [rbp], xmm13
movss dword [rbp + 4], xmm11
call fcn.180033b60
movss xmm2, dword [0x180158548]
lea rdx, [rbp]
mov rcx, qword [rbx + 0x298]
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004c090
mov dl, byte [0x1801aa1a7]
lea rcx, str.fov_animation
movaps xmm3, xmm9
call fcn.180004494
comiss xmm0, dword [0x180158404]
jbe 0x180028ff8
mov r8, qword [0x1801aa270]
lea rcx, [rbp - 0x10]
movss xmm6, dword [0x18016806c]
movss dword [rbp - 4], xmm0
movss dword [rbp + 8], xmm13
mov rax, qword [r8 + 0x3ec8]
movss dword [rbp + 0xc], xmm11
mov dword [rbp - 0x10], 0x3f800000
mov dword [rbp - 0xc], 0x3f800000
mov byte [rax + 0xb8], 1
mov dword [rbp - 8], 0x3f800000
call fcn.180033b60
mov rcx, qword [r8 + 0x3ec8]
lea rdx, [rbp + 8]
movss dword [rsp + 0x28], xmm9
mov r9d, eax
movaps xmm2, xmm6
mov dword [rsp + 0x20], r15d
mov rcx, qword [rcx + 0x298]
call fcn.18004bfb4
mov rax, qword [0x1801aa170]
mov esi, 2
movss xmm7, dword [0x1801585e4]
mov edi, r15d
lea r14d, [rsi + 1]
test rax, rax
je 0x18002915d
cmp byte [0x1801aa205], r15b
je 0x18002915d
mov rcx, rax
call fcn.18000ae44
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.18002dae4
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0xc0], xmm0
mov r8, r13
mov rdx, qword [rax]
movdqu xmmword [rbp + 0xd0], xmm1
inc r8
cmp byte [rdx + r8], r15b
jne 0x18002905b
lea rcx, [rbp + 0xc0]
call fcn.180001c10
mov rdx, qword [rbp + 0x90]
mov eax, r13d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r13d
test eax, eax
jg 0x180029093
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp qword [rbp + 0xd8], 0x10
lea rbx, [rbp + 0xc0]
mov rdx, qword [0x1801aa170]
lea rcx, [rbp + 0x10]
cmovae rbx, qword [rbp + 0xc0]
call fcn.18001f46c
movss xmm14, dword [0x1801585bc]
lea r9, [rbp + 0xb0]
mov rcx, qword [0x1801aab80]
movaps xmm2, xmm11
mov qword [rsp + 0x38], rbx
addss xmm2, xmm7
movups xmm0, xmmword [rax]
movss dword [rsp + 0x30], xmm14
movaps xmm1, xmm13
movd edx, xmm1
movd r8d, xmm2
mov dword [rsp + 0x28], esi
movdqu xmmword [rbp + 0xb0], xmm0
mov dword [rsp + 0x20], r14d
call fcn.18000cde4
mov rdx, qword [rbp + 0xd8]
mov edi, 0xb
cmp rdx, 0x10
jb 0x180029154
mov rcx, qword [rbp + 0xc0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002914f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002914f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800666b4
mov rax, qword [0x1801aa170]
jmp 0x180029166
movss xmm14, dword [0x1801585bc]
cmp byte [0x1801aa18f], r15b
je 0x180029207
movss xmm0, dword [0x1801aa340]
ucomiss xmm0, xmm10
jne 0x18002919d
movss xmm0, dword [0x1801aa344]
ucomiss xmm0, xmm10
jne 0x18002919d
movss xmm0, dword [0x1801aa348]
ucomiss xmm0, xmm10
je 0x180029207
test rax, rax
je 0x180029207
movaps xmm0, xmmword [0x180158880]
lea rax, str.manipulated
mov rcx, qword [0x1801aab80]
lea r9, [rbp - 0x80]
movq qword [rbp - 0x80], xmm0
movaps xmm2, xmm11
psrldq xmm0, 8
addss xmm2, xmm7
mov qword [rsp + 0x38], rax
movaps xmm1, xmm13
movq qword [rbp - 0x78], xmm0
movss dword [rsp + 0x30], xmm14
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r14d
movd edx, xmm1
addss xmm2, xmm0
movd r8d, xmm2
call fcn.18000cde4
add edi, 0xb
cmp byte [0x1801aa206], r15b
je 0x180029313
mov ecx, dword [0x1801aa230]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180029313
mov rcx, qword [0x1801aa170]
lea rdx, [rbp + 0xec]
mov r12d, 0x2f
mov r8d, r12d
call fcn.18000b2a8
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
movsd qword [rbp - 0x70], xmm0
call fcn.18000b8cc
mov r8d, r12d
lea rdx, [rbp + 0xe0]
mov rcx, rax
call fcn.18000b2a8
movsd xmm0, qword [rax]
movss xmm1, dword [rax + 8]
movsd qword [rbp - 0x60], xmm0
movss xmm2, dword [rbp - 0x60]
movss xmm3, dword [rbp - 0x5c]
subss xmm3, dword [rbp - 0x6c]
subss xmm2, dword [rbp - 0x70]
movd xmm0, ebx
subss xmm1, xmm0
mulss xmm3, xmm3
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm3, xmm2
addss xmm3, xmm1
comiss xmm3, xmm12
jae 0x180029313
movaps xmm0, xmmword [0x180158880]
addss xmm11, xmm7
mov rcx, qword [0x1801aab80]
lea rax, str.teleport
movq qword [rsp + 0x70], xmm0
lea r9, [rsp + 0x70]
psrldq xmm0, 8
movaps xmm1, xmm13
mov qword [rsp + 0x38], rax
movq qword [rsp + 0x78], xmm0
movss dword [rsp + 0x30], xmm14
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r14d
movd edx, xmm1
addss xmm11, xmm0
movaps xmm2, xmm11
movd r8d, xmm2
call fcn.18000cde4
cmp byte [0x1801aa15f], r15b
je 0x18002952a
cmp byte [0x1801aa0f4], r15b
je 0x18002952a
movss xmm0, dword [0x18015863c]
movss xmm6, dword [0x180158658]
movaps xmm1, xmm6
unpcklps xmm1, xmm0
movq rcx, xmm1
call fcn.18000cbb0
movaps xmm0, xmmword [0x1801588f0]
lea rax, [rbp - 0x10]
movss xmm8, dword [0x180158564]
movaps xmm3, xmm6
movss xmm2, dword [0x180169dac]
movss xmm1, dword [0x180169da8]
mov dword [rsp + 0x38], 0x30
movss dword [rsp + 0x30], xmm8
movq qword [rbp - 0x10], xmm0
psrldq xmm0, 8
mov qword [rsp + 0x28], rax
movq qword [rbp - 8], xmm0
movss dword [rsp + 0x20], xmm7
call fcn.18000da10
movaps xmm0, xmmword [0x180158850]
lea rax, [rbp - 0x20]
movss xmm2, dword [0x180169dac]
movaps xmm3, xmm6
movss xmm1, dword [0x180169da8]
addss xmm2, xmm7
movss xmm7, dword [0x180158634]
mov dword [rsp + 0x38], 0xc0
movss dword [rsp + 0x30], xmm8
movq qword [rbp - 0x20], xmm0
psrldq xmm0, 8
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm7
movq qword [rbp - 0x18], xmm0
call fcn.18000da10
movaps xmm0, xmmword [0x180158870]
lea rax, [rbp - 0x30]
movss xmm2, dword [0x180169dac]
movaps xmm3, xmm6
movss xmm1, dword [0x180169da8]
addss xmm2, xmm7
movq qword [rbp - 0x30], xmm0
psrldq xmm0, 8
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
addss xmm2, dword [0x1801585f0]
movq qword [rbp - 0x28], xmm0
movss xmm0, dword [0x180158580]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000da10
movaps xmm0, xmmword [0x1801588b0]
lea rax, [rbp - 0x40]
movss xmm2, dword [0x180169dac]
movss xmm1, dword [0x180169da8]
addss xmm2, xmm7
movss xmm6, dword [0x180158630]
addss xmm1, xmm9
mov dword [rsp + 0x38], r15d
movaps xmm3, xmm6
movss dword [rsp + 0x30], xmm10
movq qword [rbp - 0x40], xmm0
addss xmm2, dword [0x1801585f4]
psrldq xmm0, 8
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm8
movq qword [rbp - 0x38], xmm0
call fcn.18000da10
movaps xmm0, xmmword [0x180158a60]
lea rax, [0x180155634]
movss xmm2, dword [0x180169dac]
movss xmm1, dword [0x180169da8]
addss xmm2, xmm7
addss xmm1, xmm9
movq qword [rbp - 0x50], xmm0
psrldq xmm0, 8
mov qword [rsp + 0x38], rax
movss dword [rsp + 0x30], xmm14
addss xmm2, dword [0x1801585dc]
addss xmm1, xmm6
movq qword [rbp - 0x48], xmm0
mov rcx, qword [0x1801aab80]
lea r9, [rbp - 0x50]
movd r8d, xmm2
movd edx, xmm1
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r14d
call fcn.18000cde4
lea r11, [rsp + 0x2c8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, r12
call fcn.18006675c
cmp dword [0x1801aae9c], r13d
jne 0x180028d6e
mov ecx, 0x6c06da54
call fcn.18000778c
mov rcx, r12
mov qword [0x1801aac90], rax
call fcn.1800666f0
jmp 0x180028d6e
lea rcx, [0x1801aaf28]
call fcn.18006675c
cmp dword [0x1801aaf28], r13d
jne 0x180028432
movd xmm1, dword [0x1801aa1b4]
lea rcx, [0x1801aaf28]
movd xmm0, dword [0x1801aa1ac]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm15
mulss xmm0, xmm15
movss dword [0x1801aa624], xmm1
movss dword [0x1801aa620], xmm0
call fcn.1800666f0
jmp 0x180028432
mov rcx, r12
call fcn.18006675c
cmp dword [0x1801aae9c], r13d
jne 0x180028c8f
mov ecx, 0x6c06da54
call fcn.18000778c
mov rcx, r12
mov qword [0x1801aac90], rax
call fcn.1800666f0
jmp 0x180028c8f
mov rcx, r12
call fcn.18006675c
cmp dword [0x1801aae9c], r13d
jne 0x180028d3f
mov ecx, 0x6c06da54
call fcn.18000778c
mov rcx, r12
mov qword [0x1801aac90], rax
call fcn.1800666f0
jmp 0x180028d3f