Function at 0x1400040e8
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push r12
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0x100
mov qword [rbp - 0x79], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov rax, qword [0x140046180]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov rax, qword [str._.V._.K..C.m._b.p.]
mov qword [rbp - 0x31], rax
mov rax, qword [0x1400399a0]
mov qword [rbp - 0x29], rax
mov eax, dword [0x1400399a8]
mov dword [rbp - 0x21], eax
movzx eax, word [0x1400399ac]
mov word [rbp - 0x1d], ax
mov ecx, 9
mov edx, ecx
xor r14d, r14d
movzx eax, word [rbp + rdx*2 - 0x33]
xor word [rbp + rdx*2 - 0x31], ax
dec rdx
test rdx, rdx
jg 0x140004151
mov eax, 0x2e5d
xor word [rbp - 0x31], ax
mov rax, qword [str._8_8I8_8J8_8]
mov qword [rbp - 0x49], rax
mov rax, qword [0x1400399b8]
mov qword [rbp - 0x41], rax
mov eax, dword [0x1400399c0]
mov dword [rbp - 0x39], eax
movzx eax, word [0x1400399c4]
mov word [rbp - 0x35], ax
movzx eax, word [rbp + rcx*2 - 0x4b]
xor word [rbp + rcx*2 - 0x49], ax
dec rcx
test rcx, rcx
jg 0x140004196
mov eax, 0x3832
xor word [rbp - 0x49], ax
lea rcx, [rbp + 0x17]
lea rdx, str.er
mov r8d, 0x24
call fcn.1400230b0
mov r11d, 0x10
movzx eax, word [rbp + r11*2 + 0x15]
xor word [rbp + r11*2 + 0x17], ax
dec r11
test r11, r11
jg 0x1400041cd
mov eax, 0x7b56
xor word [rbp + 0x17], ax
mov rax, qword [str.R___I___J_____s_]
mov qword [rbp - 1], rax
mov rax, qword [0x1400399f8]
mov qword [rbp + 7], rax
mov rax, qword [0x140039a00]
mov qword [rbp + 0xf], rax
mov ecx, 0xa
movzx eax, word [rbp + rcx*2 - 3]
xor word [rbp + rcx*2 - 1], ax
dec rcx
test rcx, rcx
jg 0x140004210
mov eax, 0x3f34
xor word [rbp - 1], ax
mov rax, qword [str.E5P_Cm_bp]
mov qword [rbp - 0x19], rax
mov rax, qword [0x140039a10]
mov qword [rbp - 0x11], rax
mov eax, dword [0x140039a18]
mov dword [rbp - 9], eax
mov ecx, 8
movzx eax, word [rbp + rcx*2 - 0x1b]
xor word [rbp + rcx*2 - 0x19], ax
dec rcx
test rcx, rcx
jg 0x14000424f
mov eax, 0x7e2a
xor word [rbp - 0x19], ax
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x30], r14
mov ebx, 7
mov qword [rbp - 0x59], rbx
mov qword [rbp - 0x61], r14
mov word [rbp - 0x71], r14w
lea rdx, [rbp - 0x31]
lea rcx, [rbp - 0x71]
call fcn.140002158
nop
lea rdx, [rbp - 0x71]
lea rcx, [rsp + 0x20]
call fcn.140001d94
nop
cmp qword [rbp - 0x59], 8
jb 0x1400042b8
mov rcx, qword [rbp - 0x71]
call fcn.1400233e4
mov qword [rbp - 0x59], rbx
mov qword [rbp - 0x61], r14
mov word [rbp - 0x71], r14w
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x71]
call fcn.140002158
nop
lea rdx, [rbp - 0x71]
lea rcx, [rsp + 0x20]
call fcn.140001d94
nop
cmp qword [rbp - 0x59], 8
jb 0x1400042f2
mov rcx, qword [rbp - 0x71]
call fcn.1400233e4
mov qword [rbp - 0x59], rbx
mov qword [rbp - 0x61], r14
mov word [rbp - 0x71], r14w
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x71]
call fcn.140002158
nop
lea rdx, [rbp - 0x71]
lea rcx, [rsp + 0x20]
call fcn.140001d94
nop
cmp qword [rbp - 0x59], 8
jb 0x14000432c
mov rcx, qword [rbp - 0x71]
call fcn.1400233e4
mov qword [rbp - 0x59], rbx
mov qword [rbp - 0x61], r14
mov word [rbp - 0x71], r14w
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x71]
call fcn.140002158
nop
lea rdx, [rbp - 0x71]
lea rcx, [rsp + 0x20]
call fcn.140001d94
nop
cmp qword [rbp - 0x59], 8
jb 0x140004366
mov rcx, qword [rbp - 0x71]
call fcn.1400233e4
mov qword [rbp - 0x59], rbx
mov qword [rbp - 0x61], r14
mov word [rbp - 0x71], r14w
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x71]
call fcn.140002158
nop
lea rdx, [rbp - 0x71]
lea rcx, [rsp + 0x20]
call fcn.140001d94
nop
cmp qword [rbp - 0x59], 8
jb 0x1400043a0
mov rcx, qword [rbp - 0x71]
call fcn.1400233e4
mov qword [rbp - 0x71], r14
mov qword [rbp - 0x69], r14
mov qword [rbp - 0x61], r14
lea rcx, [rbp - 0x71]
call fcn.140020eb8
mov r12, qword [rbp - 0x71]
mov rdi, r12
mov rsi, qword [rsp + 0x20]
cmp r12, qword [rbp - 0x69]
je 0x140004458
mov rbx, rsi
cmp rsi, qword [rsp + 0x28]
je 0x1400043fc
cmp qword [rbx + 0x18], 8
jb 0x1400043e1
mov rdx, qword [rbx]
jmp 0x1400043e4
mov rdx, rbx
lea rcx, [rdi + 0x2c]
call fcn.1400242d4
test eax, eax
je 0x140004409
add rbx, 0x28
cmp rbx, qword [rsp + 0x28]
jne 0x1400043d5
add rdi, 0x238
cmp rdi, qword [rbp - 0x69]
jmp 0x1400043c5
test r12, r12
je 0x140004417
mov rcx, r12
call fcn.1400233e4
nop
test rsi, rsi
je 0x140004451
mov rbx, rsi
cmp qword [rbx + 0x18], 8
jb 0x14000442e
mov rcx, qword [rbx]
call fcn.1400233e4
mov qword [rbx + 0x18], 7
mov qword [rbx + 0x10], r14
mov word [rbx], r14w
add rbx, 0x28
cmp rbx, qword [rsp + 0x28]
jne 0x14000441f
mov rcx, rsi
call fcn.1400233e4
mov eax, 1
jmp 0x1400044a9
test r12, r12
je 0x140004466
mov rcx, r12
call fcn.1400233e4
nop
test rsi, rsi
je 0x1400044a7
mov rbx, rsi
cmp rsi, qword [rsp + 0x28]
je 0x14000449f
cmp qword [rbx + 0x18], 8
jb 0x140004484
mov rcx, qword [rbx]
call fcn.1400233e4
mov qword [rbx + 0x18], 7
mov qword [rbx + 0x10], r14
mov word [rbx], r14w
add rbx, 0x28
cmp rbx, qword [rsp + 0x28]
jne 0x140004475
mov rcx, rsi
call fcn.1400233e4
xor eax, eax
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.140022ee0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop r12
pop rbp
ret