Function at 0x1400da960
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov r10, qword [rcx + 0x6480]
xorps xmm0, xmm0
movzx r13d, r9w
mov r15, r8
mov r12, rdx
mov rsi, rcx
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
test r10, r10
je 0x1400dac2c
mov r14, qword [rbp + 0x50]
test r14, r14
je 0x1400dac2c
mov ecx, dword [r14 + 8]
xor edi, edi
movsd xmm0, qword [r14]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [rbp - 0x50]
mov dword [r10 + 0x34], eax
mov rax, qword [rbp - 0x50]
shr rax, 0x20
mov dword [r10 + 0x38], eax
mov dword [rbp - 0x48], ecx
mov dword [r10 + 0x40], edi
mov dword [r10 + 0x30], edi
mov dword [r10 + 0x3c], ecx
mov rcx, qword [rsi + 0x6480]
test rcx, rcx
je 0x1400dac2c
mov ebx, 0x20
lea r8, [rbp - 0x20]
mov r9d, ebx
lea rdx, [rbp - 0x20]
call fcn.1401457f0
mov rdx, qword [rsi + 0x6480]
test rdx, rdx
je 0x1400dac1a
mov ecx, dword [r14 + 8]
movsd xmm0, qword [r14]
mov dword [rdx + 0x40], edi
mov dword [rdx + 0x30], 1
mov dword [rdx + 0x3c], ecx
movsd qword [rbp - 0x40], xmm0
mov eax, dword [rbp - 0x40]
mov dword [rdx + 0x34], eax
mov rax, qword [rbp - 0x40]
shr rax, 0x20
mov dword [rdx + 0x38], eax
lea rdx, [rbp - 0x20]
mov dword [rbp - 0x38], ecx
mov rcx, qword [rsi + 0x146e8]
call fcn.1401495d0
mov ecx, eax
lea rax, [rbp - 0x20]
mov byte [rax], dil
lea rax, [rax + 1]
add ebx, 0xffffffff
jne 0x1400daa60
test ecx, ecx
je 0x1400daa77
mov eax, ecx
jmp 0x1400dac31
mov rbx, qword [rsi + 0x146e8]
test rbx, rbx
je 0x1400dac2c
test r15, r15
je 0x1400dac2c
mov rdx, qword [rbp + 0x58]
test rdx, rdx
je 0x1400dac2c
mov r8d, 5
mov rcx, rbx
call fcn.140149a60
test eax, eax
jne 0x1400dac31
xor eax, eax
lea rdx, [rbp - 0x40]
mov rcx, rbx
mov qword [rbp - 0x40], rax
mov dword [rbp - 0x38], eax
mov word [rbp - 0x34], ax
lea r8d, [rax + 0xb]
mov byte [rbp - 0x32], al
call fcn.140149a60
test eax, eax
jne 0x1400dac31
mov r8d, r13d
mov rdx, r15
mov rcx, rbx
call fcn.140149a60
test eax, eax
jne 0x1400dac31
test r13d, r13d
je 0x1400dab26
xor eax, eax
mov r8d, r13d
neg r8d
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], eax
mov word [rbp - 0x44], ax
mov byte [rbp - 0x42], al
and r8d, 0xf
jbe 0x1400dab26
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.140149a60
test eax, eax
jne 0x1400dac31
mov r8d, r13d
mov edx, 5
mov rcx, rbx
call fcn.1401492e0
test eax, eax
jne 0x1400dac31
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1401497c0
test eax, eax
jne 0x1400dac31
mov rcx, qword [rbp + 0x68]
lea rax, [rbp - 0x30]
sub rcx, rax
xorps xmm4, xmm4
xorps xmm3, xmm3
mov rdx, rdi
nop word [rax + rax]
xorps xmm0, xmm0
lea rax, [rbp - 0x30]
add rax, rdx
add rdx, 8
movd xmm2, dword [rcx + rax]
movd xmm1, dword [rax]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
movd xmm1, dword [rax + 4]
punpcklbw xmm1, xmm0
orps xmm4, xmm2
movd xmm2, dword [rax + rcx + 4]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
orps xmm3, xmm2
cmp rdx, 0x10
jl 0x1400dab70
orps xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
orps xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
orps xmm3, xmm0
movd eax, xmm3
test eax, eax
je 0x1400dabee
mov eax, 0xfffffecf
jmp 0x1400dac31
mov rcx, qword [rsi + 0x6480]
test rcx, rcx
je 0x1400dac11
test r12, r12
je 0x1400dac11
mov r9d, r13d
mov r8, r12
mov rdx, r15
call fcn.1401457f0
mov eax, edi
jmp 0x1400dac31
mov edi, 0xffffff53
mov eax, edi
jmp 0x1400dac31
lea rax, [rbp - 0x20]
nop
mov byte [rax], dil
lea rax, [rax + 1]
add ebx, 0xffffffff
jne 0x1400dac20
mov eax, 0xffffff53
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret