Function at 0x1402b03e0
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x50
mov rsi, rcx
mov rcx, qword [rcx + 0x208]
movaps xmmword [rsp + 0x40], xmm6
movaps xmmword [rsp + 0x30], xmm7
movaps xmmword [rsp + 0x20], xmm8
call fcn.140294f60
movss xmm0, dword [rax + 4]
movss xmm1, dword [rax + 8]
mov edx, dword [rax]
mov dword [rsi], edx
movss dword [rsi + 4], xmm0
movss dword [rsi + 8], xmm1
mov ecx, dword [rax + 0x10]
movss xmm0, dword [rax + 0x14]
movss xmm1, dword [rax + 0x18]
mov dword [rsi + 0x10], ecx
movss dword [rsi + 0x14], xmm0
movss dword [rsi + 0x18], xmm1
movss xmm0, dword [rax + 0x24]
movss xmm1, dword [rax + 0x28]
mov eax, dword [rax + 0x20]
movss dword [rsi + 0x24], xmm0
movss dword [rsi + 0x28], xmm1
mov dword [rsi + 0x20], eax
mov rcx, qword [rsi + 0x208]
call fcn.140294f30
lea r8, [rsi + 0x54]
lea rdx, [rsi + 0x50]
movss xmm0, dword [rax + 4]
movss xmm1, dword [rax + 8]
mov eax, dword [rax]
mov dword [rsi + 0x30], eax
movss dword [rsi + 0x34], xmm0
movss dword [rsi + 0x38], xmm1
mov eax, dword [rsi + 8]
movss xmm0, dword [rsi + 0x18]
movss xmm1, dword [rsi + 0x28]
mov dword [rsi + 0x40], eax
movss dword [rsi + 0x44], xmm0
movss dword [rsi + 0x48], xmm1
mov rcx, qword [rsi + 0x208]
call fcn.1402c0650
mov rcx, qword [rsi + 0x200]
call fcn.140294f60
mov ecx, dword [rax]
movss xmm0, dword [rax + 4]
movss xmm1, dword [rax + 8]
mov dword [rsi + 0xd8], ecx
movss dword [rsi + 0xdc], xmm0
movss dword [rsi + 0xe0], xmm1
mov ecx, dword [rax + 0x10]
movss xmm0, dword [rax + 0x14]
movss xmm1, dword [rax + 0x18]
mov dword [rsi + 0xe8], ecx
movss dword [rsi + 0xec], xmm0
movss dword [rsi + 0xf0], xmm1
movss xmm0, dword [rax + 0x24]
movss xmm1, dword [rax + 0x28]
mov eax, dword [rax + 0x20]
movss dword [rsi + 0xfc], xmm0
movss dword [rsi + 0x100], xmm1
mov dword [rsi + 0xf8], eax
mov rcx, qword [rsi + 0x200]
call fcn.140294f30
lea rdx, [rsi + 0x118]
movss xmm0, dword [rax + 4]
movss xmm1, dword [rax + 8]
mov eax, dword [rax]
mov dword [rsi + 0x108], eax
movss dword [rsi + 0x10c], xmm0
movss dword [rsi + 0x110], xmm1
mov rcx, qword [rsi + 0x200]
call fcn.14029c4f0
movss xmm5, dword [rsi + 0x118]
movss xmm0, dword [0x140339240]
movss xmm4, dword [rsi + 0x11c]
mulss xmm5, xmm0
mulss xmm4, xmm0
movss xmm3, dword [rsi + 0x120]
movss dword [rsi + 0x118], xmm5
movss dword [rsi + 0x11c], xmm4
mulss xmm3, xmm0
movaps xmm2, xmm5
movss xmm6, xmm4
movaps xmm1, xmm4
movaps xmm0, xmm3
movss dword [rsi + 0x120], xmm3
movss xmm7, dword [0x1403392e0]
movss dword [rsi + 0x138], xmm5
xorps xmm0, xmm7
xorps xmm1, xmm7
xorps xmm2, xmm7
movss dword [rsi + 0x158], xmm5
movss dword [rsi + 0x168], xmm5
movss dword [rsi + 0x178], xmm5
movaps xmm5, xmm6
movss dword [rsi + 0x12c], xmm4
movss dword [rsi + 0x13c], xmm4
movss dword [rsi + 0x16c], xmm4
movss dword [rsi + 0x19c], xmm4
movss dword [rsi + 0x130], xmm0
movss dword [rsi + 0x140], xmm0
movaps xmm4, xmm6
movss dword [rsi + 0x150], xmm0
movss dword [rsi + 0x160], xmm0
movss dword [rsi + 0x14c], xmm1
movss dword [rsi + 0x15c], xmm1
movss dword [rsi + 0x17c], xmm1
movss dword [rsi + 0x18c], xmm1
movss dword [rsi + 0x170], xmm3
movss dword [rsi + 0x180], xmm3
movss dword [rsi + 0x190], xmm3
movss dword [rsi + 0x1a0], xmm3
movss dword [rsi + 0x128], xmm2
movss dword [rsi + 0x148], xmm2
movss dword [rsi + 0x188], xmm2
movss dword [rsi + 0x198], xmm2
movss xmm3, xmm0
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
mulss xmm6, dword [rsi + 0xfc]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
movaps xmm1, xmm3
addss xmm5, dword [rsi + 0x108]
addss xmm4, xmm0
addss xmm6, xmm2
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm4, xmm1
addss xmm6, xmm3
addss xmm4, dword [rsi + 0x10c]
addss xmm6, dword [rsi + 0x110]
movss dword [rsi + 0x128], xmm5
movss dword [rsi + 0x12c], xmm4
movss dword [rsi + 0x130], xmm6
movss xmm6, dword [rsi + 0x13c]
movaps xmm5, xmm6
movaps xmm4, xmm6
movss xmm2, dword [rsi + 0x138]
movss xmm3, dword [rsi + 0x140]
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
movaps xmm1, xmm3
mulss xmm1, dword [rsi + 0xf0]
addss xmm4, xmm0
addss xmm4, xmm1
mulss xmm6, dword [rsi + 0xfc]
addss xmm5, dword [rsi + 0x108]
mulss xmm2, dword [rsi + 0xf8]
addss xmm4, dword [rsi + 0x10c]
addss xmm6, xmm2
mulss xmm3, dword [rsi + 0x100]
addss xmm6, xmm3
addss xmm6, dword [rsi + 0x110]
movss dword [rsi + 0x138], xmm5
movss dword [rsi + 0x13c], xmm4
movss dword [rsi + 0x140], xmm6
movss xmm6, dword [rsi + 0x14c]
movss xmm2, dword [rsi + 0x148]
movaps xmm5, xmm6
movaps xmm4, xmm6
mulss xmm6, dword [rsi + 0xfc]
movaps xmm0, xmm2
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
movss xmm3, dword [rsi + 0x150]
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
movaps xmm1, xmm3
addss xmm5, dword [rsi + 0x108]
addss xmm6, xmm2
addss xmm4, xmm0
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm6, xmm3
addss xmm4, xmm1
addss xmm6, dword [rsi + 0x110]
addss xmm4, dword [rsi + 0x10c]
movss dword [rsi + 0x148], xmm5
movss dword [rsi + 0x14c], xmm4
movss dword [rsi + 0x150], xmm6
movss xmm6, dword [rsi + 0x15c]
movaps xmm5, xmm6
movaps xmm4, xmm6
mulss xmm6, dword [rsi + 0xfc]
movss xmm2, dword [rsi + 0x158]
movss xmm3, dword [rsi + 0x160]
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
movaps xmm1, xmm3
addss xmm5, dword [rsi + 0x108]
addss xmm6, xmm2
addss xmm4, xmm0
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm6, xmm3
addss xmm4, xmm1
addss xmm6, dword [rsi + 0x110]
addss xmm4, dword [rsi + 0x10c]
movss dword [rsi + 0x158], xmm5
movss dword [rsi + 0x15c], xmm4
movss dword [rsi + 0x160], xmm6
movss xmm6, dword [rsi + 0x16c]
movaps xmm5, xmm6
movss xmm2, dword [rsi + 0x168]
movss xmm3, dword [rsi + 0x170]
mulss xmm5, dword [rsi + 0xdc]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
addss xmm5, xmm1
movaps xmm4, xmm6
mulss xmm6, dword [rsi + 0xfc]
addss xmm5, dword [rsi + 0x108]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm4, dword [rsi + 0xec]
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
addss xmm6, xmm2
addss xmm4, xmm0
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm6, xmm3
addss xmm4, xmm1
addss xmm6, dword [rsi + 0x110]
addss xmm4, dword [rsi + 0x10c]
movss dword [rsi + 0x168], xmm5
movss dword [rsi + 0x16c], xmm4
movss dword [rsi + 0x170], xmm6
movss xmm6, dword [rsi + 0x17c]
movaps xmm5, xmm6
movaps xmm4, xmm6
mulss xmm6, dword [rsi + 0xfc]
movss xmm2, dword [rsi + 0x178]
movss xmm3, dword [rsi + 0x180]
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
movaps xmm1, xmm3
addss xmm5, dword [rsi + 0x108]
addss xmm6, xmm2
addss xmm4, xmm0
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm6, xmm3
addss xmm4, xmm1
addss xmm6, dword [rsi + 0x110]
addss xmm4, dword [rsi + 0x10c]
movss dword [rsi + 0x178], xmm5
movss dword [rsi + 0x17c], xmm4
movss dword [rsi + 0x180], xmm6
movss xmm6, dword [rsi + 0x18c]
movaps xmm5, xmm6
movaps xmm4, xmm6
mulss xmm6, dword [rsi + 0xfc]
movss xmm2, dword [rsi + 0x188]
movss xmm3, dword [rsi + 0x190]
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
movaps xmm0, xmm2
movaps xmm1, xmm3
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
movaps xmm1, xmm3
addss xmm5, dword [rsi + 0x108]
addss xmm6, xmm2
addss xmm4, xmm0
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm6, xmm3
addss xmm4, xmm1
addss xmm6, dword [rsi + 0x110]
addss xmm4, dword [rsi + 0x10c]
movss dword [rsi + 0x188], xmm5
movss dword [rsi + 0x18c], xmm4
movss dword [rsi + 0x190], xmm6
movss xmm6, dword [rsi + 0x19c]
movss xmm2, dword [rsi + 0x198]
movss xmm3, dword [rsi + 0x1a0]
movss xmm8, dword [0x140318ea0]
movaps xmm5, xmm6
movaps xmm4, xmm6
mulss xmm6, dword [rsi + 0xfc]
xor ebp, ebp
lea rbx, [rsi + 0x5c]
movaps xmm0, xmm2
movaps xmm1, xmm3
lea edi, [rbp + 8]
mulss xmm5, dword [rsi + 0xdc]
mulss xmm4, dword [rsi + 0xec]
mulss xmm0, dword [rsi + 0xd8]
mulss xmm1, dword [rsi + 0xe0]
addss xmm5, xmm0
movaps xmm0, xmm2
addss xmm5, xmm1
mulss xmm0, dword [rsi + 0xe8]
mulss xmm2, dword [rsi + 0xf8]
movaps xmm1, xmm3
addss xmm5, dword [rsi + 0x108]
addss xmm4, xmm0
addss xmm6, xmm2
mulss xmm1, dword [rsi + 0xf0]
mulss xmm3, dword [rsi + 0x100]
addss xmm4, xmm1
addss xmm6, xmm3
addss xmm6, dword [rsi + 0x110]
addss xmm4, dword [rsi + 0x10c]
movss dword [rsi + 0x198], xmm5
movss dword [rsi + 0x19c], xmm4
movss dword [rsi + 0x1a0], xmm6
movss xmm2, dword [rsi + 0x34]
movss xmm1, dword [rsi + 0x38]
movss xmm0, dword [rsi + 0x30]
subss xmm2, dword [rsi + 0x10c]
subss xmm0, dword [rsi + 0x108]
subss xmm1, dword [rsi + 0x110]
movss xmm6, dword [0x140318e9c]
movss dword [rsi + 0x1a8], xmm0
movss dword [rsi + 0x1ac], xmm2
movss dword [rsi + 0x1b0], xmm1
mov rax, qword [sym.imp.MSVCR90.dll__HUGE]
cvtsd2ss xmm0, qword [rax]
mov dword [rsi + 0x1b8], ebp
mov dword [rsi + 0x1bc], ebp
mov dword [rsi + 0x1c0], ebp
movss dword [rsi + 0x1c8], xmm0
movaps xmm0, xmm6
call sub.MSVCR90.dll_cosf
xorps xmm0, xmm7
movss dword [rbx - 4], xmm0
movaps xmm0, xmm6
call sub.MSVCR90.dll_sinf
mov dword [rbx + 4], ebp
add rbx, 0x10
addss xmm6, xmm8
sub rdi, 1
xorps xmm0, xmm7
movss dword [rbx - 0x10], xmm0
jne 0x1402b0cc3
mov rbx, qword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x30]
mov dword [rsi + 0x1cc], ebp
mov dword [rsi + 0x1d0], ebp
mov dword [rsi + 0x1d4], ebp
movaps xmm8, xmmword [rsp + 0x20]
mov dword [rsi + 0x220], ebp
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret