Function at 0x1400016c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
xor eax, eax
movsxd rsi, edx
mov qword [rsp + 0xb0], rbx
mov rdx, r9
mov rbx, rsi
mov word [rbp - 0x60], ax
shl rbx, 4
mov rdi, r8
add rbx, rcx
mov qword [rbp - 0x5e], rax
lea rcx, [rbp - 0x60]
mov dword [rbp - 0x56], eax
mov word [rbp - 0x52], ax
call fcn.140001f40
movzx eax, word [rbx]
xor word [rbp - 0x60], ax
movzx eax, word [rbx + 2]
xor word [rbp - 0x5e], ax
movzx eax, word [rbx + 4]
xor word [rbp - 0x5c], ax
movzx eax, word [rbx + 6]
xor word [rbp - 0x5a], ax
movzx eax, word [rbx + 8]
xor word [rbp - 0x58], ax
movzx eax, word [rbx + 0xa]
xor word [rbp - 0x56], ax
movzx eax, word [rbx + 0xc]
xor word [rbp - 0x54], ax
movzx eax, word [rbx + 0xe]
sub rbx, 0x10
xor word [rbp - 0x52], ax
cmp esi, 1
jle 0x1400018b3
movdqa xmm4, xmmword [0x1400040f0]
dec esi
movdqa xmm5, xmmword [0x1400040c0]
movaps xmmword [rsp + 0x70], xmm6
movdqa xmm6, xmmword [0x1400040b0]
movaps xmmword [rsp + 0x60], xmm7
movdqa xmm7, xmmword [str.________pppppppp]
movaps xmmword [rsp + 0x50], xmm8
movdqa xmm8, xmmword [0x1400040d0]
movaps xmmword [rsp + 0x40], xmm9
movdqa xmm9, xmmword [0x1400040e0]
movaps xmmword [rsp + 0x30], xmm10
movdqa xmm10, xmmword [0x140004090]
nop word [rax + rax]
movdqu xmm2, xmmword [rbp - 0x60]
lea rcx, [rbp - 0x60]
mov edx, 1
movdqa xmm0, xmm8
movdqa xmm1, xmm4
andps xmm0, xmm2
andps xmm1, xmm2
psllw xmm1, 1
movdqa xmm3, xmm2
psrlw xmm3, 1
andps xmm3, xmm7
orps xmm3, xmm0
movdqa xmm0, xmm9
andps xmm0, xmm2
psrlw xmm3, 1
orps xmm3, xmm0
movdqa xmm0, xmm5
andps xmm0, xmm2
psrlw xmm3, 1
orps xmm1, xmm0
movdqa xmm0, xmm6
andps xmm0, xmm2
psllw xmm1, 1
orps xmm1, xmm0
movdqa xmm0, xmm10
psllw xmm1, 1
andps xmm0, xmm2
orps xmm3, xmm1
orps xmm3, xmm0
movdqu xmmword [rbp - 0x60], xmm3
call fcn.1400023a0
movzx eax, word [rbx]
lea rcx, [rbp - 0x60]
xor word [rbp - 0x60], ax
mov edx, 1
movzx eax, word [rbx + 2]
xor word [rbp - 0x5e], ax
movzx eax, word [rbx + 4]
xor word [rbp - 0x5c], ax
movzx eax, word [rbx + 6]
xor word [rbp - 0x5a], ax
movzx eax, word [rbx + 8]
xor word [rbp - 0x58], ax
movzx eax, word [rbx + 0xa]
xor word [rbp - 0x56], ax
movzx eax, word [rbx + 0xc]
xor word [rbp - 0x54], ax
movzx eax, word [rbx + 0xe]
sub rbx, 0x10
xor word [rbp - 0x52], ax
call fcn.1400020c0
sub rsi, 1
jne 0x1400017c0
movaps xmm10, xmmword [rsp + 0x30]
movaps xmm9, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x70]
movdqu xmm2, xmmword [rbp - 0x60]
lea rcx, [rbp - 0x60]
mov edx, 1
movdqa xmm3, xmmword [0x1400040f0]
movdqa xmm0, xmmword [0x1400040c0]
andps xmm3, xmm2
andps xmm0, xmm2
psllw xmm3, 1
orps xmm3, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmmword [0x1400040b0]
andps xmm0, xmm2
psrlw xmm1, 1
andps xmm1, xmmword [str.________pppppppp]
psllw xmm3, 1
orps xmm3, xmm0
movdqa xmm0, xmmword [0x1400040d0]
andps xmm0, xmm2
psllw xmm3, 1
orps xmm1, xmm0
movdqa xmm0, xmmword [0x1400040e0]
andps xmm0, xmm2
psrlw xmm1, 1
orps xmm1, xmm0
movdqa xmm0, xmmword [0x140004090]
psrlw xmm1, 1
andps xmm0, xmm2
orps xmm3, xmm1
orps xmm3, xmm0
movdqu xmmword [rbp - 0x60], xmm3
call fcn.1400023a0
movzx r10d, word [rbp - 0x60]
xor r10w, word [rbx]
movzx r11d, word [rbp - 0x5e]
xor r11w, word [rbx + 2]
movzx edx, word [rbp - 0x52]
xor dx, word [rbx + 0xe]
movzx esi, word [rbp - 0x5c]
xor si, word [rbx + 4]
movzx r14d, word [rbp - 0x5a]
xor r14w, word [rbx + 6]
movzx r15d, word [rbp - 0x58]
xor r15w, word [rbx + 8]
movzx r12d, word [rbp - 0x56]
xor r12w, word [rbx + 0xa]
movzx r13d, word [rbp - 0x54]
xor r13w, word [rbx + 0xc]
mov rbx, qword [rsp + 0xb0]
xor eax, eax
mov r9d, eax
mov word [rbp + 0x38], dx
nop dword [rax]
nop dword [rax + rax]
movzx r8d, dx
lea rdi, [rdi + 1]
movzx ecx, ax
movzx edx, r13w
shl cx, 2
inc eax
add cx, r9w
shr dx, cl
and dl, 1
shr r8w, cl
add r8b, r8b
or r8b, dl
movzx edx, r12w
shr dx, cl
add r8b, r8b
and dl, 1
or r8b, dl
movzx edx, r15w
shr dx, cl
add r8b, r8b
and dl, 1
or r8b, dl
movzx edx, r14w
shr dx, cl
add r8b, r8b
and dl, 1
or r8b, dl
movzx edx, si
shr dx, cl
add r8b, r8b
and dl, 1
or r8b, dl
movzx edx, r11w
shr dx, cl
add r8b, r8b
and dl, 1
or r8b, dl
movzx edx, r10w
shr dx, cl
add r8b, r8b
and dl, 1
or r8b, dl
movzx edx, word [rbp + 0x38]
mov byte [rdi - 1], r8b
cmp eax, 4
jl 0x1400019b0
inc r9d
mov eax, 0
cmp r9d, 4
jl 0x1400019b0
lea r11, [rsp + 0x80]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret