Function at 0x1402baa20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push r13
push r14
push r15
sub rsp, 0x38
cmp byte [rcx + 0x1b], 0
mov r14, r8
mov r13, rdx
mov rbx, rcx
jne 0x1402bab08
xor r8d, r8d
cmp dword [rcx + 4], r8d
jle 0x1402baafd
xor r11d, r11d
mov r9, rdx
xor r10d, r10d
nop dword [rax]
cmp byte [rbx + 0x1b], 0
jne 0x1402baa70
movzx eax, byte [r9]
sub al, 0xb
cmp al, 0xf3
ja 0x1402baae9
mov rax, qword [rbx + 0x28]
mov ecx, dword [r10 + rax]
mov edx, ecx
shr edx, 1
lea eax, [rcx + rcx]
xor edx, eax
lea eax, [rcx + rcx]
and edx, 0x55555555
xor edx, eax
mov ecx, edx
shr ecx, 2
lea eax, [rdx*4]
xor ecx, eax
lea eax, [rdx*4]
and ecx, 0x33333333
xor ecx, eax
mov eax, ecx
mov edx, ecx
shl ecx, 4
shr edx, 4
shl eax, 4
xor edx, eax
and edx, 0xf0f0f0f
xor edx, ecx
mov eax, edx
mov ecx, edx
shr ecx, 8
shl eax, 8
xor ecx, eax
shl edx, 8
mov rax, qword [rbx + 0x830]
and ecx, 0xff00ff
xor ecx, edx
rol ecx, 0x10
mov dword [r11 + rax], ecx
add r11, 4
inc r8d
inc r9
add r10, 4
cmp r8d, dword [rbx + 4]
jl 0x1402baa60
mov eax, dword [rbx + 0x840]
jmp 0x1402babad
mov eax, dword [rcx + 0x840]
xor r9d, r9d
test eax, eax
jle 0x1402babad
xor r8d, r8d
nop dword [rax]
mov rax, qword [rbx + 0x28]
lea r8, [r8 + 4]
inc r9d
mov ecx, dword [r8 + rax - 4]
mov edx, ecx
shr edx, 1
lea eax, [rcx + rcx]
xor edx, eax
lea eax, [rcx + rcx]
and edx, 0x55555555
xor edx, eax
mov ecx, edx
shr ecx, 2
lea eax, [rdx*4]
xor ecx, eax
lea eax, [rdx*4]
and ecx, 0x33333333
xor ecx, eax
mov eax, ecx
mov edx, ecx
shl ecx, 4
shl eax, 4
shr edx, 4
xor edx, eax
and edx, 0xf0f0f0f
xor edx, ecx
mov eax, edx
mov ecx, edx
shr ecx, 8
shl eax, 8
xor ecx, eax
shl edx, 8
mov rax, qword [rbx + 0x830]
and ecx, 0xff00ff
xor ecx, edx
rol ecx, 0x10
mov dword [r8 + rax - 4], ecx
mov eax, dword [rbx + 0x840]
cmp r9d, eax
jl 0x1402bab20
mov rcx, qword [rbx + 0x830]
lea r9, [0x1402e4fa0]
movsxd rdx, eax
mov r8d, 4
call fcn.14033c140
movsxd rcx, dword [rbx + 0x840]
mov rax, qword [rbx + 0x830]
mov dword [rax + rcx*4], 0xffffffff
cmp byte [rbx + 0x1b], 0
je 0x1402babec
mov eax, dword [rbx + 0x840]
jmp 0x1402babef
mov eax, dword [rbx + 4]
xor r15d, r15d
movsxd r8, eax
mov qword [rsp + 0x60], r8
test eax, eax
jle 0x1402bad4e
mov qword [rsp + 0x30], rsi
xor esi, esi
mov qword [rsp + 0x28], rdi
mov rdi, r14
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x68], rbp
nop dword [rax + rax]
movzx r12d, byte [rbx + 0x1b]
test r12b, r12b
je 0x1402bac33
mov eax, dword [rdi]
movzx ebp, byte [rax + r13]
jmp 0x1402bac43
movzx ebp, byte [rsi + r13]
lea eax, [rbp - 0xb]
cmp al, 0xf3
ja 0x1402bad27
mov rax, qword [rbx + 0x28]
xor r10d, r10d
sub rax, r14
mov ecx, dword [rax + rdi]
mov edx, ecx
shr edx, 1
lea eax, [rcx + rcx]
xor edx, eax
lea eax, [rcx + rcx]
and edx, 0x55555555
xor edx, eax
mov ecx, edx
shr ecx, 2
lea eax, [rdx*4]
xor ecx, eax
lea eax, [rdx*4]
and ecx, 0x33333333
xor ecx, eax
mov edx, ecx
mov eax, ecx
shr edx, 4
shl eax, 4
xor edx, eax
shl ecx, 4
and edx, 0xf0f0f0f
xor edx, ecx
mov r11d, edx
mov eax, edx
shr r11d, 8
shl eax, 8
xor r11d, eax
shl edx, 8
mov eax, dword [rbx + 0x840]
and r11d, 0xff00ff
xor r11d, edx
rol r11d, 0x10
cmp eax, 1
jle 0x1402bacfe
mov r14, qword [rbx + 0x830]
nop word [rax + rax]
mov r8d, eax
shr r8d, 1
sub eax, r8d
lea r9d, [r8 + r10]
movsxd rcx, r9d
cmp dword [r14 + rcx*4], r11d
cmova r9d, r10d
cmova eax, r8d
mov r10d, r9d
cmp eax, 1
jg 0x1402bacd0
mov r8, qword [rsp + 0x60]
mov r14, qword [rsp + 0x70]
movsxd rdx, r10d
test r12b, r12b
je 0x1402bad1c
mov eax, dword [rdi]
mov rcx, qword [rbx + 0x838]
mov dword [rcx + rdx*4], eax
mov rax, qword [rbx + 8]
mov byte [rdx + rax], bpl
jmp 0x1402bad27
mov rax, qword [rbx + 0x838]
mov dword [rax + rdx*4], r15d
inc r15d
inc rsi
add rdi, 4
cmp rsi, r8
jl 0x1402bac20
mov r12, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x68]
add rsp, 0x38
pop r15
pop r14
pop r13
pop rbx
ret