Function at 0x140002c70
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov rbx, rcx
mov esi, 0x18
mov ecx, esi
call fcn.1400108cc
xor ebp, ebp
lea ecx, [rsi + 0x1c]
mov rdi, rax
mov qword [rax], rbp
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rbp
call fcn.1400108cc
mov qword [rdi], rax
lea r8d, [rsi - 0x16]
xorps xmm0, xmm0
mov r9, 0xfffffffffffffffe
mov r10d, r8d
mov r11d, 4
lea rcx, [rax + 0x34]
mov r14d, 6
mov qword [rdi + 0x10], rcx
mov r15d, 8
movups xmmword [rax], xmm0
xor ecx, ecx
mov r12d, 0xa
movups xmmword [rax + 0x10], xmm0
mov r13d, 0xc
sub r9, rbx
movups xmmword [rax + 0x20], xmm0
mov dword [rax + 0x30], ecx
sub r10, rbx
add rax, 0x34
sub r11, rbx
mov qword [rdi + 8], rax
sub r14, rbx
lea rax, [rbx + 4]
sub r15, rbx
mov qword [rsp + 0xe8], rax
sub r12, rbx
mov eax, 0xe
sub r13, rbx
sub rax, rbx
sub rsi, rbx
mov qword [rsp + 0xf0], rax
mov eax, 0x10
sub rax, rbx
mov qword [rsp + 0xf8], rax
mov eax, 0x12
sub rax, rbx
mov qword [rsp + 0x20], rax
mov eax, 0x14
sub rax, rbx
mov qword [rsp + 0x28], rax
mov eax, 0x16
sub rax, rbx
mov qword [rsp + 0x30], rax
mov eax, 0x1a
sub rax, rbx
mov qword [rsp + 0x38], rax
mov eax, 0x1c
sub rax, rbx
mov qword [rsp + 0x40], rax
mov eax, 0x1e
sub rax, rbx
mov qword [rsp + 0x48], rax
mov eax, 0x20
sub rax, rbx
mov qword [rsp + 0x50], rax
mov eax, 0x22
sub rax, rbx
mov qword [rsp + 0x58], rax
mov eax, 0x24
sub rax, rbx
mov qword [rsp + 0x60], rax
mov eax, 0x26
sub rax, rbx
mov qword [rsp + 0x68], rax
mov eax, 0x28
sub rax, rbx
mov qword [rsp + 0x70], rax
mov eax, 0x2a
sub rax, rbx
mov qword [rsp + 0x78], rax
mov rcx, 0xfffffffffffffffc
mov eax, 0x2c
sub rax, rbx
mov qword [rsp + 0x80], rax
mov eax, 0x2e
sub rax, rbx
sub rcx, rbx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], rcx
movabs rax, 0x1648d50fc3201165
nop dword [rax]
mul rbp
add rcx, qword [rdi]
mov rax, rbp
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rbp, rax
mov rax, qword [rsp + 0xe8]
movzx eax, byte [rax - 4]
xor al, byte [rdx + rbp]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov rbp, qword [rsp + 0xe8]
mov word [rcx + rbp], dx
movsxd rcx, r8d
dec rcx
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp - 2]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
movsx edx, al
add rcx, r9
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp]
xor al, byte [rcx + rdx]
movsx ecx, al
mov rax, qword [rdi]
sub rax, rbx
mov word [rax + rbp], cx
movabs rax, 0x1648d50fc3201165
movsxd rcx, r8d
inc rcx
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 2]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
movsx edx, al
add rcx, r10
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 2
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 4]
lea rdx, [0x14004a600]
xor al, byte [rcx + rdx]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov rcx, qword [rdi]
add rcx, r11
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 3
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 6]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
movsx edx, al
add rcx, r14
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 4
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 8]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
movsx edx, al
add rcx, r15
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 5
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0xa]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
movsx edx, al
add rcx, r12
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 6
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0xc]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
add rcx, r13
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 7
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0xe]
xor al, byte [rcx + rdx]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov rcx, qword [rsp + 0xf0]
add rcx, qword [rdi]
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 8
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x10]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0xf8]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 9
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x12]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x20]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0xa
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x14]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x28]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0xb
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x16]
lea rdx, [0x14004a600]
xor al, byte [rcx + rdx]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov rcx, qword [rsp + 0x30]
add rcx, qword [rdi]
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0xc
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x18]
xor al, byte [rcx + rdx]
mov rcx, qword [rdi]
movsx edx, al
add rcx, rsi
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0xd
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x1a]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x38]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0xe
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x1c]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x40]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0xf
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x1e]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x48]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x10
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x20]
xor al, byte [rcx + rdx]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov rcx, qword [rsp + 0x50]
add rcx, qword [rdi]
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x11
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x22]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x58]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x12
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x24]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x60]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x13
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x26]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x68]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x14
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x28]
lea rdx, [0x14004a600]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x70]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x15
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x2a]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x78]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add rcx, 0x16
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x2c]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x80]
add rcx, qword [rdi]
movsx edx, al
movabs rax, 0x1648d50fc3201165
mov word [rcx + rbp], dx
movsxd rcx, r8d
add r8d, 0x1a
add rcx, 0x17
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [0x14004a600]
shr rax, 8
imul rax, rax, 0x1d7
sub rcx, rax
movzx eax, byte [rbp + 0x2e]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x88]
add rcx, qword [rdi]
movsx edx, al
lea eax, [r8 - 2]
mov word [rcx + rbp], dx
add rbp, 0x34
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0xe8], rbp
movsxd rbp, eax
movabs rax, 0x1648d50fc3201165
cmp rbp, 0x1a
jb 0x140002e20
mov rbx, qword [rsp + 0xe0]
mov rax, rdi
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret