Function at 0x14008fe90
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x20
mov eax, r8d
mov esi, r8d
mov r14, rdx
mov rbx, rcx
mov ebp, 0xa
sub eax, 0x80
je 0x14008fee3
sub eax, 0x40
je 0x14008fedb
cmp eax, 0x40
je 0x14008fed3
lea eax, [rbp - 0x2a]
jmp 0x140090178
mov dword [rcx], 0xe
jmp 0x14008fee5
mov dword [rcx], 0xc
jmp 0x14008fee5
mov dword [rcx], ebp
xor edi, edi
cmp dword [0x14025d408], edi
jne 0x14008fefe
call fcn.14008fb9c
mov dword [0x14025d408], 1
shr esi, 5
lea r9, [rbx + 0x10]
mov qword [rbx + 8], rdi
test esi, esi
je 0x14008ff5d
mov r10, r9
lea edx, [rdi*4]
lea eax, [rdx + 3]
movzx r8d, byte [rax + r14]
lea eax, [rdx + 2]
movzx eax, byte [rax + r14]
shl r8d, 8
or r8d, eax
lea eax, [rdx + 1]
shl r8d, 8
movzx eax, byte [rax + r14]
or r8d, eax
lea eax, [rdi*4]
shl r8d, 8
inc edi
movzx eax, byte [rax + r14]
or r8d, eax
mov dword [r10], r8d
lea r10, [r10 + 4]
cmp edi, esi
jb 0x14008ff10
cmp dword [rbx], ebp
je 0x1400900f6
cmp dword [rbx], 0xc
je 0x14009005c
cmp dword [rbx], 0xe
jne 0x140090176
mov r11d, dword [r9]
lea r8, [r9 + 0x1e]
lea r9, [0x14025d410]
mov ebx, 7
lea r10, [0x14025da10]
movzx eax, byte [r8 - 2]
movzx edx, byte [rax + r9]
movzx eax, byte [r8 + 1]
shl edx, 8
movzx ecx, byte [rax + r9]
movzx eax, byte [r8]
xor edx, ecx
shl edx, 8
lea r8, [r8 + 0x20]
movzx ecx, byte [rax + r9]
movzx eax, byte [r8 - 0x21]
xor edx, ecx
shl edx, 8
movzx ecx, byte [rax + r9]
xor edx, ecx
xor edx, dword [r10]
lea r10, [r10 + 4]
xor edx, r11d
mov eax, edx
mov dword [r8 - 0x1e], edx
xor eax, dword [r8 - 0x3a]
mov r11d, edx
mov dword [r8 - 0x1a], eax
xor eax, dword [r8 - 0x36]
mov dword [r8 - 0x16], eax
xor eax, dword [r8 - 0x32]
mov dword [r8 - 0x12], eax
movzx eax, byte [r8 - 0xf]
movzx edx, byte [rax + r9]
movzx eax, byte [r8 - 0x10]
shl edx, 8
movzx ecx, byte [rax + r9]
movzx eax, byte [r8 - 0x11]
xor edx, ecx
shl edx, 8
movzx ecx, byte [rax + r9]
movzx eax, byte [r8 - 0x12]
xor edx, ecx
shl edx, 8
movzx ecx, byte [rax + r9]
xor edx, ecx
xor edx, dword [r8 - 0x2e]
mov dword [r8 - 0xe], edx
xor edx, dword [r8 - 0x2a]
mov dword [r8 - 0xa], edx
xor edx, dword [r8 - 0x26]
mov dword [r8 - 6], edx
xor edx, dword [r8 - 0x22]
mov dword [r8 - 2], edx
sub rbx, 1
jne 0x14008ff91
jmp 0x140090176
mov r11d, dword [r9]
lea r8, [r9 + 0x16]
lea r9, [0x14025d410]
mov ebx, 8
lea r10, [0x14025da10]
movzx eax, byte [r8 - 2]
movzx edx, byte [rax + r9]
movzx eax, byte [r8 + 1]
shl edx, 8
movzx ecx, byte [rax + r9]
movzx eax, byte [r8]
xor edx, ecx
shl edx, 8
lea r8, [r8 + 0x18]
movzx ecx, byte [rax + r9]
movzx eax, byte [r8 - 0x19]
xor edx, ecx
shl edx, 8
movzx ecx, byte [rax + r9]
xor edx, ecx
xor edx, dword [r10]
lea r10, [r10 + 4]
xor edx, r11d
mov eax, edx
mov dword [r8 - 0x16], edx
xor eax, dword [r8 - 0x2a]
mov r11d, edx
mov dword [r8 - 0x12], eax
xor eax, dword [r8 - 0x26]
mov dword [r8 - 0xe], eax
xor eax, dword [r8 - 0x22]
mov dword [r8 - 0xa], eax
xor eax, dword [r8 - 0x1e]
mov dword [r8 - 6], eax
xor eax, dword [r8 - 0x1a]
mov dword [r8 - 2], eax
sub rbx, 1
jne 0x140090076
jmp 0x140090176
mov r11d, dword [r9]
lea r8, [r9 + 0xe]
lea r9, [0x14025d410]
lea r10, [0x14025da10]
movzx eax, byte [r8 - 2]
movzx edx, byte [rax + r9]
movzx eax, byte [r8 + 1]
shl edx, 8
movzx ecx, byte [rax + r9]
movzx eax, byte [r8]
xor edx, ecx
shl edx, 8
lea r8, [r8 + 0x10]
movzx ecx, byte [rax + r9]
movzx eax, byte [r8 - 0x11]
xor edx, ecx
shl edx, 8
movzx ecx, byte [rax + r9]
xor edx, ecx
xor edx, dword [r10]
lea r10, [r10 + 4]
xor edx, r11d
mov eax, edx
mov dword [r8 - 0xe], edx
xor eax, dword [r8 - 0x1a]
mov r11d, edx
mov dword [r8 - 0xa], eax
xor eax, dword [r8 - 0x16]
mov dword [r8 - 6], eax
xor eax, dword [r8 - 0x12]
mov dword [r8 - 2], eax
sub rbp, 1
jne 0x14009010b
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret