Function at 0x1400b8170
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rdi
push r12
push r14
push r15
sub rsp, 0x48
xor r14d, r14d
mov rbp, r9
mov r15, r8
mov r12, rdx
mov rbx, rcx
test rdx, rdx
je 0x1400b81db
mov r10, r8
mov rcx, r9
sub r10, r9
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rbx + 0x80]
cmp rdx, 0x40
jae 0x1400b81db
movzx eax, byte [r10 + rcx]
inc r14
xor al, byte [rdx + rbx + 0x40]
mov byte [rcx], al
inc rcx
inc qword [rbx + 0x80]
sub r12, 1
jne 0x1400b81b0
lea rdi, [rbx + 0x40]
cmp r12, 0x40
jb 0x1400b8412
mov rbp, r12
mov qword [rsp + 0x80], rsi
shr rbp, 6
lea rsi, [r14 + r9]
mov qword [rsp + 0x40], r13
mov rax, r8
sub rax, r9
mov qword [rsp + 0x20], rbp
mov qword [rsp + 0x28], rax
mov r13d, 8
imul rax, rbp, 0xffffffffffffffc0
add r12, rax
mov rax, rbp
shl rax, 6
add r14, rax
mov qword [rsp + 0x88], r12
mov r12, qword [rsp + 0x28]
sub r13, rdi
mov qword [rsp + 0x30], r14
nop dword [rax]
mov rdx, rdi
mov rcx, rbx
call fcn.1400b7c50
inc dword [rbx + 0x30]
lea r11, [r12 + rsi]
mov r8, r11
xor eax, eax
sub r8, rdi
mov r9, rsi
sub r9, rdi
mov rdx, rdi
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [r8 + rdx]
add rax, 8
xor rcx, qword [rdx]
mov qword [r9 + rdx], rcx
lea rdx, [rdx + 8]
lea rcx, [rdx + r13]
cmp rcx, 0x40
jbe 0x1400b8270
mov edx, 0x40
sub rdx, rax
cmp rax, 0x40
jae 0x1400b83d5
cmp rdx, 8
jb 0x1400b83b3
lea rbp, [rax + rsi]
lea rcx, [rdi + 0x3f]
lea r10, [rsi + 0x3f]
lea r14, [rax + rdi]
cmp rbp, rcx
ja 0x1400b82c7
cmp r10, r14
jae 0x1400b83ae
lea rcx, [r11 + 0x3f]
lea r15, [rax + r11]
cmp rbp, rcx
ja 0x1400b82dd
cmp r10, r15
jae 0x1400b83ae
cmp rdx, 0x40
jb 0x1400b836a
mov r10, rdx
mov r11d, 0x40
and r10d, 0x3f
sub r11, r10
lea rcx, [r14 + 0x10]
nop dword [rax + rax]
movdqu xmm0, xmmword [rcx - 0x10]
add rax, 0x40
movdqu xmm1, xmmword [r8 + rcx - 0x10]
movdqu xmm2, xmmword [rcx]
lea rcx, [rcx + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [r8 + rcx - 0x40]
movdqu xmmword [r9 + rcx - 0x50], xmm1
xorps xmm2, xmm0
movdqu xmm0, xmmword [rcx - 0x30]
movdqu xmm1, xmmword [r8 + rcx - 0x30]
movdqu xmmword [r9 + rcx - 0x40], xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rcx - 0x20]
movdqu xmm2, xmmword [r8 + rcx - 0x20]
movdqu xmmword [r9 + rcx - 0x30], xmm1
xorps xmm2, xmm0
movdqu xmmword [r9 + rcx - 0x20], xmm2
cmp rax, r11
jb 0x1400b8300
cmp r10, 8
jb 0x1400b83a1
and edx, 7
mov r10d, 0x40
sub r10, rdx
lea rcx, [rax + rdi]
nop word [rax + rax]
movq xmm1, qword [rcx + r8]
add rax, 8
movq xmm0, qword [rcx]
lea rcx, [rcx + 8]
xorps xmm1, xmm0
movq qword [r9 + rcx - 8], xmm1
cmp rax, r10
jb 0x1400b8380
mov rbp, qword [rsp + 0x20]
cmp rax, 0x40
jae 0x1400b83d5
jmp 0x1400b83b3
mov rbp, qword [rsp + 0x20]
mov edx, 0x40
lea rcx, [rax + rdi]
sub rdx, rax
nop
movzx eax, byte [rcx + r8]
xor al, byte [rcx]
mov byte [r9 + rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400b83c0
add rsi, 0x40
sub rbp, 1
mov qword [rsp + 0x20], rbp
jne 0x1400b8240
mov r13, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x80]
mov r12, qword [rsp + 0x88]
mov r14, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x98]
mov r15, qword [rsp + 0x90]
test r12, r12
je 0x1400b843f
mov rdx, rdi
mov rcx, rbx
call fcn.1400b7c50
inc dword [rbx + 0x30]
lea rdx, [r14 + r15]
lea rcx, [r14 + rbp]
mov r9, r12
mov r8, rdi
call fcn.140081ae0
mov qword [rbx + 0x80], r12
xor eax, eax
add rsp, 0x48
pop r15
pop r14
pop r12
pop rdi
pop rbp
pop rbx
ret