Function at 0x14007ea90
Capabilities:
Encode data using xor

Disassembly:
test r9, r9
je 0x14007ede7
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xc0
mov rax, qword [0x1402bf7c0]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rsi, r9
xor edi, edi
test rcx, rcx
cmovne edi, edx
lea rbx, [rbp - 0x59]
cmovne rbx, rcx
cmp r8d, 1
je 0x14007edbc
cmp r8d, 5
jne 0x14007eb09
lea rcx, [rbp - 0x49]
call fcn.1400cf5d0
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400cffa0
nop
lea rcx, [rbp - 0x49]
call fcn.1400cf600
jmp 0x14007edc9
cmp r8d, 7
jne 0x14007eb21
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14010e5a0
jmp 0x14007edc9
cmp r8d, 2
jne 0x14007eb39
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14010ed00
jmp 0x14007edc9
cmp r8d, 3
jne 0x14007eb51
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14010f460
jmp 0x14007edc9
cmp r8d, 0x14
jne 0x14007eb69
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140116110
jmp 0x14007edc9
cmp r8d, 0x15
jne 0x14007eb81
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140116280
jmp 0x14007edc9
cmp r8d, 0x16
jne 0x14007eb99
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140116400
jmp 0x14007edc9
cmp r8d, 0x13
jne 0x14007ebb1
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140115f90
jmp 0x14007edc9
cmp r8d, 0xf
je 0x14007edbc
cmp r8d, 0x1d
jne 0x14007ebf0
xor al, al
test edi, edi
je 0x14007ebe8
mov edx, edi
lea r8, [0x1402bbb20]
movzx ecx, byte [rbx]
movzx eax, al
xor rcx, rax
movzx eax, byte [rcx + r8]
lea rbx, [rbx + 1]
sub rdx, 1
jne 0x14007ebd0
mov byte [r9], al
jmp 0x14007edc9
cmp r8d, 0x1c
jne 0x14007ec48
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.140099ac0
mov edx, eax
mov r8d, eax
mov ecx, eax
cmp byte [0x1402b1a31], 0
je 0x14007ec2d
shr edx, 0x18
shr ecx, 8
shr eax, 0x10
mov byte [rsi], dl
mov byte [rsi + 1], al
mov byte [rsi + 2], cl
mov byte [rsi + 3], r8b
jmp 0x14007edc9
shr r8d, 0x18
shr ecx, 0x10
shr eax, 8
mov byte [rsi], dl
mov byte [rsi + 1], al
mov byte [rsi + 2], cl
mov byte [rsi + 3], r8b
jmp 0x14007edc9
cmp r8d, 4
jne 0x14007ec79
lea rcx, [rbp - 0x49]
call fcn.140105b40
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1401060b0
nop
lea rcx, [rbp - 0x49]
call fcn.140105b50
jmp 0x14007edc9
cmp r8d, 8
jne 0x14007ecbc
lea rcx, [rbp - 0x49]
call fcn.14010cdd0
nop
lea rcx, [rbp - 0x49]
call fcn.1400d0460
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.14010d790
mov rdx, rsi
lea rcx, [rbp - 0x49]
call fcn.14010cfa0
nop
lea rcx, [rbp - 0x49]
call fcn.14010ce00
jmp 0x14007edc9
cmp r8d, 0x1e
jne 0x14007ecd4
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14010df10
jmp 0x14007edc9
cmp r8d, 9
jne 0x14007ed05
lea rcx, [rbp - 0x49]
call fcn.140106380
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.140107950
nop
lea rcx, [rbp - 0x49]
call fcn.1401063a0
jmp 0x14007edc9
cmp r8d, 0xa
jne 0x14007ed36
lea rcx, [rbp - 0x49]
call fcn.1401079a0
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1401096e0
nop
lea rcx, [rbp - 0x49]
call fcn.1401079c0
jmp 0x14007edc9
cmp r8d, 0xb
jne 0x14007ed64
lea rcx, [rbp - 0x49]
call fcn.140109740
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.14010ae20
nop
lea rcx, [rbp - 0x49]
call fcn.140109760
jmp 0x14007edc9
cmp r8d, 0xc
jne 0x14007ed92
lea rcx, [rbp - 0x49]
call fcn.14010ae90
nop
mov r9, rsi
mov r8d, edi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.14010cd50
nop
lea rcx, [rbp - 0x49]
call fcn.14010aeb0
jmp 0x14007edc9
cmp r8d, 0x11
jne 0x14007eda7
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14010fd00
jmp 0x14007edc9
cmp r8d, 0x12
jne 0x14007edbc
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.14010fdf0
jmp 0x14007edc9
mov r8, rsi
mov edx, edi
mov rcx, rbx
call fcn.140105800
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1401da8c0
mov rbx, qword [rsp + 0xf0]
add rsp, 0xc0
pop rdi
pop rsi
pop rbp
ret