Function at 0x14008ccd0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
nop
push r15
mov qword [rsp], rdi
nop
sub rsp, 0xf927428
add rsp, 0xf927408
xchg rdx, r14
mov rdi, r14
xchg rdx, r14
xchg rsp, rcx
mov rbx, rsp
xchg rsp, rcx
test rcx, rcx
mov dword [rsp - 0x20], edi
je 0x14008d144
test rdx, rdx
je 0x14008d144
mov rcx, qword [rcx + 0x48]
mov dword [rsp - 0x2c], 0x424e6d7d
cmp rcx, 0x80
jae 0x14008d144
lea rax, [rcx*8]
mov qword [rsp + 0x30], rsi
mov dword [rsp - 0x30], ebp
add qword [rbx], rax
mov byte [rcx + rbx + 0x50], 0x2a
sub byte [rcx + rbx + 0x50], 7
add byte [rcx + rbx + 0x50], 0x4d
xor byte [rcx + rbx + 0x50], 0xf0
mov rax, qword [rbx + 0x48]
mov dword [rsp - 0xc], 0x62dc96ab
inc rax
xchg rbp, rax
mov qword [rbx + 0x48], rbp
xchg rbp, rax
cmp rax, 0x70
jbe 0x14008cdfc
mov rbp, rbp
cmp rax, 0x80
jae 0x14008cdcf
nop dword [rax]
mov dword [rsp - 0x40], 0x7aa5cb63
nop word [rax + rax]
mov byte [rax + rbx + 0x50], 0x1c
add byte [rax + rbx + 0x50], 0x30
sub byte [rax + rbx + 0x50], 3
add byte [rax + rbx + 0x50], 0x1c
sub byte [rax + rbx + 0x50], 0x65
mov rax, qword [rbx + 0x48]
inc rax
xchg rdi, rax
mov qword [rbx + 0x48], rdi
xchg rdi, rax
cmp rax, 0x80
jb 0x14008cd9b
lea rsi, [rbx + 0x50]
xchg r11, r11
xchg rcx, rdx
mov rdx, rbx
xchg rcx, rdx
xchg rsi, r11
mov rdx, r11
xchg rsi, r11
call fcn.14008b860
xor eax, eax
mov qword [rbx + 0x48], rax
mov dword [rsp - 0x20], esp
jmp 0x14008ce11
lea rsi, [rbx + 0x50]
mov dword [rsp - 0x24], edi
nop dword [rax]
nop word [rax + rax]
mov byte [rax + rbx + 0x50], 3
add byte [rax + rbx + 0x50], 0x21
xor byte [rax + rbx + 0x50], 0x11
xor byte [rax + rbx + 0x50], 0x60
sub byte [rax + rbx + 0x50], 0x55
mov rax, qword [rbx + 0x48]
mov dword [rsp - 0x24], ebp
inc rax
mov qword [rbx + 0x48], rax
cmp rax, 0x78
jb 0x14008ce11
mov dword [rsp - 0x28], 0x4221a3c7
movzx eax, byte [rbx + 7]
xchg r12, rsi
mov rdx, r12
xchg rsi, r12
mov byte [rbx + 0xc8], al
mov rcx, rbx
mov r9, r9
movzx eax, byte [rbx + 6]
mov byte [rbx + 0xc9], al
movzx eax, byte [rbx + 5]
mov byte [rbx + 0xca], al
mov dword [rsp - 0x14], ebp
movzx eax, byte [rbx + 4]
mov byte [rbx + 0xcb], al
movzx eax, byte [rbx + 3]
mov rsi, rsi
mov byte [rbx + 0xcc], al
movzx eax, byte [rbx + 2]
mov byte [rbx + 0xcd], al
movzx eax, byte [rbx + 1]
mov r15, r15
mov byte [rbx + 0xce], al
movzx eax, byte [rbx]
mov byte [rbx + 0xcf], al
call fcn.14008b860
mov dword [rsp - 0x44], 0x637e1033
movzx eax, byte [rbx + 0xf]
mov byte [rdi], al
movzx eax, byte [rbx + 0xe]
mov byte [rdi + 1], al
mov rdi, rdi
movzx eax, byte [rbx + 0xd]
mov byte [rdi + 2], al
movzx eax, byte [rbx + 0xc]
mov byte [rdi + 3], al
mov dword [rsp - 0x3c], 0x35e7a24f
movzx eax, byte [rbx + 0xb]
mov byte [rdi + 4], al
movzx eax, byte [rbx + 0xa]
mov byte [rdi + 5], al
mov dword [rsp - 0x44], esi
movzx eax, byte [rbx + 9]
mov byte [rdi + 6], al
movzx eax, byte [rbx + 8]
mov dword [rsp - 0x20], edi
mov byte [rdi + 7], al
movzx eax, byte [rbx + 0x17]
mov byte [rdi + 8], al
mov dword [rsp - 0x10], esi
movzx eax, byte [rbx + 0x16]
mov byte [rdi + 9], al
movzx eax, byte [rbx + 0x15]
mov dword [rsp - 0x18], ebx
mov byte [rdi + 0xa], al
movzx eax, byte [rbx + 0x14]
mov byte [rdi + 0xb], al
movzx eax, byte [rbx + 0x13]
mov dword [rsp - 0x1c], ecx
mov byte [rdi + 0xc], al
movzx eax, byte [rbx + 0x12]
mov byte [rdi + 0xd], al
movzx eax, byte [rbx + 0x11]
xchg r12, r12
mov byte [rdi + 0xe], al
movzx eax, byte [rbx + 0x10]
mov byte [rdi + 0xf], al
movzx eax, byte [rbx + 0x1f]
mov dword [rsp - 0x2c], ebp
mov byte [rdi + 0x10], al
movzx eax, byte [rbx + 0x1e]
mov byte [rdi + 0x11], al
movzx eax, byte [rbx + 0x1d]
mov dword [rsp - 0x40], edi
mov byte [rdi + 0x12], al
movzx eax, byte [rbx + 0x1c]
mov byte [rdi + 0x13], al
mov dword [rsp - 0x30], 0x4bde9722
movzx eax, byte [rbx + 0x1b]
mov byte [rdi + 0x14], al
movzx eax, byte [rbx + 0x1a]
mov byte [rdi + 0x15], al
mov r10, r10
movzx eax, byte [rbx + 0x19]
mov byte [rdi + 0x16], al
movzx eax, byte [rbx + 0x18]
mov byte [rdi + 0x17], al
mov dword [rsp - 0x14], esi
movzx eax, byte [rbx + 0x27]
mov byte [rdi + 0x18], al
movzx eax, byte [rbx + 0x26]
mov dword [rsp - 0xc], edi
mov byte [rdi + 0x19], al
movzx eax, byte [rbx + 0x25]
mov byte [rdi + 0x1a], al
mov dword [rsp - 0xc], 0x3cbba1cc
movzx eax, byte [rbx + 0x24]
mov byte [rdi + 0x1b], al
movzx eax, byte [rbx + 0x23]
mov byte [rdi + 0x1c], al
mov rbx, rbx
movzx eax, byte [rbx + 0x22]
mov byte [rdi + 0x1d], al
movzx eax, byte [rbx + 0x21]
mov byte [rdi + 0x1e], al
mov dword [rsp - 0x40], ecx
movzx eax, byte [rbx + 0x20]
mov byte [rdi + 0x1f], al
movzx eax, byte [rbx + 0x2f]
mov byte [rdi + 0x20], al
mov dword [rsp - 0x40], 0x372543c5
movzx eax, byte [rbx + 0x2e]
mov byte [rdi + 0x21], al
movzx eax, byte [rbx + 0x2d]
mov dword [rsp - 0x2c], 0x7a795c9f
mov byte [rdi + 0x22], al
movzx eax, byte [rbx + 0x2c]
mov byte [rdi + 0x23], al
movzx eax, byte [rbx + 0x2b]
mov r10, r10
mov byte [rdi + 0x24], al
movzx eax, byte [rbx + 0x2a]
mov byte [rdi + 0x25], al
movzx eax, byte [rbx + 0x29]
mov rsp, rsp
mov byte [rdi + 0x26], al
movzx eax, byte [rbx + 0x28]
mov byte [rdi + 0x27], al
movzx eax, byte [rbx + 0x37]
mov dword [rsp - 0x10], esi
mov byte [rdi + 0x28], al
movzx eax, byte [rbx + 0x36]
mov byte [rdi + 0x29], al
mov dword [rsp - 0x40], edx
movzx eax, byte [rbx + 0x35]
mov byte [rdi + 0x2a], al
movzx eax, byte [rbx + 0x34]
mov dword [rsp - 0xc], edx
mov byte [rdi + 0x2b], al
movzx eax, byte [rbx + 0x33]
mov byte [rdi + 0x2c], al
movzx eax, byte [rbx + 0x32]
mov r10, r10
mov byte [rdi + 0x2d], al
movzx eax, byte [rbx + 0x31]
mov byte [rdi + 0x2e], al
mov dword [rsp - 0x44], 0x202b5c90
movzx eax, byte [rbx + 0x30]
mov byte [rdi + 0x2f], al
movzx eax, byte [rbx + 0x3f]
mov dword [rsp - 0x28], ebx
xchg rdx, rsi
mov rdx, qword [rsp + 0x30]
xchg rsi, rdx
mov byte [rdi + 0x30], al
mov dword [rsp - 0x38], 0x7e5d898
movzx eax, byte [rbx + 0x3e]
mov byte [rdi + 0x31], al
movzx eax, byte [rbx + 0x3d]
xchg rbx, rbx
mov byte [rdi + 0x32], al
movzx eax, byte [rbx + 0x3c]
mov byte [rdi + 0x33], al
movzx eax, byte [rbx + 0x3b]
mov dword [rsp - 0x20], 0x44774728
mov byte [rdi + 0x34], al
movzx eax, byte [rbx + 0x3a]
mov byte [rdi + 0x35], al
movzx eax, byte [rbx + 0x39]
mov r12, r12
mov byte [rdi + 0x36], al
movzx eax, byte [rbx + 0x38]
mov byte [rdi + 0x37], al
movzx eax, byte [rbx + 0x47]
xchg r13, r13
mov byte [rdi + 0x38], al
movzx eax, byte [rbx + 0x46]
mov byte [rdi + 0x39], al
mov dword [rsp - 0x30], 0x520367fb
movzx eax, byte [rbx + 0x45]
mov byte [rdi + 0x3a], al
movzx eax, byte [rbx + 0x44]
mov byte [rdi + 0x3b], al
mov dword [rsp - 0x14], ecx
movzx eax, byte [rbx + 0x43]
mov byte [rdi + 0x3c], al
movzx eax, byte [rbx + 0x42]
mov byte [rdi + 0x3d], al
mov dword [rsp - 0x44], ebx
movzx eax, byte [rbx + 0x41]
mov byte [rdi + 0x3e], al
movzx eax, byte [rbx + 0x40]
mov byte [rdi + 0x3f], al
mov rbp, rbp
xor eax, eax
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
mov dword [rsp - 0x40], edi
ret
xchg rdx, rbx
mov rdx, qword [rsp + 0x38]
xchg rbx, rdx
mov eax, 0x6ac88bad
add eax, 0x14ae6fff
xor eax, 0x50606a48
xor eax, 0x2f1691e5
sub rsp, 0xffffffffffffffe0
nop
add rsp, 8
mov rdi, qword [rsp - 8]
ret