Function at 0x14005e400
Capabilities:
Encode data using xor

Disassembly:
test r9, r9
je 0x14005e75e
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xc0
mov rax, qword [0x140353c70]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rdi, r9
xor esi, esi
test rcx, rcx
cmovne esi, edx
lea rbx, [rbp - 0x59]
cmovne rbx, rcx
cmp r8d, 1
je 0x14005e733
cmp r8d, 5
jne 0x14005e479
lea rcx, [rbp - 0x49]
call fcn.1400750b0
nop
mov r9, rdi
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.140075a80
nop
lea rcx, [rbp - 0x49]
call fcn.1400750e0
jmp 0x14005e740
cmp r8d, 7
jne 0x14005e491
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400b7c20
jmp 0x14005e740
cmp r8d, 2
jne 0x14005e4a9
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400b8370
jmp 0x14005e740
cmp r8d, 3
jne 0x14005e4c1
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400b8ac0
jmp 0x14005e740
cmp r8d, 0x14
jne 0x14005e4d9
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400c0530
jmp 0x14005e740
cmp r8d, 0x15
jne 0x14005e4f1
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400c06a0
jmp 0x14005e740
cmp r8d, 0x16
jne 0x14005e509
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400c0820
jmp 0x14005e740
cmp r8d, 0x13
jne 0x14005e521
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400c03b0
jmp 0x14005e740
cmp r8d, 0xf
je 0x14005e733
cmp r8d, 0x1d
jne 0x14005e560
xor al, al
test esi, esi
je 0x14005e558
mov edx, esi
lea r8, [0x140345d60]
movzx ecx, byte [rbx]
movzx eax, al
xor rcx, rax
movzx eax, byte [rcx + r8]
lea rbx, [rbx + 1]
sub rdx, 1
jne 0x14005e540
mov byte [r9], al
jmp 0x14005e740
cmp r8d, 0x1c
jne 0x14005e5bf
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.1400ac120
mov ecx, eax
shr ecx, 0x18
mov edx, eax
shr edx, 0x10
mov r9d, eax
shr r9d, 8
cmp byte [0x1403459c8], 0
je 0x14005e5a4
mov r8d, eax
mov eax, r9d
mov byte [rdi], cl
mov byte [rdi + 1], dl
mov byte [rdi + 2], al
mov byte [rdi + 3], r8b
jmp 0x14005e740
mov r8d, ecx
mov ecx, eax
mov eax, edx
mov edx, r9d
mov byte [rdi], cl
mov byte [rdi + 1], dl
mov byte [rdi + 2], al
mov byte [rdi + 3], r8b
jmp 0x14005e740
cmp r8d, 4
jne 0x14005e5f0
lea rcx, [rbp - 0x49]
call fcn.1400aef80
nop
mov r9, rdi
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400af590
nop
lea rcx, [rbp - 0x49]
call fcn.1400aef90
jmp 0x14005e740
cmp r8d, 8
jne 0x14005e633
lea rcx, [rbp - 0x49]
call fcn.1400b62b0
nop
lea rcx, [rbp - 0x49]
call fcn.140075f30
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400b6e20
mov rdx, rdi
lea rcx, [rbp - 0x49]
call fcn.1400b6480
nop
lea rcx, [rbp - 0x49]
call fcn.1400b62e0
jmp 0x14005e740
cmp r8d, 0x1e
jne 0x14005e64b
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400b75a0
jmp 0x14005e740
cmp r8d, 9
jne 0x14005e67c
lea rcx, [rbp - 0x49]
call fcn.1400af860
nop
mov r9, rdi
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400b0e30
nop
lea rcx, [rbp - 0x49]
call fcn.1400af880
jmp 0x14005e740
cmp r8d, 0xa
jne 0x14005e6ad
lea rcx, [rbp - 0x49]
call fcn.1400b0e80
nop
mov r9, rdi
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400b2bc0
nop
lea rcx, [rbp - 0x49]
call fcn.1400b0ea0
jmp 0x14005e740
cmp r8d, 0xb
jne 0x14005e6db
lea rcx, [rbp - 0x49]
call fcn.1400b2c20
nop
mov r9, rdi
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400b4300
nop
lea rcx, [rbp - 0x49]
call fcn.1400b2c40
jmp 0x14005e740
cmp r8d, 0xc
jne 0x14005e709
lea rcx, [rbp - 0x49]
call fcn.1400b4370
nop
mov r9, rdi
mov r8d, esi
mov rdx, rbx
lea rcx, [rbp - 0x49]
call fcn.1400b6230
nop
lea rcx, [rbp - 0x49]
call fcn.1400b4390
jmp 0x14005e740
cmp r8d, 0x11
jne 0x14005e71e
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400b9350
jmp 0x14005e740
cmp r8d, 0x12
jne 0x14005e733
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400b9440
jmp 0x14005e740
mov r8, rdi
mov edx, esi
mov rcx, rbx
call fcn.1400aeb30
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1402474e0
mov rbx, qword [rsp + 0xf0]
add rsp, 0xc0
pop rdi
pop rsi
pop rbp
ret