Function at 0x1400360f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xd8
mov rax, qword [0x140125998]
xor rax, rsp
mov qword [rbp + 7], rax
mov r14, r9
mov qword [rbp - 0x79], r9
mov rsi, r8
mov qword [rsp + 0x40], r8
mov rbx, rdx
mov qword [rbp - 0x71], rdx
mov r13, rcx
mov qword [rsp + 0x38], rdx
mov qword [rbp - 0x69], r8
mov qword [rbp - 0x61], r9
mov r15, qword [rbp + 0x7f]
mov qword [rsp + 0x38], r15
mov qword [rbp - 0x59], r15
mov rax, qword [r15]
mov qword [rbp - 0x11], rax
mov rax, qword [r9]
mov qword [rsp + 0x20], rax
mov rdi, qword [r8]
mov r12, qword [r8 + 8]
sub r12, rdi
test r12b, 0xf
jne 0x1400363b8
mov ecx, r12d
call fcn.1400e26cc
mov qword [rsp + 0x30], rax
mov ecx, dword [r13 + 4]
inc ecx
shl ecx, 4
call fcn.1400e26cc
mov qword [rsp + 0x28], rax
mov r8, rax
mov rdx, qword [rsp + 0x20]
mov rcx, r13
call fcn.140036400
mov rax, qword [rbp - 0x11]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x11], xmm0
mov dword [rsp + 0x20], 0
test r12d, r12d
je 0x14003628e
mov r14d, dword [rsp + 0x20]
mov r15, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x28]
nop dword [rax + rax]
mov ecx, r14d
movzx eax, byte [rcx + rdi]
xor byte [rbp - 0x11], al
movzx eax, byte [rcx + rdi + 1]
xor byte [rbp - 0x10], al
movzx eax, byte [rcx + rdi + 2]
xor byte [rbp - 0xf], al
movzx eax, byte [rcx + rdi + 3]
xor byte [rbp - 0xe], al
movzx eax, byte [rcx + rdi + 4]
xor byte [rbp - 0xd], al
movzx eax, byte [rcx + rdi + 5]
xor byte [rbp - 0xc], al
movzx eax, byte [rcx + rdi + 6]
xor byte [rbp - 0xb], al
movzx eax, byte [rcx + rdi + 7]
xor byte [rbp - 0xa], al
movzx eax, byte [rcx + rdi + 8]
xor byte [rbp - 9], al
movzx eax, byte [rcx + rdi + 9]
xor byte [rbp - 8], al
movzx eax, byte [rcx + rdi + 0xa]
xor byte [rbp - 7], al
movzx eax, byte [rcx + rdi + 0xb]
xor byte [rbp - 6], al
movzx eax, byte [rcx + rdi + 0xc]
xor byte [rbp - 5], al
movzx eax, byte [rcx + rdi + 0xd]
xor byte [rbp - 4], al
movzx eax, byte [rcx + rdi + 0xe]
xor byte [rbp - 3], al
movzx eax, byte [rcx + rdi + 0xf]
xor byte [rbp - 2], al
lea rbx, [rcx + r15]
mov r9, rsi
mov r8, rbx
lea rdx, [rbp - 0x11]
mov rcx, r13
call fcn.140035c20
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x11], xmm0
add r14d, 0x10
cmp r14d, r12d
jb 0x1400361d0
mov rsi, qword [rsp + 0x40]
mov r14, qword [rbp - 0x79]
mov r15, qword [rsp + 0x38]
mov rbx, qword [rbp - 0x71]
mov rcx, qword [rsp + 0x28]
call fcn.1400e2238
mov r9, qword [rsi + 8]
sub r9, qword [rsi]
mov r8, qword [rsp + 0x30]
mov rdx, rbx
mov rcx, r13
call fcn.1400353b0
mov rcx, qword [rsp + 0x30]
call fcn.1400e2238
nop
mov rcx, qword [rsi]
test rcx, rcx
je 0x140036305
mov rdx, qword [rsi + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x1400362ea
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400362fe
mov rcx, r8
call fcn.1400e2238
xor edi, edi
mov qword [rsi], rdi
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], rdi
jmp 0x140036307
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
xor edi, edi
mov rcx, qword [r14]
test rcx, rcx
je 0x140036347
mov rdx, qword [r14 + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140036337
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400363aa
mov rcx, r8
call fcn.1400e2238
mov qword [r14], rdi
mov qword [r14 + 8], rdi
mov qword [r14 + 0x10], rdi
mov rcx, qword [r15]
test rcx, rcx
je 0x140036387
mov rdx, qword [r15 + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140036377
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400363b1
mov rcx, r8
call fcn.1400e2238
mov qword [r15], rdi
mov qword [r15 + 8], rdi
mov qword [r15 + 0x10], rdi
mov rax, rbx
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.1400e25b0
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov edx, 0x10
lea rcx, [rbp - 0x51]
call fcn.140036640
nop
mov r8, rax
lea rdx, str.Plaintext_length_must_be_divisible_by
lea rcx, [rbp - 0x31]
call fcn.140035160
nop
mov rdx, rax
lea rcx, [rbp - 0x11]
call fcn.140035310
lea rdx, [0x14011cfb0]
lea rcx, [rbp - 0x11]
call sub.VCRUNTIME140.dll__CxxThrowException
int3