Function at 0x14008d0c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov eax, dword [rcx]
mov r15, r15
lea rbx, [0x140000000]
mov r10, rdx
mov r11, rcx
mov dword [rsp - 0x18], edi
cmp r8, 7
ja case.default.0x14008d0f4
mov r9d, dword [rbx + r8*4 + 0x8d3f9]
add r9, rbx
mov dword [rsp - 0x30], edi
jmp r9
xchg rsp, rcx
mov rsp, r10
xchg rsp, rcx
and ecx, 3
mov r14, r14
sub r8, rcx
sub rcx, 1
je 0x14008d179
sub rcx, 1
mov dword [rsp - 0x28], esi
je 0x14008d157
cmp rcx, 1
jne 0x14008d1a7
mov dword [rsp - 0x40], 0x7247666c
movzx edx, byte [r10]
mov ecx, eax
xor rdx, rcx
shr eax, 6
shr eax, 2
movzx ecx, dl
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
mov dword [rsp - 0x34], 0x2cfab2c3
movzx edx, byte [r10]
mov ecx, eax
xor rdx, rcx
mov rsp, rsp
shr eax, 7
shr eax, 1
movzx ecx, dl
xor eax, dword [rbx + rcx*4 + 0x140c20]
mov dword [rsp - 0x34], esp
inc r10
movzx edx, byte [r10]
mov ecx, eax
xor rdx, rcx
mov dword [rsp - 0x34], 0x738d8166
shr eax, 1
shr eax, 2
shr eax, 5
movzx ecx, dl
mov dword [rsp - 0x28], 0x1a00acfa
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
xchg r10, r9
mov r10, r8
xchg r10, r9
shr r9, 2
shr r9, 1
test r9, r9
mov r14, r14
je 0x14008d293
nop word [rax + rax]
xor eax, dword [r10]
xchg rcx, rcx
movzx edx, al
shr eax, 5
shr eax, 3
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov r9, r9
movzx edx, al
shr eax, 5
shr eax, 2
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
movzx edx, al
shr eax, 3
shr eax, 4
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
movzx edx, al
shr eax, 5
shr eax, 1
shr eax, 1
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
xchg r14, r14
xor eax, dword [r10 + 4]
nop
add r10, 0x29fe7efd
sub r10, 0x29fe7ef5
movzx edx, al
shr eax, 6
shr eax, 1
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov dword [rsp - 0x28], 0x116ec350
movzx edx, al
shr eax, 6
shr eax, 1
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
movzx edx, al
shr eax, 1
shr eax, 1
shr eax, 4
shr eax, 1
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
movzx edx, al
mov rsi, rsi
shr eax, 3
shr eax, 3
shr eax, 1
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov dword [rsp - 0x28], ecx
sub r9, 1
jne 0x14008d1c9
and r8d, 7
jmp 0x14008d0db
movzx edx, byte [r10]
mov ecx, eax
mov rdx, rdx
xor rdx, rcx
shr eax, 5
shr eax, 1
shr eax, 1
shr eax, 1
movzx ecx, dl
xchg rdx, rdx
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
movzx edx, byte [r10]
mov dword [rsp - 0x2c], ebp
mov ecx, eax
xor rdx, rcx
shr eax, 6
shr eax, 1
shr eax, 1
movzx ecx, dl
mov r8, r8
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
movzx edx, byte [r10]
mov ecx, eax
mov dword [rsp - 0x2c], 0x2835bc41
xor rdx, rcx
shr eax, 3
shr eax, 3
shr eax, 1
shr eax, 1
movzx ecx, dl
xchg r9, r9
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
xor eax, dword [r10]
movzx edx, al
mov dword [rsp - 0x14], 0x7ac7876d
shr eax, 2
shr eax, 6
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov r9, r9
movzx edx, al
shr eax, 2
shr eax, 6
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov dword [rsp - 0xc], 0x6f215ece
movzx edx, al
shr eax, 2
shr eax, 2
shr eax, 1
shr eax, 2
shr eax, 1
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov dword [rsp - 0x1c], 0x4824ab43
movzx edx, al
shr eax, 8
xor eax, dword [rbx + rdx*4 + 0x140c20]
mov dword [r11], eax
mov r8, r8
xchg r15, rbx
mov r15, qword [rsp + 8]
xchg r15, rbx
ret
movzx edx, byte [r10]
xchg r15, r15
mov ecx, eax
xor rdx, rcx
shr eax, 7
shr eax, 1
movzx ecx, dl
xchg r15, r15
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
movzx edx, byte [r10]
mov ecx, eax
mov r14, r14
xor rdx, rcx
shr eax, 2
shr eax, 2
shr eax, 2
shr eax, 1
shr eax, 1
movzx ecx, dl
xchg r14, r14
xor eax, dword [rbx + rcx*4 + 0x140c20]
inc r10
movzx edx, byte [r10]
xchg rbx, rbx
mov ecx, eax
xor rdx, rcx
shr eax, 1
shr eax, 6
shr eax, 1
movzx ecx, dl
xor eax, dword [rbx + rcx*4 + 0x140c20]
xchg rcx, rcx
mov rbx, qword [rsp + 8]
mov dword [r11], eax
ret