Function at 0x180027c90
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 [0x1801ab098]
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 [0x1801aa21c]
cdq
sub eax, edx
sar eax, 1
movd xmm13, eax
mov eax, dword [0x1801aa224]
cdq
sub eax, edx
sar eax, 1
cvtdq2ps xmm13, xmm13
movd xmm11, eax
cvtdq2ps xmm11, xmm11
test ecx, ecx
je 0x180027d3b
sub ecx, 1
je 0x180027d3b
cmp ecx, 1
je 0x180027d3b
movss xmm6, dword [rbp + 0x210]
jmp 0x180027d44
call qword [0x1801ab090]
movaps xmm6, xmm0
call fcn.18000b660
mov rcx, rax
call fcn.18000afc0
mov ecx, dword [0x1801ab098]
subss xmm6, dword [rax]
movaps xmm7, xmm6
mulss xmm7, dword [0x180158510]
addss xmm7, dword [0x180158414]
test ecx, ecx
je 0x180027d7c
sub ecx, 1
je 0x180027d7c
cmp ecx, 1
jne 0x180027d82
call qword [0x1801ab090]
call fcn.18000b660
mov rcx, rax
call fcn.18000afc0
cmp byte [0x1801aa208], r15b
movsd xmm8, qword [0x180158528]
je 0x180027dcf
cmp byte [0x1801aa274], r15b
je 0x180027dcf
mov ecx, dword [0x1801aa2a8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180027dcf
xorps xmm14, xmm14
cvtss2sd xmm14, xmm7
comisd xmm14, xmm8
jbe 0x180027dcf
mov dl, 1
jmp 0x180027ddb
xorps xmm14, xmm14
mov dl, r15b
cvtss2sd xmm14, xmm7
movss xmm9, dword [0x1801584fc]
lea rcx, str.ManipulatorCircle_animation
movaps xmm3, xmm9
call fcn.1800044bc
cmp byte [0x1801aa208], r15b
movaps xmm12, xmm0
je 0x180027e24
cmp byte [0x1801aa274], r15b
je 0x180027e24
mov ecx, dword [0x1801aa2a8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180027e24
comisd xmm14, xmm8
mov dl, 1
ja 0x180027e27
mov dl, r15b
movss xmm3, dword [0x180158488]
lea rcx, str.ManipulatorCircleFill_animation
call fcn.1800044bc
comiss xmm12, dword [0x18015840c]
movaps xmm8, xmm0
xorps xmm10, xmm10
jbe 0x180027ed5
call fcn.18000b660
mov rcx, rax
call fcn.180009f68
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.180009d80
movaps xmm2, xmm7
lea rdx, [rbp + 0xa0]
mulss xmm2, dword [0x1801585cc]
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.18000d838
call fcn.18001f204
mov esi, dword [0x1801aa0a4]
or r13, 0xffffffffffffffff
cmp byte [0x1801aa1dc], r15b
movss xmm15, dword [0x1801584a4]
mov r12d, 4
je 0x180028058
mov rcx, qword [0x1801aa1e0]
test rcx, rcx
je 0x180028058
call fcn.180009fec
test al, al
je 0x180028058
mov rax, qword gs:[0x58]
mov rax, qword [rax + rsi*8]
mov eax, dword [r12 + rax]
cmp dword [0x1801aaf78], eax
jg 0x1800290b8
mov rcx, qword [0x1801aa1e0]
lea rdx, [rbp + 0x104]
and dword [rbp + 0x214], r15d
mov ebx, 0x12
and dword [rbp + 0x210], r15d
mov r8d, ebx
call fcn.18000b03c
ucomiss xmm10, dword [rax]
jne 0x180027fa7
mov rcx, qword [0x1801aa1e0]
lea rdx, [rbp + 0x110]
mov r8d, ebx
call fcn.18000b03c
ucomiss xmm10, dword [rax + 4]
jne 0x180027fa7
mov rcx, qword [0x1801aa1e0]
lea rdx, [rbp + 0xe0]
mov r8d, ebx
call fcn.18000b03c
ucomiss xmm10, dword [rax + 8]
je 0x180028058
mov rcx, qword [0x1801aa1e0]
lea rdx, [rbp + 0xec]
mov r8d, 0x2f
call fcn.18000b03c
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.18000b8cc
test al, al
je 0x180028058
movss xmm0, dword [0x180168100]
lea rax, [rbp + 0x40]
movss xmm1, dword [0x180168104]
movss xmm3, dword [rbp + 0x210]
movss xmm2, dword [0x1801aa684]
movss dword [rbp + 0x40], xmm0
movss xmm0, dword [0x180168108]
movss dword [rbp + 0x48], xmm0
movss xmm0, dword [0x180158514]
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.18000ca54
mov dl, byte [0x1801aa274]
lea rcx, str.ManipulatorInd_animation
movaps xmm3, xmm9
call fcn.1800044bc
comiss xmm0, dword [0x180158400]
jbe 0x1800282e7
movss xmm3, dword [0x180158660]
lea rax, [rbp + 0x50]
and dword [rbp + 0x50], r15d
movaps xmm8, xmm11
subss xmm8, dword [0x180158608]
and dword [rbp + 0x54], r15d
movaps xmm12, xmm13
subss xmm12, dword [0x180158634]
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 [0x180158598]
movaps xmm1, xmm12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000d7a8
cmp byte [0x1801aa274], r15b
je 0x1800281cc
mov ecx, dword [0x1801aa2a8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800281cc
cmp byte [0x1801aa274], r15b
je 0x180028116
comisd xmm14, xmmword [0x1801584c8]
mov dl, 1
ja 0x180028119
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 [0x1801584e8]
jbe 0x1800281cc
comiss xmm7, xmm15
mulss xmm6, dword [0x180158660]
movaps xmm1, xmm7
addss xmm1, xmm7
minss xmm6, dword [0x180158678]
jae 0x180028164
movaps xmm0, xmm9
jmp 0x180028174
movss xmm0, dword [0x180158540]
subss xmm0, xmm1
movaps xmm1, xmm9
subss xmm6, dword [0x180158540]
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 [0x180158584]
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.18000d7a8
and dword [rbp + 0x21c], r15d
and dword [rbp + 0x218], r15d
cmp byte [0x1801aa1fe], r15b
je 0x1800282e7
movss xmm0, dword [0x1801aa3a0]
ucomiss xmm0, xmm10
jne 0x180028215
movss xmm0, dword [0x1801aa3a4]
ucomiss xmm0, xmm10
jne 0x180028215
movss xmm0, dword [0x1801aa3a8]
ucomiss xmm0, xmm10
je 0x1800282e7
movsd xmm0, qword [0x1801aa3a0]
lea rdx, [rbp + 0x218]
mov eax, dword [0x1801aa3a8]
lea rcx, [rbp - 0x60]
movsd qword [rbp - 0x60], xmm0
mov dword [rbp - 0x58], eax
call fcn.18000b8cc
test al, al
je 0x1800282e7
movss xmm8, dword [0x180168110]
lea rcx, [rbp + 0x70]
movss xmm7, dword [0x180168114]
movss xmm6, dword [0x180168118]
and dword [rbp + 0x7c], r15d
movss dword [rbp + 0x70], xmm8
movss dword [rbp + 0x74], xmm7
movss dword [rbp + 0x78], xmm6
call fcn.18003358c
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.18003358c
movss xmm0, dword [rbp + 0x218]
lea rdx, [rbp + 0x220]
movss xmm1, dword [rbp + 0x21c]
mov r9d, eax
movss xmm2, dword [0x180168160]
movss dword [rbp + 0x220], xmm0
movss dword [rbp + 0x224], xmm1
mov dword [rsp + 0x20], r8d
call fcn.18000da58
mov dl, byte [0x1801aa264]
lea rcx, str.Flyhack_animation
movaps xmm3, xmm9
call fcn.1800044bc
movaps xmm12, xmm0
comiss xmm12, dword [0x180158400]
jbe 0x180028501
movss xmm1, dword [0x1801aa3e8]
lea rax, [rbp + 0x10]
subss xmm1, dword [0x180158658]
movss xmm6, dword [0x180158670]
movss xmm14, dword [0x180158590]
movaps xmm3, xmm6
movss xmm8, dword [0x1801585a8]
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.18000d7a8
movss xmm1, dword [0x1801aa3e8]
lea rax, [rbp - 0x50]
subss xmm1, dword [0x180158658]
movss xmm2, dword [0x1801585e4]
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.18000d7a8
movss xmm0, dword [0x1801aa1d8]
movss xmm3, dword [0x1801aa2dc]
subss xmm0, xmm9
movss xmm6, dword [0x1801aa1c8]
divss xmm3, xmm0
movss xmm0, dword [0x1801aa1b4]
comiss xmm3, xmm15
subss xmm0, xmm9
movaps xmm2, xmm3
addss xmm2, xmm3
divss xmm6, xmm0
jae 0x180028406
movaps xmm0, xmm9
jmp 0x180028416
movss xmm0, dword [0x180158540]
subss xmm0, xmm2
movaps xmm2, xmm9
movss xmm1, dword [0x1801aa3e8]
minss xmm3, xmm9
movss xmm7, dword [0x180158654]
lea rax, [rbp - 0x40]
movss xmm8, dword [0x18015866c]
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 [0x180158598]
movss dword [rbp - 0x40], xmm2
movaps xmm2, xmm14
mulss xmm3, xmm8
movss dword [rbp - 0x3c], xmm0
movss dword [rbp - 0x34], xmm12
call fcn.18000d7a8
comiss xmm6, xmm15
movaps xmm0, xmm6
addss xmm0, xmm6
jae 0x180028492
movaps xmm2, xmm9
jmp 0x1800284a2
movss xmm2, dword [0x180158540]
subss xmm2, xmm0
movaps xmm0, xmm9
movss xmm1, dword [0x1801aa3e8]
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 [0x180158590]
mulss xmm6, xmm8
mov qword [rsp + 0x28], rax
movss dword [rbp - 0x2c], xmm2
movss xmm2, dword [0x1801585e8]
movaps xmm3, xmm6
movss dword [rbp - 0x24], xmm12
movss dword [rsp + 0x20], xmm0
call fcn.18000d7a8
jmp 0x18002850a
movss xmm14, dword [0x180158598]
mov dl, byte [0x1801aa285]
lea rcx, str.ReloadInd_animation
call fcn.1800041b4
mov r14d, eax
cmp eax, 1
jle 0x180028983
call fcn.18000b660
mov rcx, rax
call fcn.18002e730
mov rdi, rax
test rax, rax
je 0x180028983
mov r8, qword [rax]
test r8, r8
je 0x180028983
mov r8, qword [r8 + 0x10]
test r8, r8
je 0x180028983
or edx, 0xffffffff
mov rax, r13
inc rax
cmp byte [r8 + rax], r15b
jne 0x180028560
test eax, eax
je 0x180028983
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 0x180028574
not edx
cmp edx, 0x407209f5
jne 0x180028983
cmp byte [0x1801aa13e], r15b
jne 0x180028771
mov rcx, rdi
call fcn.18000a6a4
mov rcx, rdi
mov rbx, rax
call fcn.18000a6a4
movss xmm6, dword [0x18015844c]
movss xmm0, dword [rbx]
movss xmm2, dword [0x1801aa1ac]
movss xmm1, dword [rax]
mulss xmm1, xmm6
subss xmm0, xmm1
comiss xmm2, xmm0
ja 0x180028771
comiss xmm2, xmm10
jbe 0x180028771
movss xmm12, dword [0x180158404]
movaps xmm7, xmm11
subss xmm7, dword [0x180158614]
and dword [rsp + 0x50], r15d
movaps xmm8, xmm13
subss xmm8, dword [0x180158634]
and dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x50]
and dword [rsp + 0x58], r15d
movaps xmm2, xmm7
movss xmm3, dword [0x180158660]
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.18000d7a8
mov rcx, rdi
call fcn.18000a6a4
mov rcx, rdi
mov rbx, rax
call fcn.18000a6a4
cmp byte [0x1801aa285], r15b
movss xmm1, dword [rbx]
movss xmm0, dword [rax]
mulss xmm0, xmm6
movss xmm6, dword [0x1801aa1ac]
subss xmm1, xmm0
divss xmm6, xmm1
addss xmm6, dword [0x180158414]
je 0x1800286c8
ucomiss xmm6, xmm9
mov dl, 1
jne 0x1800286cb
mov dl, r15b
lea rcx, str.ReloadInd1_animation
call fcn.1800041b4
cmp eax, 1
jle 0x180028983
mulss xmm6, dword [0x180158660]
addss xmm7, xmm9
and dword [rsp + 0x60], r15d
and dword [rsp + 0x68], r15d
addss xmm8, xmm9
movd xmm1, eax
minss xmm6, dword [0x180158678]
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 [0x180158540]
mulss xmm1, xmm12
movss xmm12, dword [0x180158584]
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.18000d7a8
jmp 0x18002898c
mov rax, qword gs:[0x58]
mov ebx, r12d
lea r12, [0x1801aaeec]
mov rsi, qword [rax + rsi*8]
mov eax, dword [rsi + rbx]
cmp dword [0x1801aaeec], eax
jg 0x180029112
mov rax, qword [0x1801aace0]
movss xmm0, dword [0x1801aa1a8]
comiss xmm0, dword [rax + rdi]
jae 0x180028983
movss xmm15, dword [0x180158404]
movaps xmm8, xmm11
subss xmm8, dword [0x180158614]
and dword [rsp + 0x60], r15d
movaps xmm12, xmm13
subss xmm12, dword [0x180158634]
and dword [rsp + 0x64], r15d
mov rax, qword [rsp + 0x60]
and dword [rsp + 0x68], r15d
movaps xmm2, xmm8
movss xmm3, dword [0x180158660]
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.18000d7a8
mov eax, dword [rsi + rbx]
cmp dword [0x1801aaeec], eax
jg 0x180029145
mov rax, qword [0x1801aace0]
mov rcx, rdi
movss xmm6, dword [rax + rdi]
subss xmm6, dword [0x1801aa1a8]
call fcn.18000a6a4
movss xmm7, dword [rax]
mov eax, dword [rsi + rbx]
cmp dword [0x1801aaeec], eax
jg 0x180029085
mov rax, qword [0x1801aace0]
movss xmm3, dword [0x1801aa1a8]
movaps xmm1, xmm3
addss xmm1, xmm7
movss xmm2, dword [rax + rdi]
comiss xmm2, xmm10
jae 0x18002889e
maxss xmm1, xmm10
jmp 0x1800288bc
movaps xmm0, xmm3
addss xmm7, xmm2
subss xmm0, xmm2
comiss xmm0, xmm10
ja 0x1800288b5
minss xmm7, xmm1
jmp 0x1800288b9
maxss xmm7, xmm1
movaps xmm1, xmm7
cmp byte [0x1801aa285], r15b
subss xmm1, xmm3
divss xmm6, xmm1
addss xmm6, dword [0x180158414]
je 0x1800288dd
ucomiss xmm6, xmm9
mov dl, 1
jne 0x1800288e0
mov dl, r15b
lea rcx, str.ReloadInd2_animation
call fcn.1800041b4
cmp eax, 1
jle 0x180028983
mulss xmm6, dword [0x180158660]
addss xmm8, xmm9
and dword [rsp + 0x50], r15d
and dword [rsp + 0x58], r15d
addss xmm12, xmm9
movss xmm0, dword [0x180158584]
minss xmm6, dword [0x180158678]
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 [0x180158540]
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.18000d7a8
movss xmm12, dword [0x180158584]
mov dl, byte [0x1801aa288]
lea rcx, str.Crosshair_animation
movaps xmm3, xmm9
call fcn.1800044bc
comiss xmm0, dword [0x180158414]
jbe 0x180028a6c
mov rcx, qword [0x1801aa2e0]
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.18003358c
movss xmm2, dword [0x180158580]
lea rdx, [rbp + 0x228]
mov rcx, qword [rbx + 0x298]
mov edi, 0x40
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004b9a0
lea rcx, [rbp - 0x20]
movss dword [rbp], xmm13
movss dword [rbp + 4], xmm11
call fcn.18003358c
movss xmm2, dword [0x180158558]
lea rdx, [rbp]
mov rcx, qword [rbx + 0x298]
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004b9a0
mov dl, byte [0x1801aa217]
lea rcx, str.fov_animation
movaps xmm3, xmm9
call fcn.1800044bc
comiss xmm0, dword [0x180158414]
jbe 0x180028b00
mov r8, qword [0x1801aa2e0]
lea rcx, [rbp - 0x10]
movss xmm6, dword [0x1801680dc]
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.18003358c
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.18004b8c4
mov rax, qword [0x1801aa1e0]
mov esi, 2
movss xmm7, dword [0x1801585f4]
mov edi, r15d
lea r14d, [rsi + 1]
test rax, rax
je 0x180028c65
cmp byte [0x1801aa275], r15b
je 0x180028c65
mov rcx, rax
call fcn.18000abd8
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.18002d614
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 0x180028b63
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 0x180028b9b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp qword [rbp + 0xd8], 0xf
lea rbx, [rbp + 0xc0]
mov rdx, qword [0x1801aa1e0]
lea rcx, [rbp + 0x10]
cmova rbx, qword [rbp + 0xc0]
call fcn.18001f0b8
movss xmm14, dword [0x1801585cc]
lea r9, [rbp + 0xb0]
mov rcx, qword [0x1801aabd0]
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.18000cb80
mov rdx, qword [rbp + 0xd8]
mov edi, 0xb
cmp rdx, 0xf
jbe 0x180028c5c
mov rcx, qword [rbp + 0xc0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028c57
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180028c57
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800cfa84
mov rax, qword [0x1801aa1e0]
jmp 0x180028c6e
movss xmm14, dword [0x1801585cc]
cmp byte [0x1801aa1ff], r15b
je 0x180028d0f
movss xmm0, dword [0x1801aa3b0]
ucomiss xmm0, xmm10
jne 0x180028ca5
movss xmm0, dword [0x1801aa3b4]
ucomiss xmm0, xmm10
jne 0x180028ca5
movss xmm0, dword [0x1801aa3b8]
ucomiss xmm0, xmm10
je 0x180028d0f
test rax, rax
je 0x180028d0f
movaps xmm0, xmmword [0x180158880]
lea rax, str.manipulated
mov rcx, qword [0x1801aabd0]
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.18000cb80
add edi, 0xb
cmp byte [0x1801aa276], r15b
je 0x180028e1b
mov ecx, dword [0x1801aa2a0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180028e1b
mov rcx, qword [0x1801aa1e0]
lea rdx, [rbp + 0xec]
mov r12d, 0x2f
mov r8d, r12d
call fcn.18000b03c
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
movsd qword [rbp - 0x70], xmm0
call fcn.18000b660
mov r8d, r12d
lea rdx, [rbp + 0xe0]
mov rcx, rax
call fcn.18000b03c
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 0x180028e1b
movaps xmm0, xmmword [0x180158880]
addss xmm11, xmm7
mov rcx, qword [0x1801aabd0]
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.18000cb80
cmp byte [0x1801aa1cf], r15b
je 0x180029032
cmp byte [0x1801aa164], r15b
je 0x180029032
movss xmm1, dword [0x18015864c]
movss xmm6, dword [0x180158668]
movaps xmm0, xmm6
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.18000c94c
movaps xmm0, xmmword [0x1801588f0]
lea rax, [rbp - 0x10]
movss xmm8, dword [0x180158574]
movaps xmm3, xmm6
movss xmm2, dword [0x180169e1c]
movss xmm1, dword [0x180169e18]
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.18000d7a8
movaps xmm0, xmmword [0x180158850]
lea rax, [rbp - 0x20]
movss xmm2, dword [0x180169e1c]
movaps xmm3, xmm6
movss xmm1, dword [0x180169e18]
addss xmm2, xmm7
movss xmm7, dword [0x180158644]
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.18000d7a8
movaps xmm0, xmmword [0x180158870]
lea rax, [rbp - 0x30]
movss xmm2, dword [0x180169e1c]
movaps xmm3, xmm6
movss xmm1, dword [0x180169e18]
addss xmm2, xmm7
movq qword [rbp - 0x30], xmm0
psrldq xmm0, 8
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
addss xmm2, dword [0x180158600]
movq qword [rbp - 0x28], xmm0
movss xmm0, dword [0x180158590]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000d7a8
movaps xmm0, xmmword [0x1801588b0]
lea rax, [rbp - 0x40]
movss xmm2, dword [0x180169e1c]
movss xmm1, dword [0x180169e18]
addss xmm2, xmm7
movss xmm6, dword [0x180158640]
addss xmm1, xmm9
mov dword [rsp + 0x38], r15d
movaps xmm3, xmm6
movss dword [rsp + 0x30], xmm10
movq qword [rbp - 0x40], xmm0
addss xmm2, dword [0x180158604]
psrldq xmm0, 8
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm8
movq qword [rbp - 0x38], xmm0
call fcn.18000d7a8
movaps xmm0, xmmword [0x180158a60]
lea rax, [0x180155634]
movss xmm2, dword [0x180169e1c]
movss xmm1, dword [0x180169e18]
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 [0x1801585ec]
addss xmm1, xmm6
movq qword [rbp - 0x48], xmm0
mov rcx, qword [0x1801aabd0]
lea r9, [rbp - 0x50]
movd r8d, xmm2
movd edx, xmm1
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r14d
call fcn.18000cb80
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.1800cfb2c
cmp dword [0x1801aaeec], r13d
jne 0x180028876
mov ecx, 0x6c06da54
call fcn.180007614
mov rcx, r12
mov qword [0x1801aace0], rax
call fcn.1800cfac0
jmp 0x180028876
lea rcx, [0x1801aaf78]
call fcn.1800cfb2c
cmp dword [0x1801aaf78], r13d
jne 0x180027f3a
movd xmm1, dword [0x1801aa224]
lea rcx, [0x1801aaf78]
movd xmm0, dword [0x1801aa21c]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm15
mulss xmm0, xmm15
movss dword [0x1801aa684], xmm1
movss dword [0x1801aa680], xmm0
call fcn.1800cfac0
jmp 0x180027f3a
mov rcx, r12
call fcn.1800cfb2c
cmp dword [0x1801aaeec], r13d
jne 0x180028797
mov ecx, 0x6c06da54
call fcn.180007614
mov rcx, r12
mov qword [0x1801aace0], rax
call fcn.1800cfac0
jmp 0x180028797
mov rcx, r12
call fcn.1800cfb2c
cmp dword [0x1801aaeec], r13d
jne 0x180028847
mov ecx, 0x6c06da54
call fcn.180007614
mov rcx, r12
mov qword [0x1801aace0], rax
call fcn.1800cfac0
jmp 0x180028847