Function at 0x14012e940
Capabilities:
Encode data using xor

Disassembly:
mov r8, qword [r8]
mov rdx, qword [rdx]
mov rcx, qword [rcx + 8]
jmp 0x14012e940
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r15
sub rsp, 0xf0
movups xmm0, xmmword [rcx]
lea r9, [rsp]
mov rbp, r8
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [r9], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [r9 + 0x10], xmm1
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [r9 + 0x20], xmm0
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [r9 + 0x30], xmm1
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [r9 + 0x40], xmm0
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [r9 + 0x50], xmm1
movups xmmword [r9 + 0x60], xmm0
lea r9, [r9 + 0x80]
movups xmm0, xmmword [rcx + 0x70]
sub rcx, 0xffffffffffffff80
movups xmmword [r9 - 0x10], xmm0
movups xmm1, xmmword [rcx]
mov rax, qword [rcx + 0x60]
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [r9], xmm1
movups xmm1, xmmword [rcx + 0x20]
movups xmmword [r9 + 0x10], xmm0
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [r9 + 0x20], xmm1
movups xmm1, xmmword [rcx + 0x40]
movups xmmword [r9 + 0x30], xmm0
movups xmm0, xmmword [rcx + 0x50]
movups xmmword [r9 + 0x40], xmm1
movups xmmword [r9 + 0x50], xmm0
mov qword [r9 + 0x60], rax
mov rax, r8
mov rbx, qword [rsp + 0xb0]
sub rax, rdx
mov r11, qword [rsp + 0x70]
mov r9, qword [rsp + 0x38]
mov r15, qword [rsp]
cmp rax, 4
jl 0x14012eb65
mov qword [rsp + 0x110], r14
lea r14, [r8 - 0x10]
cmp rdx, r14
jg 0x14012eab8
movdqa xmm4, xmmword [0x1402b1e90]
lea rcx, [rbx + rdx*4]
mov rdi, r15
mov rsi, r11
sub rdi, rbx
xorps xmm5, xmm5
sub rsi, rbx
nop
lea r8, [r9 + 2]
mov r10d, 4
add r8, rdx
nop dword [rax]
movzx eax, byte [r8 + 1]
lea r8, [r8 + 4]
xorps xmm0, xmm0
xorps xmm3, xmm3
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsi2ss xmm2, eax
movzx eax, byte [r8 - 4]
cvtsi2ss xmm0, eax
movzx eax, byte [r8 - 5]
cvtsi2ss xmm1, eax
movzx eax, byte [r8 - 6]
cvtsi2ss xmm3, eax
unpcklps xmm1, xmm2
unpcklps xmm3, xmm0
movups xmm0, xmmword [rcx]
unpcklps xmm3, xmm1
xorps xmm0, xmm4
cmpeqps xmm3, xmm5
andps xmm0, xmm3
andnps xmm3, xmmword [rsi + rcx]
orps xmm0, xmm3
movups xmmword [rdi + rcx], xmm0
add rcx, 0x10
sub r10, 1
jne 0x14012ea50
add rdx, 0x10
cmp rdx, r14
jle 0x14012ea40
mov r14, qword [rsp + 0x110]
lea rcx, [rbp - 4]
cmp rdx, rcx
jg 0x14012eb65
movdqa xmm4, xmmword [0x1402b1e90]
lea r8, [r9 + 2]
sub rcx, rdx
lea r10, [rbx + rdx*4]
add r8, rdx
shr rcx, 2
mov rdi, r15
mov rsi, r11
sub rdi, rbx
sub rsi, rbx
inc rcx
xorps xmm5, xmm5
lea rdx, [rdx + rcx*4]
nop dword [rax]
movzx eax, byte [r8 + 1]
xorps xmm0, xmm0
lea r10, [r10 + 0x10]
xorps xmm3, xmm3
lea r8, [r8 + 4]
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsi2ss xmm2, eax
movzx eax, byte [r8 - 4]
cvtsi2ss xmm0, eax
movzx eax, byte [r8 - 5]
cvtsi2ss xmm1, eax
movzx eax, byte [r8 - 6]
cvtsi2ss xmm3, eax
unpcklps xmm1, xmm2
unpcklps xmm3, xmm0
movups xmm0, xmmword [r10 - 0x10]
unpcklps xmm3, xmm1
xorps xmm0, xmm4
cmpeqps xmm3, xmm5
andps xmm0, xmm3
andnps xmm3, xmmword [r10 + rsi - 0x10]
orps xmm0, xmm3
movups xmmword [r10 + rdi - 0x10], xmm0
sub rcx, 1
jne 0x14012eb00
cmp rdx, rbp
jge 0x14012ec6e
movss xmm1, dword [0x1402b1e90]
mov rax, rbp
sub rax, rdx
cmp rax, 4
jl 0x14012ec37
mov rcx, r15
lea rax, [r11 + 8]
mov r10, rbx
lea rsi, [rbp - 3]
sub rcx, r11
lea rax, [rax + rdx*4]
sub r10, r11
mov rdi, 0xfffffffffffffff8
sub rdi, r11
cmp byte [r9 + rdx], 0
je 0x14012ebb6
movss xmm0, dword [rax - 8]
jmp 0x14012ebc0
movss xmm0, dword [r10 + rax - 8]
xorps xmm0, xmm1
movss dword [rcx + rax - 8], xmm0
lea r8, [rdi + rax]
cmp byte [r9 + rdx + 1], 0
je 0x14012ebdb
movss xmm0, dword [r8 + r11 + 4]
jmp 0x14012ebe5
movss xmm0, dword [r8 + rbx + 4]
xorps xmm0, xmm1
movss dword [rcx + rax - 4], xmm0
cmp byte [r9 + rdx + 2], 0
je 0x14012ebf9
movss xmm0, dword [rax]
jmp 0x14012ec02
movss xmm0, dword [r10 + rax]
xorps xmm0, xmm1
movss dword [rcx + rax], xmm0
cmp byte [r9 + rdx + 3], 0
je 0x14012ec16
movss xmm0, dword [rax + 4]
jmp 0x14012ec20
movss xmm0, dword [r10 + rax + 4]
xorps xmm0, xmm1
movss dword [rcx + rax + 4], xmm0
add rdx, 4
add rax, 0x10
cmp rdx, rsi
jl 0x14012eba8
cmp rdx, rbp
jge 0x14012ec6e
sub r11, rbx
lea rax, [rbx + rdx*4]
sub r15, rbx
cmp byte [r9 + rdx], 0
je 0x14012ec55
movss xmm0, dword [rax + r11]
jmp 0x14012ec5c
movss xmm0, dword [rax]
xorps xmm0, xmm1
movss dword [rax + r15], xmm0
inc rdx
add rax, 4
cmp rdx, rbp
jl 0x14012ec46
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop rdi
pop rsi
ret