Function at 0x1800288e0
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 - 0x228]
sub rsp, 0x2e8
mov ecx, dword [0x1801c0ca8]
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 [0x1801bfe08]
cdq
sub eax, edx
sar eax, 1
movd xmm13, eax
mov eax, dword [0x1801bfe10]
cdq
sub eax, edx
sar eax, 1
cvtdq2ps xmm13, xmm13
movd xmm11, eax
cvtdq2ps xmm11, xmm11
test ecx, ecx
je 0x18002898b
sub ecx, 1
je 0x18002898b
cmp ecx, 1
je 0x18002898b
movss xmm6, dword [rbp + 0x230]
jmp 0x180028994
call qword [0x1801c0ca0]
movaps xmm6, xmm0
call fcn.18000bc9c
mov rcx, rax
call fcn.18000b67c
mov ecx, dword [0x1801c0ca8]
subss xmm6, dword [rax]
movaps xmm7, xmm6
mulss xmm7, dword [0x180159660]
addss xmm7, dword [0x180159564]
test ecx, ecx
je 0x1800289cc
sub ecx, 1
je 0x1800289cc
cmp ecx, 1
jne 0x1800289d2
call qword [0x1801c0ca0]
call fcn.18000bc9c
mov rcx, rax
call fcn.18000b67c
cmp byte [0x1801bfded], r15b
movsd xmm8, qword [0x180159678]
je 0x180028a1f
cmp byte [0x1801bfe61], r15b
je 0x180028a1f
mov ecx, dword [0x1801bfe98]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180028a1f
xorps xmm14, xmm14
cvtss2sd xmm14, xmm7
comisd xmm14, xmm8
jbe 0x180028a1f
mov dl, 1
jmp 0x180028a2b
xorps xmm14, xmm14
mov dl, r15b
cvtss2sd xmm14, xmm7
movss xmm9, dword [0x18015964c]
lea rcx, str.ManipulatorCircle_animation
movaps xmm3, xmm9
call fcn.1800043f0
cmp byte [0x1801bfded], r15b
movaps xmm12, xmm0
je 0x180028a74
cmp byte [0x1801bfe61], r15b
je 0x180028a74
mov ecx, dword [0x1801bfe98]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180028a74
comisd xmm14, xmm8
mov dl, 1
ja 0x180028a77
mov dl, r15b
movss xmm3, dword [0x1801595dc]
lea rcx, str.ManipulatorCircleFill_animation
call fcn.1800043f0
comiss xmm12, dword [0x18015955c]
movaps xmm8, xmm0
xorps xmm10, xmm10
jbe 0x180028b34
call fcn.18000bc9c
mov rcx, rax
call fcn.18000a0cc
and dword [rbp + 0x74], r15d
lea rdx, [rbp + 0x118]
and dword [rbp + 0x78], r15d
mov rcx, rax
and dword [rbp + 0x84], r15d
and dword [rbp + 0x88], r15d
movss dword [rbp + 0x7c], xmm8
movss dword [rbp + 0x8c], xmm12
mov dword [rbp + 0x70], 0x3f800000
mov dword [rbp + 0x80], 0x3f800000
call fcn.180009ee4
movaps xmm2, xmm7
lea rdx, [rbp + 0xd0]
mulss xmm2, dword [0x180159728]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp + 0xd8], eax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x20], rax
movsd qword [rbp + 0xd0], xmm0
call fcn.18000e2a8
call fcn.180020098
mov esi, dword [0x1801bf720]
or r13, 0xffffffffffffffff
cmp byte [0x1801bfdc5], r15b
movss xmm15, dword [0x1801595f4]
mov r12d, 4
je 0x180028cca
mov rcx, qword [0x1801bfdc8]
test rcx, rcx
je 0x180028cca
call fcn.18000a1c4
test al, al
je 0x180028cca
mov rax, qword gs:[0x58]
mov rax, qword [rax + rsi*8]
mov eax, dword [r12 + rax]
cmp dword [0x1801c0ba0], eax
jg 0x180029e4e
mov rcx, qword [0x1801bfdc8]
lea rdx, [rbp + 0x124]
and dword [rbp + 0x234], r15d
mov ebx, 0x12
and dword [rbp + 0x230], r15d
mov r8d, ebx
call fcn.18000b6f8
ucomiss xmm10, dword [rax]
jne 0x180028c06
mov rcx, qword [0x1801bfdc8]
lea rdx, [rbp + 0x130]
mov r8d, ebx
call fcn.18000b6f8
ucomiss xmm10, dword [rax + 4]
jne 0x180028c06
mov rcx, qword [0x1801bfdc8]
lea rdx, [rbp + 0x100]
mov r8d, ebx
call fcn.18000b6f8
ucomiss xmm10, dword [rax + 8]
je 0x180028cca
mov rcx, qword [0x1801bfdc8]
lea rdx, [rbp + 0x10c]
mov r8d, 0x2f
call fcn.18000b6f8
lea rdx, [rbp + 0x230]
lea rcx, [rbp - 0x50]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x50], xmm0
mov dword [rbp - 0x48], eax
call fcn.18000c344
test al, al
je 0x180028cca
movss xmm0, dword [0x1801690f0]
lea rax, [rbp + 0x90]
movss xmm1, dword [0x1801690f4]
movss xmm3, dword [rbp + 0x230]
movss xmm2, dword [0x1801c027c]
movss dword [rbp + 0x90], xmm0
movss xmm0, dword [0x1801690f8]
movss dword [rbp + 0x98], xmm0
movss xmm0, dword [0x180159664]
mov byte [rsp + 0x38], 1
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rbp + 0x234]
movss dword [rbp + 0x94], xmm1
movss xmm1, dword [0x1801c0278]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
mov dword [rbp + 0x9c], 0x3f800000
call fcn.18000d4c4
mov dl, byte [0x1801bfe61]
lea rcx, str.ManipulatorInd_animation
movaps xmm3, xmm9
call fcn.1800043f0
comiss xmm0, dword [0x180159550]
jbe 0x180028f68
movss xmm3, dword [0x1801597bc]
lea rax, [rbp + 0xa0]
and dword [rbp + 0xa0], r15d
movaps xmm8, xmm11
subss xmm8, dword [0x180159764]
and dword [rbp + 0xa4], r15d
movaps xmm12, xmm13
subss xmm12, dword [0x180159790]
and dword [rbp + 0xa8], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
movaps xmm2, xmm8
movss dword [rbp + 0xac], xmm0
movss xmm0, dword [0x1801596f0]
movaps xmm1, xmm12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000e218
cmp byte [0x1801bfe61], r15b
je 0x180028e5c
mov ecx, dword [0x1801bfe98]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180028e5c
cmp byte [0x1801bfe61], r15b
je 0x180028d97
comisd xmm14, xmmword [0x180159618]
mov dl, 1
ja 0x180028d9a
mov dl, r15b
movaps xmm3, xmm9
lea rcx, str.ManipulatorInd_Active_animation
call fcn.1800043f0
movaps xmm2, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm2
comisd xmm1, xmmword [0x180159638]
jbe 0x180028e5c
comiss xmm7, xmm15
mulss xmm6, dword [0x1801597bc]
movaps xmm1, xmm7
addss xmm1, xmm7
minss xmm6, dword [0x1801597d4]
jae 0x180028de5
movaps xmm0, xmm9
jmp 0x180028df5
movss xmm0, dword [0x180159690]
subss xmm0, xmm1
movaps xmm1, xmm9
subss xmm6, dword [0x180159690]
and dword [rbp + 0xb8], r15d
addss xmm8, xmm9
mov dword [rsp + 0x38], r15d
addss xmm12, xmm9
movss dword [rsp + 0x30], xmm10
lea rax, [rbp + 0xb0]
movss dword [rbp + 0xb4], xmm0
movss xmm0, dword [0x1801596dc]
movaps xmm3, xmm6
movss dword [rbp + 0xb0], xmm1
movss dword [rbp + 0xbc], xmm2
movaps xmm1, xmm12
mov qword [rsp + 0x28], rax
movaps xmm2, xmm8
movss dword [rsp + 0x20], xmm0
call fcn.18000e218
and dword [rbp + 0x23c], r15d
and dword [rbp + 0x238], r15d
cmp byte [0x1801bfdeb], r15b
je 0x180028f68
movss xmm0, dword [0x1801bff88]
ucomiss xmm0, xmm10
jne 0x180028ea5
movss xmm0, dword [0x1801bff8c]
ucomiss xmm0, xmm10
jne 0x180028ea5
movss xmm0, dword [0x1801bff90]
ucomiss xmm0, xmm10
je 0x180028f68
movsd xmm0, qword [0x1801bff88]
lea rdx, [rbp + 0x238]
mov eax, dword [0x1801bff90]
lea rcx, [rbp - 0x40]
movsd qword [rbp - 0x40], xmm0
mov dword [rbp - 0x38], eax
call fcn.18000c344
test al, al
je 0x180028f68
movss xmm8, dword [0x180169100]
lea rcx, [rbp + 0x50]
movss xmm7, dword [0x180169104]
movss xmm6, dword [0x180169108]
and dword [rbp + 0x5c], r15d
movss dword [rbp + 0x50], xmm8
movss dword [rbp + 0x54], xmm7
movss dword [rbp + 0x58], xmm6
call fcn.180034370
lea rcx, [rbp + 0x20]
movss dword [rbp + 0x20], xmm8
mov r8d, eax
movss dword [rbp + 0x24], xmm7
movss dword [rbp + 0x28], xmm6
mov dword [rbp + 0x2c], 0x41c80000
call fcn.180034370
movss xmm0, dword [rbp + 0x238]
lea rdx, [rbp + 0x240]
movss xmm1, dword [rbp + 0x23c]
mov r9d, eax
movss xmm2, dword [0x180169150]
movss dword [rbp + 0x240], xmm0
movss dword [rbp + 0x244], xmm1
mov dword [rsp + 0x20], r8d
call fcn.18000e4c8
mov dl, byte [0x1801bfe51]
lea rcx, str.Flyhack_animation
movaps xmm3, xmm9
call fcn.1800043f0
movaps xmm8, xmm0
comiss xmm8, dword [0x180159550]
jbe 0x180029184
movss xmm1, dword [0x1801bffd0]
lea rax, [rbp + 0x30]
subss xmm1, dword [0x1801597b4]
movss xmm6, dword [0x1801597cc]
movss xmm12, dword [0x180159728]
movaps xmm3, xmm6
movss xmm2, dword [0x1801596e8]
and dword [rbp + 0x30], r15d
and dword [rbp + 0x34], r15d
and dword [rbp + 0x38], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
mov qword [rsp + 0x28], rax
movss dword [rbp + 0x3c], xmm8
movss dword [rsp + 0x20], xmm12
call fcn.18000e218
movss xmm1, dword [0x1801bffd0]
lea rax, [rbp - 0x30]
subss xmm1, dword [0x1801597b4]
movss xmm2, dword [0x180159740]
movaps xmm3, xmm6
and dword [rbp - 0x30], r15d
and dword [rbp - 0x2c], r15d
and dword [rbp - 0x28], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
mov qword [rsp + 0x28], rax
movss dword [rbp - 0x24], xmm8
movss dword [rsp + 0x20], xmm12
call fcn.18000e218
movss xmm0, dword [0x1801bfdc0]
movss xmm3, dword [0x1801bfec4]
subss xmm0, xmm9
movss xmm6, dword [0x1801bfdb0]
divss xmm3, xmm0
movss xmm0, dword [0x1801bfd9c]
comiss xmm3, xmm15
subss xmm0, xmm9
divss xmm6, xmm0
movaps xmm0, xmm3
addss xmm0, xmm3
jae 0x180029082
movaps xmm2, xmm9
jmp 0x180029092
movss xmm2, dword [0x180159690]
subss xmm2, xmm0
movaps xmm0, xmm9
movss xmm1, dword [0x1801bffd0]
minss xmm3, xmm9
movss xmm7, dword [0x1801597b0]
lea rax, [rbp - 0x20]
movss xmm12, dword [0x1801597c8]
subss xmm1, xmm7
movss xmm14, dword [0x1801596f0]
and dword [rbp - 0x18], r15d
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
movss dword [rbp - 0x20], xmm0
movss xmm0, dword [0x180159714]
movss dword [rbp - 0x1c], xmm2
movaps xmm2, xmm14
mov qword [rsp + 0x28], rax
mulss xmm3, xmm12
movss dword [rbp - 0x14], xmm8
movss dword [rsp + 0x20], xmm0
call fcn.18000e218
comiss xmm6, xmm15
movaps xmm0, xmm6
addss xmm0, xmm6
jae 0x180029115
movaps xmm2, xmm9
jmp 0x180029125
movss xmm2, dword [0x180159690]
subss xmm2, xmm0
movaps xmm0, xmm9
movss xmm1, dword [0x1801bffd0]
minss xmm6, xmm9
and dword [rbp - 8], r15d
lea rax, [rbp - 0x10]
mov dword [rsp + 0x38], r15d
subss xmm1, xmm7
movss dword [rsp + 0x30], xmm10
movss dword [rbp - 0x10], xmm0
movss xmm0, dword [0x180159714]
mulss xmm6, xmm12
mov qword [rsp + 0x28], rax
movss dword [rbp - 0xc], xmm2
movss xmm2, dword [0x180159744]
movaps xmm3, xmm6
movss dword [rbp - 4], xmm8
movss dword [rsp + 0x20], xmm0
call fcn.18000e218
jmp 0x18002918d
movss xmm14, dword [0x1801596f0]
mov dl, byte [0x1801bfe6e]
lea rcx, str.ReloadInd_animation
call fcn.1800040e8
mov r14d, eax
cmp eax, 1
jle 0x1800295d5
call fcn.18000bc9c
mov rcx, rax
call fcn.18002f4a0
mov rdi, rax
test rax, rax
je 0x1800295d5
mov r8, qword [rax]
test r8, r8
je 0x1800295d5
mov r8, qword [r8 + 0x10]
test r8, r8
je 0x1800295d5
or edx, 0xffffffff
mov rax, r13
inc rax
cmp byte [r8 + rax], r15b
jne 0x1800291e3
test eax, eax
je 0x1800295d5
mov r9d, eax
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
shr edx, 8
movzx eax, cl
inc r8
lea rcx, [0x18014fbe0]
xor edx, dword [rcx + rax*4]
sub r9, 1
jne 0x1800291f7
not edx
cmp edx, 0x407209f5
jne 0x1800295d5
cmp byte [0x1801bfd2e], r15b
jne 0x1800293f1
mov rcx, rdi
call fcn.18000aaf4
mov rcx, rdi
mov rbx, rax
call fcn.18000aaf4
movss xmm6, dword [0x18015959c]
movss xmm0, dword [rbx]
movss xmm2, dword [0x1801bfd94]
movss xmm1, dword [rax]
mulss xmm1, xmm6
subss xmm0, xmm1
comiss xmm2, xmm0
ja 0x1800293f1
comiss xmm2, xmm10
jbe 0x1800293f1
movss xmm12, dword [0x180159554]
movaps xmm7, xmm11
subss xmm7, dword [0x180159770]
and dword [rsp + 0x50], r15d
movaps xmm8, xmm13
subss xmm8, dword [0x180159790]
and dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x50]
and dword [rsp + 0x58], r15d
movaps xmm2, xmm7
movss xmm3, dword [0x1801597bc]
mov qword [rbp - 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 [rbp - 0x68], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
call fcn.18000e218
mov rcx, rdi
call fcn.18000aaf4
mov rcx, rdi
mov rbx, rax
call fcn.18000aaf4
cmp byte [0x1801bfe6e], r15b
movss xmm1, dword [rbx]
movss xmm0, dword [rax]
mulss xmm0, xmm6
movss xmm6, dword [0x1801bfd94]
subss xmm1, xmm0
divss xmm6, xmm1
addss xmm6, dword [0x180159564]
je 0x180029348
ucomiss xmm6, xmm9
mov dl, 1
jne 0x18002934b
mov dl, r15b
lea rcx, str.ReloadInd1_animation
call fcn.1800040e8
movss xmm14, dword [0x1801596dc]
cmp eax, 1
jle 0x1800295de
and dword [rsp + 0x60], r15d
addss xmm7, xmm9
and dword [rsp + 0x68], r15d
addss xmm8, xmm9
mulss xmm6, dword [0x1801597bc]
mov dword [rsp + 0x64], 0x3f48c8ca
movd xmm1, eax
mov rax, qword [rsp + 0x60]
movaps xmm2, xmm7
cvtdq2ps xmm1, xmm1
mov qword [rbp - 0x60], rax
mulss xmm1, xmm12
movss dword [rsp + 0x6c], xmm1
movaps xmm1, xmm8
mov rax, qword [rsp + 0x68]
mov qword [rbp - 0x58], rax
lea rax, [rbp - 0x60]
minss xmm6, dword [0x1801597d4]
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
subss xmm6, dword [0x180159690]
movaps xmm3, xmm6
call fcn.18000e218
jmp 0x1800295de
mov rax, qword gs:[0x58]
mov ebx, r12d
lea r12, [0x1801c0b14]
mov rsi, qword [rax + rsi*8]
mov eax, dword [rsi + rbx]
cmp dword [0x1801c0b14], eax
jg 0x180029ea8
mov rax, qword [0x1801c0910]
movss xmm0, dword [0x1801bfd90]
comiss xmm0, dword [rax + rdi]
jae 0x1800295d5
movss xmm15, dword [0x180159554]
movaps xmm8, xmm11
subss xmm8, dword [0x180159770]
and dword [rsp + 0x60], r15d
movaps xmm12, xmm13
subss xmm12, dword [0x180159790]
and dword [rsp + 0x64], r15d
mov rax, qword [rsp + 0x60]
and dword [rsp + 0x68], r15d
movaps xmm2, xmm8
mov qword [rbp - 0x60], rax
mov dword [rsp + 0x38], r15d
movaps xmm1, xmm12
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 - 0x58], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
movss xmm14, dword [0x1801597bc]
movaps xmm3, xmm14
call fcn.18000e218
mov eax, dword [rsi + rbx]
cmp dword [0x1801c0b14], eax
jg 0x180029edb
mov rax, qword [0x1801c0910]
mov rcx, rdi
movss xmm6, dword [rax + rdi]
subss xmm6, dword [0x1801bfd90]
call fcn.18000aaf4
movss xmm7, dword [rax]
mov eax, dword [rsi + rbx]
cmp dword [0x1801c0b14], eax
jg 0x180029e1b
mov rax, qword [0x1801c0910]
movss xmm3, dword [0x1801bfd90]
movaps xmm1, xmm3
addss xmm1, xmm7
movss xmm2, dword [rax + rdi]
comiss xmm2, xmm10
jae 0x180029523
maxss xmm1, xmm10
jmp 0x180029541
movaps xmm0, xmm3
addss xmm7, xmm2
subss xmm0, xmm2
comiss xmm0, xmm10
ja 0x18002953a
minss xmm7, xmm1
jmp 0x18002953e
maxss xmm7, xmm1
movaps xmm1, xmm7
cmp byte [0x1801bfe6e], r15b
subss xmm1, xmm3
divss xmm6, xmm1
addss xmm6, dword [0x180159564]
je 0x180029562
ucomiss xmm6, xmm9
mov dl, 1
jne 0x180029565
mov dl, r15b
lea rcx, str.ReloadInd2_animation
call fcn.1800040e8
cmp eax, 1
jle 0x1800295d5
and dword [rsp + 0x50], r15d
addss xmm8, xmm9
and dword [rsp + 0x58], r15d
addss xmm12, xmm9
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov dword [rsp + 0x54], 0x3f48c8ca
mov rax, qword [rsp + 0x50]
mov qword [rbp - 0x70], rax
mulss xmm6, xmm14
movaps xmm2, xmm8
movss xmm14, dword [0x1801596dc]
mulss xmm1, xmm15
movss dword [rsp + 0x5c], xmm1
movaps xmm1, xmm12
mov rax, qword [rsp + 0x58]
mov qword [rbp - 0x68], rax
lea rax, [rbp - 0x70]
jmp 0x1800293bc
movss xmm14, dword [0x1801596dc]
mov dl, byte [0x1801bfe75]
lea rcx, str.Crosshair_animation
movaps xmm3, xmm9
call fcn.1800043f0
comiss xmm0, dword [0x180159564]
jbe 0x1800296b8
mov rcx, qword [0x1801bfec8]
movss dword [rbp + 0xc], xmm0
movaps xmm0, xmmword [0x1801599e0]
movss dword [rbp + 0x248], xmm13
mov rax, qword [rcx + 0x3ec8]
movss dword [rbp + 0x24c], xmm11
mov dword [rbp], 0x3f800000
mov dword [rbp + 4], 0x3f800000
mov byte [rax + 0xb8], 1
mov rbx, qword [rcx + 0x3ec8]
lea rcx, [rbp + 0x60]
mov dword [rbp + 8], 0x3f800000
movups xmmword [rbp + 0x60], xmm0
call fcn.180034370
movss xmm2, dword [0x1801596d8]
lea rdx, [rbp + 0x248]
mov rcx, qword [rbx + 0x298]
mov edi, 0x40
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004c7b4
lea rcx, [rbp]
movss dword [rbp + 0x40], xmm13
movss dword [rbp + 0x44], xmm11
call fcn.180034370
movss xmm2, dword [0x1801596b0]
lea rdx, [rbp + 0x40]
mov rcx, qword [rbx + 0x298]
mov r9d, eax
mov dword [rsp + 0x20], edi
call fcn.18004c7b4
mov dl, byte [0x1801bfe04]
lea rcx, str.fov_animation
movaps xmm3, xmm9
call fcn.1800043f0
comiss xmm0, dword [0x180159564]
jbe 0x18002974c
mov r8, qword [0x1801bfec8]
lea rcx, [rbp + 0x10]
movss xmm6, dword [0x1801690cc]
movss dword [rbp + 0x1c], xmm0
movss dword [rbp + 0x48], xmm13
mov rax, qword [r8 + 0x3ec8]
movss dword [rbp + 0x4c], xmm11
mov dword [rbp + 0x10], 0x3f800000
mov dword [rbp + 0x14], 0x3f800000
mov byte [rax + 0xb8], 1
mov dword [rbp + 0x18], 0x3f800000
call fcn.180034370
mov rcx, qword [r8 + 0x3ec8]
lea rdx, [rbp + 0x48]
movss dword [rsp + 0x28], xmm9
mov r9d, eax
movaps xmm2, xmm6
mov dword [rsp + 0x20], r15d
mov rcx, qword [rcx + 0x298]
call fcn.18004c6d8
mov rcx, qword [0x1801bfdc8]
mov r14d, 2
movss xmm7, dword [0x180159750]
mov edi, r15d
lea r12d, [r14 + 1]
test rcx, rcx
je 0x1800299f8
cmp byte [0x1801bfe62], r15b
je 0x1800299f8
call fcn.18000a1c4
test al, al
je 0x1800299f8
cmp byte [0x1801bfd4c], r15b
jne 0x1800299f8
mov rcx, qword [0x1801bfdc8]
call fcn.18000b19c
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.18002e440
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0xe0], xmm0
mov r8, r13
mov rdx, qword [rax]
movdqu xmmword [rbp + 0xf0], xmm1
inc r8
cmp byte [rdx + r8], r15b
jne 0x1800297ce
lea rcx, [rbp + 0xe0]
call fcn.180001b54
mov rdx, qword [rbp + 0xc0]
mov eax, r13d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
add eax, r13d
test eax, eax
jg 0x180029806
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp byte [0x1801bfd4d], r15b
xorps xmm0, xmm0
mov esi, 0xf
movups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x70], r15b
mov qword [rbp - 0x78], rsi
je 0x180029855
mov rax, qword [str.Visible]
mov dword [rsp + 0x70], eax
movzx eax, word [0x1801565fc]
mov word [rsp + 0x74], ax
mov al, byte [0x1801565fe]
mov byte [rsp + 0x76], al
mov qword [rbp - 0x80], 7
mov byte [rsp + 0x77], r15b
jmp 0x18002987a
movsd xmm0, qword [str.InVisible]
mov al, byte [0x180156608]
movsd qword [rsp + 0x70], xmm0
mov byte [rsp + 0x78], al
mov qword [rbp - 0x80], 9
mov byte [rsp + 0x79], r15b
cmp qword [rbp + 0xf8], rsi
lea rbx, [rbp + 0xe0]
mov rdx, qword [0x1801bfdc8]
lea rcx, [rbp + 0x50]
cmova rbx, qword [rbp + 0xe0]
call fcn.18001ff4c
movss xmm12, dword [0x180159728]
lea r9, [rbp + 0x60]
mov rcx, qword [0x1801c0800]
movaps xmm6, xmm11
mov qword [rsp + 0x38], rbx
addss xmm6, xmm7
movups xmm0, xmmword [rax]
movss dword [rsp + 0x30], xmm12
movaps xmm1, xmm13
movd edx, xmm1
movaps xmm2, xmm6
mov dword [rsp + 0x28], r14d
movd r8d, xmm2
movdqu xmmword [rbp + 0x60], xmm0
mov dword [rsp + 0x20], r12d
call fcn.18000d5f0
cmp qword [rbp - 0x78], rsi
lea rax, [rsp + 0x70]
cmova rax, qword [rsp + 0x70]
cmp byte [0x1801bfd4d], r15b
je 0x180029918
movaps xmm0, xmmword [0x180159a40]
lea rcx, [rbp + 0x30]
movups xmmword [rbp + 0x30], xmm0
jmp 0x180029927
movaps xmm0, xmmword [0x180159bb0]
lea rcx, [rbp + 0x20]
movups xmmword [rbp + 0x20], xmm0
movups xmm0, xmmword [rcx]
mov rcx, qword [0x1801c0800]
lea r9, [rbp + 0x60]
addss xmm6, dword [0x18015972c]
mov qword [rsp + 0x38], rax
movaps xmm1, xmm13
movss dword [rsp + 0x30], xmm12
movd edx, xmm1
mov dword [rsp + 0x28], r14d
movaps xmm2, xmm6
mov dword [rsp + 0x20], r12d
movd r8d, xmm2
movdqu xmmword [rbp + 0x60], xmm0
call fcn.18000d5f0
mov rdx, qword [rbp - 0x78]
mov edi, 0x16
mov ebx, 0x1000
cmp rdx, rsi
jbe 0x1800299aa
mov rcx, qword [rsp + 0x70]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x1800299a5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800299ea
call fcn.1800670d4
mov rdx, qword [rbp + 0xf8]
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], rsi
mov byte [rsp + 0x70], r15b
cmp rdx, rsi
jbe 0x180029a01
mov rcx, qword [rbp + 0xe0]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x1800299f1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800299f1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800670d4
jmp 0x180029a01
movss xmm12, dword [0x180159728]
cmp byte [0x1801bfdec], r15b
je 0x180029aa7
movss xmm0, dword [0x1801bff98]
ucomiss xmm0, xmm10
jne 0x180029a38
movss xmm0, dword [0x1801bff9c]
ucomiss xmm0, xmm10
jne 0x180029a38
movss xmm0, dword [0x1801bffa0]
ucomiss xmm0, xmm10
je 0x180029aa7
cmp qword [0x1801bfdc8], r15
je 0x180029aa7
movaps xmm0, xmmword [0x1801599f0]
lea rax, str.manipulated
mov rcx, qword [0x1801c0800]
lea r9, [rbp - 0x60]
movq qword [rbp - 0x60], xmm0
movaps xmm2, xmm11
psrldq xmm0, 8
addss xmm2, xmm7
mov qword [rsp + 0x38], rax
movaps xmm1, xmm13
movq qword [rbp - 0x58], xmm0
movss dword [rsp + 0x30], xmm12
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r12d
movd edx, xmm1
addss xmm2, xmm0
movd r8d, xmm2
call fcn.18000d5f0
add edi, 0xb
cmp byte [0x1801bfe63], r15b
je 0x180029bb0
mov ecx, dword [0x1801bfe90]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180029bb0
mov rcx, qword [0x1801bfdc8]
lea rdx, [rbp + 0x10c]
mov esi, 0x2f
mov r8d, esi
call fcn.18000b6f8
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
movsd qword [rbp - 0x50], xmm0
call fcn.18000bc9c
mov r8d, esi
lea rdx, [rbp + 0x100]
mov rcx, rax
call fcn.18000b6f8
movsd xmm0, qword [rax]
movss xmm1, dword [rax + 8]
movsd qword [rbp - 0x40], xmm0
movss xmm2, dword [rbp - 0x40]
movss xmm3, dword [rbp - 0x3c]
subss xmm3, dword [rbp - 0x4c]
subss xmm2, dword [rbp - 0x50]
movd xmm0, ebx
subss xmm1, xmm0
mulss xmm3, xmm3
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm3, xmm2
addss xmm3, xmm1
comiss xmm3, xmm14
jae 0x180029bb0
movaps xmm0, xmmword [0x1801599f0]
addss xmm11, xmm7
mov rcx, qword [0x1801c0800]
lea rax, str.teleport
movq qword [rbp - 0x70], xmm0
lea r9, [rbp - 0x70]
psrldq xmm0, 8
movaps xmm1, xmm13
mov qword [rsp + 0x38], rax
movq qword [rbp - 0x68], xmm0
movss dword [rsp + 0x30], xmm12
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r12d
movd edx, xmm1
addss xmm11, xmm0
movaps xmm2, xmm11
movd r8d, xmm2
call fcn.18000d5f0
cmp byte [0x1801bfdc4], r15b
je 0x180029dc8
cmp byte [0x1801bfd4c], r15b
je 0x180029dc8
movss xmm1, dword [0x1801597a8]
movss xmm6, dword [0x1801597c4]
movaps xmm0, xmm6
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.18000d3bc
movaps xmm0, xmmword [0x180159a60]
lea rax, [rbp + 0x10]
movss xmm8, dword [0x1801596cc]
movaps xmm3, xmm6
movss xmm2, dword [0x18017f9dc]
movss xmm1, dword [0x18017f9d8]
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 + 0x18], xmm0
movss dword [rsp + 0x20], xmm7
call fcn.18000e218
movaps xmm0, xmmword [0x1801599c0]
lea rax, [rbp]
movss xmm2, dword [0x18017f9dc]
movaps xmm3, xmm6
movss xmm1, dword [0x18017f9d8]
addss xmm2, xmm7
movss xmm7, dword [0x1801597a0]
mov dword [rsp + 0x38], 0xc0
movss dword [rsp + 0x30], xmm8
movq qword [rbp], xmm0
psrldq xmm0, 8
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm7
movq qword [rbp + 8], xmm0
call fcn.18000e218
movaps xmm0, xmmword [0x1801599e0]
lea rax, [rbp - 0x10]
movss xmm2, dword [0x18017f9dc]
movaps xmm3, xmm6
movss xmm1, dword [0x18017f9d8]
addss xmm2, xmm7
movq qword [rbp - 0x10], xmm0
psrldq xmm0, 8
mov dword [rsp + 0x38], r15d
movss dword [rsp + 0x30], xmm10
addss xmm2, dword [0x18015975c]
movq qword [rbp - 8], xmm0
movss xmm0, dword [0x1801596e8]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.18000e218
movaps xmm0, xmmword [0x180159a20]
lea rax, [rbp - 0x20]
movss xmm2, dword [0x18017f9dc]
movss xmm1, dword [0x18017f9d8]
addss xmm2, xmm7
movss xmm6, dword [0x18015979c]
addss xmm1, xmm9
mov dword [rsp + 0x38], r15d
movaps xmm3, xmm6
movss dword [rsp + 0x30], xmm10
movq qword [rbp - 0x20], xmm0
addss xmm2, dword [0x180159760]
psrldq xmm0, 8
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm8
movq qword [rbp - 0x18], xmm0
call fcn.18000e218
movaps xmm0, xmmword [0x180159bd0]
lea rax, [0x18015662c]
movss xmm2, dword [0x18017f9dc]
movss xmm1, dword [0x18017f9d8]
addss xmm2, xmm7
addss xmm1, xmm9
movq qword [rbp - 0x30], xmm0
psrldq xmm0, 8
mov qword [rsp + 0x38], rax
movss dword [rsp + 0x30], xmm12
addss xmm2, dword [0x180159748]
addss xmm1, xmm6
movq qword [rbp - 0x28], xmm0
mov rcx, qword [0x1801c0800]
lea r9, [rbp - 0x30]
movd r8d, xmm2
movd edx, xmm1
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r12d
call fcn.18000d5f0
lea r11, [rsp + 0x2e8]
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.18006717c
cmp dword [0x1801c0b14], r13d
jne 0x1800294fb
mov ecx, 0x6c06da54
call fcn.180007680
mov rcx, r12
mov qword [0x1801c0910], rax
call fcn.180067110
jmp 0x1800294fb
lea rcx, [0x1801c0ba0]
call fcn.18006717c
cmp dword [0x1801c0ba0], r13d
jne 0x180028b99
movd xmm1, dword [0x1801bfe10]
lea rcx, [0x1801c0ba0]
movd xmm0, dword [0x1801bfe08]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm15
mulss xmm0, xmm15
movss dword [0x1801c027c], xmm1
movss dword [0x1801c0278], xmm0
call fcn.180067110
jmp 0x180028b99
mov rcx, r12
call fcn.18006717c
cmp dword [0x1801c0b14], r13d
jne 0x180029417
mov ecx, 0x6c06da54
call fcn.180007680
mov rcx, r12
mov qword [0x1801c0910], rax
call fcn.180067110
jmp 0x180029417
mov rcx, r12
call fcn.18006717c
cmp dword [0x1801c0b14], r13d
jne 0x1800294cc
mov ecx, 0x6c06da54
call fcn.180007680
mov rcx, r12
mov qword [0x1801c0910], rax
call fcn.180067110
jmp 0x1800294cc