Function at 0x14007f3f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
add rsp, 0xffffffffffffffc0
xor r15d, r15d
mov r14, r8
cmp byte [rcx], 0x7b
mov eax, r15d
mov rsi, rdx
mov qword [rdx + 0x10], r15
setne al
mov qword [rdx], r15
inc rcx
mov dword [rdx + 0x20], eax
call fcn.14007ebe0
mov rbx, rax
test rax, rax
je 0x14007f508
lea r13d, [r15 + 0x7d]
lea r12, [0x140000000]
movzx ecx, byte [rbx]
cmp cl, 0x2c
jne 0x14007f456
inc rbx
jmp 0x14007f99e
cmp dword [rsi + 0x20], r15d
pushf
mov eax, 0x1cd06c3c
xor eax, 0x73fa826a
xor eax, 0x65dbe6bb
sub eax, 0xaf10890
popf
cmove eax, r13d
cmp cl, al
jne 0x14007f49b
mov byte [rbx], r15b
inc rbx
mov rax, qword [rsi]
test rax, rax
je 0x14007f9b7
mov qword [rsi], r15
mov rsi, rax
jmp 0x14007f99e
mov rax, qword [r14 + 8]
mov rcx, r14
call rax
mov rdi, rax
test rax, rax
je 0x14007f508
cmp dword [rsi + 0x20], 1
je 0x14007f52d
cmp byte [rbx], 0x22
jne 0x14007f508
lea rcx, [rbx + 1]
mov qword [rax + 8], rcx
call fcn.14007fa40
test rax, rax
je 0x14007f508
mov rcx, rax
call fcn.14007ebe0
test rax, rax
je 0x14007f508
cmp byte [rax], 0x3a
jne 0x14007f508
lea rcx, [rax + 1]
call fcn.14007ebe0
mov rbx, rax
test rax, rax
jne 0x14007f531
xor eax, eax
mov rbx, qword [rsp + 0x90]
nop
add rsp, 0x65fe7388
sub rsp, 0x65fe7348
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rax + 8], r15
mov qword [rdi], r15
cmp qword [rsi + 0x10], r15
jne 0x14007f547
mov qword [rsi + 0x10], rdi
jmp 0x14007f54e
mov rax, qword [rsi + 0x18]
mov qword [rax], rdi
mov qword [rsi + 0x18], rdi
mov qword [rdi + 0x10], rbx
movsx eax, byte [rbx]
sub eax, 0x22
cmp eax, 0x59
ja case.0x14007f57b.40
cdqe
movzx eax, byte [r12 + rax + 0x7f9dd]
mov ecx, dword [r12 + rax*4 + 0x7f9c1]
add rcx, r12
jmp rcx
mov qword [rdi], rsi
inc rbx
mov rsi, rdi
mov dword [rdi + 0x20], r15d
mov qword [rdi + 0x10], r15
jmp 0x14007f995
mov qword [rdi], rsi
inc rbx
mov rsi, rdi
mov dword [rdi + 0x20], 0x204e3280
xor dword [rdi + 0x20], 0x159e76a2
add dword [rdi + 0x20], 0x3894137f
sub dword [rdi + 0x20], 0x6e6457a0
mov qword [rdi + 0x10], r15
jmp 0x14007f995
lea rcx, [rbx + 1]
mov qword [rdi + 0x10], rcx
call fcn.14007fa40
mov rbx, rax
test rax, rax
je 0x14007f508
mov dword [rdi + 0x20], 0x49dcdb09
sub dword [rdi + 0x20], 0x1ef377fc
sub dword [rdi + 0x20], 0x2ae9630b
jmp 0x14007f99e
mov dword [rbp + 0x40], 0x59b5cd92
sub dword [rbp + 0x40], 0x2352b5b2
sub dword [rbp + 0x40], 0x1ddc0ffb
add dword [rbp + 0x40], 0x2fda42da
mov qword [rbp - 0x10], r15
mov rax, qword [rbp - 0x10]
nop word [rax + rax]
mov rcx, qword [rbp - 0x10]
mov edx, 0x5c73d083
sub edx, 0x3ca6ca0
add edx, 0x297e9fa
xor edx, 0x76557516
mov rax, qword [rbp - 0x10]
and cl, 3
shl cl, 3
shr edx, cl
xor dl, byte [rbp + rax + 0x40]
mov rax, qword [rbp - 0x10]
mov byte [rbp + rax - 0x20], dl
mov rax, qword [rbp - 0x10]
inc rax
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
cmp rax, 4
jb 0x14007f621
movzx ecx, byte [rbp - 0x20]
mov byte [rbp - 0x1c], r15b
test cl, cl
je 0x14007f6a5
lea rdx, [rbp - 0x20]
sub rdx, rbx
nop dword [rax]
movzx eax, byte [rbx]
inc rbx
cmp al, cl
jne 0x14007f709
movzx ecx, byte [rdx + rbx]
test cl, cl
jne 0x14007f68b
test rbx, rbx
je 0x14007f709
movzx ecx, byte [rbx]
call fcn.14007ed30
test al, al
je 0x14007f709
mov rcx, rbx
call fcn.14007fba0
mov rbx, rax
mov dword [rdi + 0x20], 0x42112c37
sub dword [rdi + 0x20], 0x2196ca74
add dword [rdi + 0x20], 0x13ae7761
sub dword [rdi + 0x20], 0x3428d921
lea rdi, [rbp - 0x20]
xor eax, eax
mov ecx, 0x768a0a56
xor ecx, 0x1af2dafe
sub ecx, 0x37f6a94f
xor ecx, 0x3482275d
rep stosb byte [rdi], al
jmp 0x14007f995
mov rbx, r15
lea rdi, [rbp - 0x20]
xor eax, eax
mov ecx, 0x734b4d6e
sub ecx, 0x47b98a8c
xor ecx, 0x3cf7bd29
sub ecx, 0x17667fc7
rep stosb byte [rdi], al
jmp 0x14007f995
mov dword [rbp + 0x58], 0x260b5f5c
add dword [rbp + 0x58], 0x4c4d66bd
sub dword [rbp + 0x58], 0x13e06c6c
mov byte [rbp + 0x5c], 0x31
add byte [rbp + 0x5c], 0x34
add byte [rbp + 0x5c], 0x49
mov qword [rbp - 0x10], r15
mov rax, qword [rbp - 0x10]
nop
mov rcx, qword [rbp - 0x10]
mov edx, 0x4e9d4422
add edx, 0x2929de2
sub edx, 0x30300bc0
xor edx, 0xdebee8f
mov rax, qword [rbp - 0x10]
and cl, 3
shl cl, 3
shr edx, cl
xor dl, byte [rbp + rax + 0x58]
mov rax, qword [rbp - 0x10]
mov byte [rbp + rax - 0x16], dl
mov rax, qword [rbp - 0x10]
inc rax
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
cmp rax, 5
jb 0x14007f75a
movzx ecx, byte [rbp - 0x16]
mov byte [rbp - 0x11], r15b
test cl, cl
je 0x14007f7de
lea rdx, [rbp - 0x16]
sub rdx, rbx
nop dword [rax]
movzx eax, byte [rbx]
inc rbx
cmp al, cl
jne 0x14007f835
movzx ecx, byte [rdx + rbx]
test cl, cl
jne 0x14007f7c4
test rbx, rbx
je 0x14007f835
movzx ecx, byte [rbx]
call fcn.14007ed30
test al, al
je 0x14007f835
mov rcx, rbx
call fcn.14007fba0
mov rbx, rax
mov dword [rdi + 0x20], 0x63db8b8
xor dword [rdi + 0x20], 0x1e8a067e
sub dword [rdi + 0x20], 0x18b7bec3
lea rdi, [rbp - 0x16]
xor eax, eax
mov ecx, 0x2a0522e2
add ecx, 0x3b271a74
sub ecx, 0x652c3d51
rep stosb byte [rdi], al
jmp 0x14007f995
mov rbx, r15
lea rdi, [rbp - 0x16]
xor eax, eax
mov ecx, 0x64a091ee
sub ecx, 0x5aa378f9
sub ecx, 0x39d6ca
sub ecx, 0x9c34226
rep stosb byte [rdi], al
jmp 0x14007f995
mov dword [rbp + 0x48], 0x6ddebebd
sub dword [rbp + 0x48], 0xfea9834
xor dword [rbp + 0x48], 0x1c8c6b2c
mov qword [rbp - 0x10], r15
mov rax, qword [rbp - 0x10]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x10]
mov edx, 0x1ca1e10d
add edx, 0x615758ee
sub edx, 0x4a3c3c6e
sub edx, 0x6a8c4c2
mov rax, qword [rbp - 0x10]
and cl, 3
shl cl, 3
shr edx, cl
xor dl, byte [rbp + rax + 0x48]
mov rax, qword [rbp - 0x10]
mov byte [rbp + rax - 0x1b], dl
mov rax, qword [rbp - 0x10]
inc rax
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
cmp rax, 4
jb 0x14007f87e
movzx ecx, byte [rbp - 0x1b]
mov byte [rbp - 0x17], r15b
test cl, cl
je 0x14007f902
lea rdx, [rbp - 0x1b]
sub rdx, rbx
nop dword [rax]
movzx eax, byte [rbx]
inc rbx
cmp al, cl
jne 0x14007f960
movzx ecx, byte [rdx + rbx]
test cl, cl
jne 0x14007f8e8
test rbx, rbx
je 0x14007f960
movzx ecx, byte [rbx]
call fcn.14007ed30
test al, al
je 0x14007f960
mov rcx, rbx
call fcn.14007fba0
mov rbx, rax
mov dword [rdi + 0x20], 0x76ff6eb9
sub dword [rdi + 0x20], 0x33df7245
sub dword [rdi + 0x20], 0xe39c156
sub dword [rdi + 0x20], 0x34e63b18
lea rdi, [rbp - 0x1b]
xor eax, eax
mov ecx, 0x6a7d4da4
xor ecx, 0x8b238bb
sub ecx, 0x62cf751b
rep stosb byte [rdi], al
jmp 0x14007f995
mov rbx, r15
lea rdi, [rbp - 0x1b]
xor eax, eax
mov ecx, 0x23262f4
add ecx, 0x58b8d961
xor ecx, 0x3dd83f0f
xor ecx, 0x6733035e
rep stosb byte [rdi], al
jmp 0x14007f995
mov rdx, rdi
mov rcx, rbx
call fcn.14007ef80
mov rbx, rax
test rbx, rbx
je 0x14007f508
mov rcx, rbx
call fcn.14007ebe0
mov rbx, rax
test rax, rax
jne 0x14007f442
jmp 0x14007f508
mov rax, rbx
jmp 0x14007f50a