Function at 0x180027e20
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 [0x1801ab0a8]
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 [0x1801aa20c]
cdq
sub eax, edx
sar eax, 1
movd xmm13, eax
mov eax, dword [0x1801aa214]
cdq
sub eax, edx
sar eax, 1
cvtdq2ps xmm13, xmm13
movd xmm11, eax
cvtdq2ps xmm11, xmm11
test ecx, ecx
je 0x180027ecb
sub ecx, 1
je 0x180027ecb
cmp ecx, 1
je 0x180027ecb
movss xmm6, dword [rbp + 0x210]
jmp 0x180027ed4
call qword [0x1801ab0a0]
movaps xmm6, xmm0
call fcn.18000b6f0
mov rcx, rax
call fcn.18000b050
mov ecx, dword [0x1801ab0a8]
subss xmm6, dword [rax]
movaps xmm7, xmm6
mulss xmm7, dword [0x180158500]
addss xmm7, dword [0x180158404]
test ecx, ecx
je 0x180027f0c
sub ecx, 1
je 0x180027f0c
cmp ecx, 1
jne 0x180027f12
call qword [0x1801ab0a0]
call fcn.18000b6f0
mov rcx, rax
call fcn.18000b050
cmp byte [0x1801aa1f8], r15b
movsd xmm8, qword [0x180158518]
je 0x180027f5f
cmp byte [0x1801aa264], r15b
je 0x180027f5f
mov ecx, dword [0x1801aa298]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180027f5f
xorps xmm14, xmm14
cvtss2sd xmm14, xmm7
comisd xmm14, xmm8
jbe 0x180027f5f
mov dl, 1
jmp 0x180027f6b
xorps xmm14, xmm14
mov dl, r15b
cvtss2sd xmm14, xmm7
movss xmm9, dword [0x1801584ec]
lea rcx, str.ManipulatorCircle_animation
movaps xmm3, xmm9
call fcn.1800044bc
cmp byte [0x1801aa1f8], r15b
movaps xmm12, xmm0
je 0x180027fb4
cmp byte [0x1801aa264], r15b
je 0x180027fb4
mov ecx, dword [0x1801aa298]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180027fb4
comisd xmm14, xmm8
mov dl, 1
ja 0x180027fb7
mov dl, r15b
movss xmm3, dword [0x180158478]
lea rcx, str.ManipulatorCircleFill_animation
call fcn.1800044bc
comiss xmm12, dword [0x1801583fc]
movaps xmm8, xmm0
xorps xmm10, xmm10
jbe 0x180028065
call fcn.18000b6f0
mov rcx, rax
call fcn.180009ff8
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.180009e10
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.18000d8c0
call fcn.18001f3b4
mov esi, dword [0x1801a9b20]
or r13, 0xffffffffffffffff
cmp byte [0x1801aa1cc], r15b
movss xmm15, dword [0x180158494]
mov r12d, 4
je 0x1800281e8
mov rcx, qword [0x1801aa1d0]
test rcx, rcx
je 0x1800281e8
call fcn.18000a07c
test al, al
je 0x1800281e8
mov rax, qword gs:[0x58]
mov rax, qword [rax + rsi*8]
mov eax, dword [r12 + rax]
cmp dword [0x1801aaf88], eax
jg 0x180029248
mov rcx, qword [0x1801aa1d0]
lea rdx, [rbp + 0x104]
and dword [rbp + 0x214], r15d
mov ebx, 0x12
and dword [rbp + 0x210], r15d
mov r8d, ebx
call fcn.18000b0cc
ucomiss xmm10, dword [rax]
jne 0x180028137
mov rcx, qword [0x1801aa1d0]
lea rdx, [rbp + 0x110]
mov r8d, ebx
call fcn.18000b0cc
ucomiss xmm10, dword [rax + 4]
jne 0x180028137
mov rcx, qword [0x1801aa1d0]
lea rdx, [rbp + 0xe0]
mov r8d, ebx
call fcn.18000b0cc
ucomiss xmm10, dword [rax + 8]
je 0x1800281e8
mov rcx, qword [0x1801aa1d0]
lea rdx, [rbp + 0xec]
mov r8d, 0x2f
call fcn.18000b0cc
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.18000b95c
test al, al
je 0x1800281e8
movss xmm0, dword [0x1801680f0]
lea rax, [rbp + 0x40]
movss xmm1, dword [0x1801680f4]
movss xmm3, dword [rbp + 0x210]
movss xmm2, dword [0x1801aa684]
movss dword [rbp + 0x40], xmm0
movss xmm0, dword [0x1801680f8]
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 [0x1801aa680]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
mov dword [rbp + 0x4c], 0x3f800000
call fcn.18000cadc
mov dl, byte [0x1801aa264]
lea rcx, str.ManipulatorInd_animation
movaps xmm3, xmm9
call fcn.1800044bc
comiss xmm0, dword [0x1801583f0]
jbe 0x180028477
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.18000d830
cmp byte [0x1801aa264], r15b
je 0x18002835c
mov ecx, dword [0x1801aa298]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18002835c
cmp byte [0x1801aa264], r15b
je 0x1800282a6
comisd xmm14, xmmword [0x1801584b8]
mov dl, 1
ja 0x1800282a9
mov dl, r15b
movaps xmm3, xmm9
lea rcx, str.ManipulatorInd_Active_animation
call fcn.1800044bc
movaps xmm2, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm2
comisd xmm1, xmmword [0x1801584d8]
jbe 0x18002835c
comiss xmm7, xmm15
mulss xmm6, dword [0x180158650]
movaps xmm1, xmm7
addss xmm1, xmm7
minss xmm6, dword [0x180158668]
jae 0x1800282f4
movaps xmm0, xmm9
jmp 0x180028304
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.18000d830
and dword [rbp + 0x21c], r15d
and dword [rbp + 0x218], r15d
cmp byte [0x1801aa1ee], r15b
je 0x180028477
movss xmm0, dword [0x1801aa390]
ucomiss xmm0, xmm10
jne 0x1800283a5
movss xmm0, dword [0x1801aa394]
ucomiss xmm0, xmm10
jne 0x1800283a5
movss xmm0, dword [0x1801aa398]
ucomiss xmm0, xmm10
je 0x180028477
movsd xmm0, qword [0x1801aa390]
lea rdx, [rbp + 0x218]
mov eax, dword [0x1801aa398]
lea rcx, [rbp - 0x60]
movsd qword [rbp - 0x60], xmm0
mov dword [rbp - 0x58], eax
call fcn.18000b95c
test al, al
je 0x180028477
movss xmm8, dword [0x180168100]
lea rcx, [rbp + 0x70]
movss xmm7, dword [0x180168104]
movss xmm6, dword [0x180168108]
and dword [rbp + 0x7c], r15d
movss dword [rbp + 0x70], xmm8
movss dword [rbp + 0x74], xmm7
movss dword [rbp + 0x78], xmm6
call fcn.180033708
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.180033708
movss xmm0, dword [rbp + 0x218]
lea rdx, [rbp + 0x220]
movss xmm1, dword [rbp + 0x21c]
mov r9d, eax
movss xmm2, dword [0x180168150]
movss dword [rbp + 0x220], xmm0
movss dword [rbp + 0x224], xmm1
mov dword [rsp + 0x20], r8d
call fcn.18000dae0
mov dl, byte [0x1801aa254]
lea rcx, str.Flyhack_animation
movaps xmm3, xmm9
call fcn.1800044bc
movaps xmm12, xmm0
comiss xmm12, dword [0x1801583f0]
jbe 0x180028691
movss xmm1, dword [0x1801aa3d8]
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.18000d830
movss xmm1, dword [0x1801aa3d8]
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.18000d830
movss xmm0, dword [0x1801aa1c8]
movss xmm3, dword [0x1801aa2cc]
subss xmm0, xmm9
movss xmm6, dword [0x1801aa1b8]
divss xmm3, xmm0
movss xmm0, dword [0x1801aa1a4]
comiss xmm3, xmm15
subss xmm0, xmm9
movaps xmm2, xmm3
addss xmm2, xmm3
divss xmm6, xmm0
jae 0x180028596
movaps xmm0, xmm9
jmp 0x1800285a6
movss xmm0, dword [0x180158530]
subss xmm0, xmm2
movaps xmm2, xmm9
movss xmm1, dword [0x1801aa3d8]
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.18000d830
comiss xmm6, xmm15
movaps xmm0, xmm6
addss xmm0, xmm6
jae 0x180028622
movaps xmm2, xmm9
jmp 0x180028632
movss xmm2, dword [0x180158530]
subss xmm2, xmm0
movaps xmm0, xmm9
movss xmm1, dword [0x1801aa3d8]
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.18000d830
jmp 0x18002869a
movss xmm14, dword [0x180158588]
mov dl, byte [0x1801aa275]
lea rcx, str.ReloadInd_animation
call fcn.1800041b4
mov r14d, eax
cmp eax, 1
jle 0x180028b13
call fcn.18000b6f0
mov rcx, rax
call fcn.18002e898
mov rdi, rax
test rax, rax
je 0x180028b13
mov r8, qword [rax]
test r8, r8
je 0x180028b13
mov r8, qword [r8 + 0x10]
test r8, r8
je 0x180028b13
or edx, 0xffffffff
mov rax, r13
inc rax
cmp byte [r8 + rax], r15b
jne 0x1800286f0
test eax, eax
je 0x180028b13
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 0x180028704
not edx
cmp edx, 0x407209f5
jne 0x180028b13
cmp byte [0x1801aa12e], r15b
jne 0x180028901
mov rcx, rdi
call fcn.18000a734
mov rcx, rdi
mov rbx, rax
call fcn.18000a734
movss xmm6, dword [0x18015843c]
movss xmm0, dword [rbx]
movss xmm2, dword [0x1801aa19c]
movss xmm1, dword [rax]
mulss xmm1, xmm6
subss xmm0, xmm1
comiss xmm2, xmm0
ja 0x180028901
comiss xmm2, xmm10
jbe 0x180028901
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.18000d830
mov rcx, rdi
call fcn.18000a734
mov rcx, rdi
mov rbx, rax
call fcn.18000a734
cmp byte [0x1801aa275], r15b
movss xmm1, dword [rbx]
movss xmm0, dword [rax]
mulss xmm0, xmm6
movss xmm6, dword [0x1801aa19c]
subss xmm1, xmm0
divss xmm6, xmm1
addss xmm6, dword [0x180158404]
je 0x180028858
ucomiss xmm6, xmm9
mov dl, 1
jne 0x18002885b
mov dl, r15b
lea rcx, str.ReloadInd1_animation
call fcn.1800041b4
cmp eax, 1
jle 0x180028b13
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.18000d830
jmp 0x180028b1c
mov rax, qword gs:[0x58]
mov ebx, r12d
lea r12, [0x1801aaefc]
mov rsi, qword [rax + rsi*8]
mov eax, dword [rsi + rbx]
cmp dword [0x1801aaefc], eax
jg 0x1800292a2
mov rax, qword [0x1801aacf0]
movss xmm0, dword [0x1801aa198]
comiss xmm0, dword [rax + rdi]
jae 0x180028b13
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.18000d830
mov eax, dword [rsi + rbx]
cmp dword [0x1801aaefc], eax
jg 0x1800292d5
mov rax, qword [0x1801aacf0]
mov rcx, rdi
movss xmm6, dword [rax + rdi]
subss xmm6, dword [0x1801aa198]
call fcn.18000a734
movss xmm7, dword [rax]
mov eax, dword [rsi + rbx]
cmp dword [0x1801aaefc], eax
jg 0x180029215
mov rax, qword [0x1801aacf0]
movss xmm3, dword [0x1801aa198]
movaps xmm1, xmm3
addss xmm1, xmm7
movss xmm2, dword [rax + rdi]
comiss xmm2, xmm10
jae 0x180028a2e
maxss xmm1, xmm10
jmp 0x180028a4c
movaps xmm0, xmm3
addss xmm7, xmm2
subss xmm0, xmm2
comiss xmm0, xmm10
ja 0x180028a45
minss xmm7, xmm1
jmp 0x180028a49
maxss xmm7, xmm1
movaps xmm1, xmm7
cmp byte [0x1801aa275], r15b
subss xmm1, xmm3
divss xmm6, xmm1
addss xmm6, dword [0x180158404]
je 0x180028a6d
ucomiss xmm6, xmm9
mov dl, 1
jne 0x180028a70
mov dl, r15b
lea rcx, str.ReloadInd2_animation
call fcn.1800041b4
cmp eax, 1
jle 0x180028b13
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.18000d830
movss xmm12, dword [0x180158574]
mov dl, byte [0x1801aa278]
lea rcx, str.Crosshair_animation
movaps xmm3, xmm9
call fcn.1800044bc
comiss xmm0, dword [0x180158404]
jbe 0x180028bfc
mov rcx, qword [0x1801aa2d0]
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.180033708
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.18004bb4c
lea rcx, [rbp - 0x20]
movss dword [rbp], xmm13
movss dword [rbp + 4], xmm11
call fcn.180033708
movss xmm2, dword [0x180158548]
lea rdx, [rbp]
mov rcx, qword [rbx + 0x298]
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004bb4c
mov dl, byte [0x1801aa207]
lea rcx, str.fov_animation
movaps xmm3, xmm9
call fcn.1800044bc
comiss xmm0, dword [0x180158404]
jbe 0x180028c90
mov r8, qword [0x1801aa2d0]
lea rcx, [rbp - 0x10]
movss xmm6, dword [0x1801680cc]
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.180033708
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.18004ba70
mov rax, qword [0x1801aa1d0]
mov esi, 2
movss xmm7, dword [0x1801585e4]
mov edi, r15d
lea r14d, [rsi + 1]
test rax, rax
je 0x180028df5
cmp byte [0x1801aa265], r15b
je 0x180028df5
mov rcx, rax
call fcn.18000ac68
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.18002d77c
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 0x180028cf3
lea rcx, [rbp + 0xc0]
call fcn.180001c24
mov rdx, qword [rbp + 0x90]
mov eax, r13d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r13d
test eax, eax
jg 0x180028d2b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp qword [rbp + 0xd8], 0xf
lea rbx, [rbp + 0xc0]
mov rdx, qword [0x1801aa1d0]
lea rcx, [rbp + 0x10]
cmova rbx, qword [rbp + 0xc0]
call fcn.18001f268
movss xmm14, dword [0x1801585bc]
lea r9, [rbp + 0xb0]
mov rcx, qword [0x1801aabe0]
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.18000cc08
mov rdx, qword [rbp + 0xd8]
mov edi, 0xb
cmp rdx, 0xf
jbe 0x180028dec
mov rcx, qword [rbp + 0xc0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028de7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180028de7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180066224
mov rax, qword [0x1801aa1d0]
jmp 0x180028dfe
movss xmm14, dword [0x1801585bc]
cmp byte [0x1801aa1ef], r15b
je 0x180028e9f
movss xmm0, dword [0x1801aa3a0]
ucomiss xmm0, xmm10
jne 0x180028e35
movss xmm0, dword [0x1801aa3a4]
ucomiss xmm0, xmm10
jne 0x180028e35
movss xmm0, dword [0x1801aa3a8]
ucomiss xmm0, xmm10
je 0x180028e9f
test rax, rax
je 0x180028e9f
movaps xmm0, xmmword [0x180158880]
lea rax, str.manipulated
mov rcx, qword [0x1801aabe0]
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.18000cc08
add edi, 0xb
cmp byte [0x1801aa266], r15b
je 0x180028fab
mov ecx, dword [0x1801aa290]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180028fab
mov rcx, qword [0x1801aa1d0]
lea rdx, [rbp + 0xec]
mov r12d, 0x2f
mov r8d, r12d
call fcn.18000b0cc
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
movsd qword [rbp - 0x70], xmm0
call fcn.18000b6f0
mov r8d, r12d
lea rdx, [rbp + 0xe0]
mov rcx, rax
call fcn.18000b0cc
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 0x180028fab
movaps xmm0, xmmword [0x180158880]
addss xmm11, xmm7
mov rcx, qword [0x1801aabe0]
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.18000cc08
cmp byte [0x1801aa1bf], r15b
je 0x1800291c2
cmp byte [0x1801aa154], r15b
je 0x1800291c2
movss xmm1, dword [0x18015863c]
movss xmm6, dword [0x180158658]
movaps xmm0, xmm6
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.18000c9d4
movaps xmm0, xmmword [0x1801588f0]
lea rax, [rbp - 0x10]
movss xmm8, dword [0x180158564]
movaps xmm3, xmm6
movss xmm2, dword [0x180169e0c]
movss xmm1, dword [0x180169e08]
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.18000d830
movaps xmm0, xmmword [0x180158850]
lea rax, [rbp - 0x20]
movss xmm2, dword [0x180169e0c]
movaps xmm3, xmm6
movss xmm1, dword [0x180169e08]
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.18000d830
movaps xmm0, xmmword [0x180158870]
lea rax, [rbp - 0x30]
movss xmm2, dword [0x180169e0c]
movaps xmm3, xmm6
movss xmm1, dword [0x180169e08]
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.18000d830
movaps xmm0, xmmword [0x1801588b0]
lea rax, [rbp - 0x40]
movss xmm2, dword [0x180169e0c]
movss xmm1, dword [0x180169e08]
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.18000d830
movaps xmm0, xmmword [0x180158a60]
lea rax, [0x180155634]
movss xmm2, dword [0x180169e0c]
movss xmm1, dword [0x180169e08]
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 [0x1801aabe0]
lea r9, [rbp - 0x50]
movd r8d, xmm2
movd edx, xmm1
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r14d
call fcn.18000cc08
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.1800662cc
cmp dword [0x1801aaefc], r13d
jne 0x180028a06
mov ecx, 0x6c06da54
call fcn.180007670
mov rcx, r12
mov qword [0x1801aacf0], rax
call fcn.180066260
jmp 0x180028a06
lea rcx, [0x1801aaf88]
call fcn.1800662cc
cmp dword [0x1801aaf88], r13d
jne 0x1800280ca
movd xmm1, dword [0x1801aa214]
lea rcx, [0x1801aaf88]
movd xmm0, dword [0x1801aa20c]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm15
mulss xmm0, xmm15
movss dword [0x1801aa684], xmm1
movss dword [0x1801aa680], xmm0
call fcn.180066260
jmp 0x1800280ca
mov rcx, r12
call fcn.1800662cc
cmp dword [0x1801aaefc], r13d
jne 0x180028927
mov ecx, 0x6c06da54
call fcn.180007670
mov rcx, r12
mov qword [0x1801aacf0], rax
call fcn.180066260
jmp 0x180028927
mov rcx, r12
call fcn.1800662cc
cmp dword [0x1801aaefc], r13d
jne 0x1800289d7
mov ecx, 0x6c06da54
call fcn.180007670
mov rcx, r12
mov qword [0x1801aacf0], rax
call fcn.180066260
jmp 0x1800289d7