Function at 0x140102c50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
movsxd r10, ecx
mov r15, r8
xor ecx, ecx
mov r13d, edx
mov r12d, r10d
mov dword [rsp + 8], r10d
imul r12d, edx
mov r11d, ecx
mov qword [rsp + 0x28], rcx
mov ebp, ecx
mov qword [rsp + 0x20], r10
mov r8, r10
mov dword [rsp + 0xc], r12d
mov edx, r12d
lea ebx, [r12 + r12]
lea eax, [r12 + r12*2]
cmp r13d, 4
jl 0x140102edb
movsxd rdx, eax
lea r8, [r10*4]
movsxd rcx, ebx
lea ebp, [r10 + r10]
movsxd rax, r12d
mov rsi, r15
lea rdx, [r15 + rdx*4]
lea rdi, [r15 + rcx*4]
lea rbx, [r15 + rax*4]
lea eax, [r13 - 4]
shr eax, 2
inc eax
mov r14d, eax
imul eax, r10d
lea eax, [rax*4]
lea ecx, [rax + r12]
mov dword [rsp], ecx
lea ecx, [r12 + r12]
add ecx, eax
mov dword [rsp + 0x100], ecx
lea ecx, [r12 + r12*2]
add ecx, eax
lea eax, [r14*4]
mov dword [rsp + 0x18], eax
mov dword [rsp + 0x10], ecx
nop dword [rax]
movss xmm1, dword [rsi]
lea ecx, [r11*4]
addss xmm1, dword [rdi]
movss xmm2, dword [rdx]
add r11d, r10d
addss xmm2, dword [rbx]
movsxd rax, ecx
movaps xmm0, xmm1
subss xmm1, xmm2
addss xmm0, xmm2
movss dword [r9 + rax*4], xmm0
add rax, r8
movss dword [r9 + rax*4 - 4], xmm1
lea eax, [rcx + rbp]
movss xmm0, dword [rsi]
lea ecx, [r11*4]
subss xmm0, dword [rdi]
cdqe
add rsi, r8
add rdi, r8
add r11d, r10d
movss dword [r9 + rax*4 - 4], xmm0
movss xmm1, dword [rdx]
add rdx, r8
subss xmm1, dword [rbx]
add rbx, r8
movss dword [r9 + rax*4], xmm1
movss xmm1, dword [rsi]
addss xmm1, dword [rdi]
movss xmm2, dword [rdx]
addss xmm2, dword [rbx]
movsxd rax, ecx
movaps xmm0, xmm1
subss xmm1, xmm2
addss xmm0, xmm2
movss dword [r9 + rax*4], xmm0
add rax, r8
movss dword [r9 + rax*4 - 4], xmm1
lea eax, [rcx + rbp]
movss xmm0, dword [rsi]
lea ecx, [r11*4]
subss xmm0, dword [rdi]
cdqe
add rsi, r8
add rdi, r8
add r11d, r10d
movss dword [r9 + rax*4 - 4], xmm0
movss xmm1, dword [rdx]
add rdx, r8
subss xmm1, dword [rbx]
add rbx, r8
movss dword [r9 + rax*4], xmm1
movss xmm1, dword [rsi]
addss xmm1, dword [rdi]
movss xmm2, dword [rdx]
addss xmm2, dword [rbx]
movsxd rax, ecx
movaps xmm0, xmm1
subss xmm1, xmm2
addss xmm0, xmm2
movss dword [r9 + rax*4], xmm0
add rax, r8
movss dword [r9 + rax*4 - 4], xmm1
lea eax, [rcx + rbp]
movss xmm0, dword [rsi]
lea ecx, [r11*4]
subss xmm0, dword [rdi]
cdqe
add rsi, r8
movss dword [r9 + rax*4 - 4], xmm0
movss xmm1, dword [rdx]
add rdx, r8
subss xmm1, dword [rbx]
add rbx, r8
add rdi, r8
movss dword [r9 + rax*4], xmm1
movss xmm2, dword [rdx]
movss xmm1, dword [rsi]
addss xmm2, dword [rbx]
addss xmm1, dword [rdi]
movsxd rax, ecx
movaps xmm0, xmm1
add r11d, r10d
addss xmm0, xmm2
subss xmm1, xmm2
movss dword [r9 + rax*4], xmm0
add rax, r8
movss dword [r9 + rax*4 - 4], xmm1
lea eax, [rcx + rbp]
movss xmm0, dword [rsi]
add rsi, r8
subss xmm0, dword [rdi]
cdqe
add rdi, r8
movss dword [r9 + rax*4 - 4], xmm0
movss xmm1, dword [rdx]
add rdx, r8
subss xmm1, dword [rbx]
add rbx, r8
movss dword [r9 + rax*4], xmm1
sub r14, 1
jne 0x140102d20
mov ebx, dword [rsp + 0x100]
mov r8, r10
mov eax, dword [rsp + 0x10]
mov ebp, dword [rsp + 0x18]
mov edx, dword [rsp]
cmp ebp, r13d
jge 0x140102f7f
movsxd rcx, eax
lea r14d, [r10 + r10]
movsxd rax, r11d
movsxd rdi, ebx
lea rbx, [r8*4]
movsxd rsi, edx
sub rdi, rcx
sub rsi, rcx
lea rdx, [r15 + rcx*4]
lea r8, [r15 + rax*4]
mov eax, r13d
sub eax, ebp
mov ebp, eax
movss xmm1, dword [r8]
lea ecx, [r11*4]
addss xmm1, dword [rdx + rdi*4]
movss xmm2, dword [rdx + rsi*4]
add r11d, r10d
addss xmm2, dword [rdx]
movsxd rax, ecx
movaps xmm0, xmm1
addss xmm0, xmm2
subss xmm1, xmm2
movss dword [r9 + rax*4], xmm0
add rax, rbx
movss dword [r9 + rax*4 - 4], xmm1
lea eax, [r14 + rcx]
movss xmm0, dword [r8]
add r8, rbx
subss xmm0, dword [rdx + rdi*4]
cdqe
movss dword [r9 + rax*4 - 4], xmm0
movss xmm1, dword [rdx]
subss xmm1, dword [rdx + rsi*4]
add rdx, rbx
movss dword [r9 + rax*4], xmm1
sub rbp, 1
jne 0x140102f11
cmp r10d, 2
jl 0x1401035e2
movsxd r14, r12d
je 0x1401032a2
xor eax, eax
mov ebx, eax
test r13d, r13d
jle 0x140103298
movaps xmmword [rsp + 0xa0], xmm6
lea ecx, [r10 + r10]
movaps xmmword [rsp + 0x90], xmm7
mov r11d, eax
movaps xmmword [rsp + 0x80], xmm8
mov rax, r13
movaps xmmword [rsp + 0x70], xmm9
movaps xmmword [rsp + 0x60], xmm10
movaps xmmword [rsp + 0x50], xmm11
mov qword [rsp + 0x18], rax
nop dword [rax]
lea edx, [rbx*4]
add ecx, edx
cmp r10d, 2
jle 0x140103245
mov r13, qword [rsp + 0x120]
mov ebp, 4
movsxd rdx, edx
mov r12d, 4
movsxd rax, ecx
mov rsi, r14
dec rax
lea rcx, [r14 + r14]
neg rsi
lea rdi, [r13 + 4]
lea rax, [r9 + rax*4]
mov qword [rsp + 0x30], rax
lea rax, [rcx - 1]
add rax, r11
lea r8, [r15 + rax*4]
lea rax, [r14*4]
sub rbp, rax
mov rax, r14
neg rax
mov qword [rsp + 0x10], rax
lea rax, [r14*8]
sub r12, rax
lea eax, [r10 + r10]
cdqe
mov qword [rsp + 0x38], rax
sub rax, rcx
sub rax, r11
add rax, rdx
sub rdx, rcx
mov rcx, qword [rsp + 0x128]
sub rdx, r11
shl rax, 2
sub rcx, r13
sub rax, r15
shl rdx, 2
add rax, r9
sub rdx, r15
mov r15, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
lea rax, [rdx + r9]
mov rdx, qword [rsp + 0x130]
mov r9, qword [rsp + 0x40]
sub rdx, r13
mov r13, qword [rsp + 0x30]
mov qword [rsp + 0x48], rax
lea eax, [r10 - 3]
mov r10, qword [rsp + 0x48]
shr eax, 1
inc eax
mov qword [rsp], rax
mov rax, qword [rsp + 0x10]
nop word [rax + rax]
movss xmm4, dword [rdi + rdx - 4]
add r8, 8
movss xmm3, dword [rdi]
sub r13, 8
movss xmm1, dword [rdi - 4]
movaps xmm0, xmm3
movss xmm2, dword [rdi + rcx]
movaps xmm5, xmm1
mulss xmm3, dword [r8 + rsi*4]
movaps xmm9, xmm2
mulss xmm5, dword [r8 + rsi*4]
movss xmm8, dword [rdi + rcx - 4]
movss xmm11, dword [r8 + rbp]
mulss xmm9, dword [r8 + 4]
mulss xmm0, xmm11
mulss xmm11, xmm1
addss xmm5, xmm0
subss xmm11, xmm3
movss xmm3, dword [r8]
movaps xmm0, xmm3
mulss xmm3, xmm2
movss xmm2, dword [r8 + rax*8]
mulss xmm0, xmm8
mulss xmm8, dword [r8 + 4]
addss xmm9, xmm0
movaps xmm0, xmm4
mulss xmm0, dword [r8 + r14*4]
mulss xmm4, dword [r8 + r14*4 + 4]
subss xmm8, xmm3
movss xmm3, dword [rdi + rdx]
add rdi, 8
sub qword [rsp], 1
movaps xmm10, xmm3
mulss xmm10, dword [r8 + r14*4 + 4]
mulss xmm3, dword [r8 + r14*4]
addss xmm10, xmm0
subss xmm4, xmm3
movaps xmm3, xmm2
addss xmm3, xmm9
subss xmm2, xmm9
movaps xmm7, xmm10
subss xmm10, xmm5
addss xmm7, xmm5
movss xmm5, dword [r8 + r12]
movaps xmm6, xmm4
addss xmm6, xmm11
movaps xmm0, xmm3
subss xmm11, xmm4
movaps xmm4, xmm5
addss xmm4, xmm8
addss xmm0, xmm7
subss xmm5, xmm8
subss xmm3, xmm7
movaps xmm1, xmm4
movss dword [r8 + r10], xmm0
addss xmm1, xmm6
movaps xmm0, xmm2
subss xmm6, xmm4
subss xmm0, xmm11
addss xmm2, xmm11
movss dword [r8 + r10 + 4], xmm1
movaps xmm1, xmm10
subss xmm1, xmm5
movss dword [r13], xmm0
addss xmm5, xmm10
movss dword [r13 + 4], xmm1
movss dword [r8 + r9], xmm2
movss dword [r8 + r9 + 4], xmm5
movss dword [r13 + r15*4], xmm3
movss dword [r13 + r15*4 + 4], xmm6
jne 0x1401030d0
mov r9, qword [rsp + 0x118]
mov r10d, dword [rsp + 8]
mov r15, qword [rsp + 0x110]
mov rax, qword [rsp + 0x18]
add r11, qword [rsp + 0x20]
lea ecx, [r10 + r10]
add ebx, r10d
sub rax, 1
mov qword [rsp + 0x18], rax
jne 0x140102fe0
mov r13d, dword [rsp + 0x108]
mov r12d, dword [rsp + 0xc]
movaps xmm11, xmmword [rsp + 0x50]
movaps xmm10, xmmword [rsp + 0x60]
movaps xmm9, xmmword [rsp + 0x70]
movaps xmm8, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0xa0]
test r10b, 1
jne 0x1401035e2
movss xmm4, dword [0x1402f7694]
lea eax, [r10 - 1]
movss xmm5, dword [0x1402ce8a0]
lea edi, [r10*4]
add eax, r12d
mov dword [rsp + 0x10], edi
mov dword [rsp + 0x108], eax
lea esi, [r10 + r10]
mov dword [rsp + 8], esi
mov r8d, r10d
lea ecx, [rax + r12*2]
mov dword [rsp + 0x100], ecx
cmp r13d, 4
jl 0x140103525
movsxd r8, eax
movsxd rax, edi
movsxd rdx, ecx
movsxd rcx, esi
lea rsi, [r15 + r8*4]
lea r12, [rax*4]
mov rax, qword [rsp + 0x20]
lea rbp, [r15 + rdx*4]
lea r11, [rax*4]
add rax, rcx
lea rbx, [r11 + r9]
lea rdi, [r11 - 4]
add rdi, r15
lea rdx, [r9 + rax*4]
lea rax, [r14 + r8]
lea r8, [r15 + rax*4]
lea eax, [r13 - 4]
shr eax, 2
inc eax
mov qword [rsp], rax
imul eax, r10d
lea ecx, [rax*4]
mov eax, dword [rsp]
imul eax, dword [rsp + 0x10]
add dword [rsp + 0x108], ecx
add dword [rsp + 0x100], ecx
lea r9d, [r10 + rax*4]
mov rax, qword [rsp]
mov dword [rsp + 0xc], r9d
add r10d, ecx
lea r9d, [rax*4]
mov qword [rsp + 0x28], r9
mov r9, qword [rsp + 0x118]
nop dword [rax]
nop word [rax + rax]
movss xmm2, dword [rsi]
add rsi, r11
movaps xmm3, xmm2
addss xmm3, dword [rbp]
subss xmm2, dword [rbp]
add rbp, r11
mulss xmm3, xmm4
mulss xmm2, xmm4
xorps xmm3, xmm5
movaps xmm0, xmm2
addss xmm0, dword [rdi]
movss dword [rbx - 4], xmm0
movaps xmm0, xmm3
movss xmm1, dword [rdi]
add rdi, r11
subss xmm1, xmm2
movss dword [rdx - 4], xmm1
subss xmm0, dword [r8]
movss dword [rbx], xmm0
add rbx, r12
addss xmm3, dword [r8]
add r8, r11
movss dword [rdx], xmm3
add rdx, r12
movss xmm2, dword [rsi]
add rsi, r11
movaps xmm3, xmm2
addss xmm3, dword [rbp]
subss xmm2, dword [rbp]
add rbp, r11
mulss xmm3, xmm4
mulss xmm2, xmm4
xorps xmm3, xmm5
movaps xmm0, xmm2
addss xmm0, dword [rdi]
movss dword [rbx - 4], xmm0
movaps xmm0, xmm3
movss xmm1, dword [rdi]
add rdi, r11
subss xmm1, xmm2
movss dword [rdx - 4], xmm1
subss xmm0, dword [r8]
movss dword [rbx], xmm0
add rbx, r12
addss xmm3, dword [r8]
add r8, r11
movss dword [rdx], xmm3
add rdx, r12
movss xmm2, dword [rsi]
add rsi, r11
movaps xmm3, xmm2
addss xmm3, dword [rbp]
subss xmm2, dword [rbp]
add rbp, r11
mulss xmm3, xmm4
mulss xmm2, xmm4
xorps xmm3, xmm5
movaps xmm0, xmm2
addss xmm0, dword [rdi]
movss dword [rbx - 4], xmm0
movaps xmm0, xmm3
movss xmm1, dword [rdi]
subss xmm1, xmm2
movss dword [rdx - 4], xmm1
subss xmm0, dword [r8]
movss dword [rbx], xmm0
add rbx, r12
addss xmm3, dword [r8]
add r8, r11
movss dword [rdx], xmm3
add rdx, r12
movss xmm2, dword [rsi]
add rdi, r11
movaps xmm3, xmm2
subss xmm2, dword [rbp]
addss xmm3, dword [rbp]
mulss xmm2, xmm4
mulss xmm3, xmm4
movaps xmm0, xmm2
addss xmm0, dword [rdi]
xorps xmm3, xmm5
movss dword [rbx - 4], xmm0
add rsi, r11
movss xmm1, dword [rdi]
movaps xmm0, xmm3
subss xmm1, xmm2
add rbp, r11
add rdi, r11
movss dword [rdx - 4], xmm1
subss xmm0, dword [r8]
movss dword [rbx], xmm0
add rbx, r12
addss xmm3, dword [r8]
add r8, r11
movss dword [rdx], xmm3
add rdx, r12
sub rax, 1
jne 0x140103390
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x100]
mov edi, dword [rsp + 0x10]
mov r8d, dword [rsp + 0xc]
mov esi, dword [rsp + 8]
mov rbp, qword [rsp + 0x28]
cmp ebp, r13d
jge 0x1401035e2
movsxd rdx, eax
movsxd rbx, ecx
sub rbx, r14
movsxd rax, edi
movsxd r11, r10d
sub rbx, rdx
sub r11, r14
movsxd rcx, r8d
dec rcx
movsxd r10, esi
lea rdi, [rax*4]
sub r11, rdx
mov rax, qword [rsp + 0x20]
lea rsi, [rax*4]
lea rax, [r14 + rdx]
neg r14
sub r13d, ebp
lea r8, [r15 + rax*4]
lea rax, [r9 + rcx*4]
mov ecx, r13d
movss xmm2, dword [r8 + r14*4]
movaps xmm3, xmm2
addss xmm3, dword [r8 + rbx*4]
subss xmm2, dword [r8 + rbx*4]
mulss xmm3, xmm4
mulss xmm2, xmm4
xorps xmm3, xmm5
movaps xmm0, xmm2
addss xmm0, dword [r8 + r11*4 - 4]
movss dword [rax], xmm0
movaps xmm0, xmm3
movss xmm1, dword [r8 + r11*4 - 4]
subss xmm1, xmm2
movss dword [rax + r10*4], xmm1
subss xmm0, dword [r8]
movss dword [rax + 4], xmm0
addss xmm3, dword [r8]
add r8, rsi
movss dword [rax + r10*4 + 4], xmm3
add rax, rdi
sub rcx, 1
jne 0x14010357e
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret