Function at 0x140108700
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov rdi, qword [rsp + 0xd8]
mov rbp, qword [rsp + 0xe0]
add r8d, 7
mov r15, rcx
mov qword [rsp + 0xb8], rdx
shr r8d, 3
mov r14d, r9d
mov qword [rsp + 0x58], 0
test rdi, rdi
mov ebx, r8d
mov qword [rcx], 0
je 0x1401087e0
test rbp, rbp
je 0x1401087e0
mov ecx, r14d
call fcn.1400fd550
mov esi, eax
mov rcx, rsi
call fcn.1400eb8b0
test rax, rax
mov r12, rax
je 0x1401089b3
mov rdx, rax
mov r9, rbp
mov r8, rdi
mov ecx, r14d
call fcn.1400fcd40
mov r8, qword [rsp + 0xd0]
lea rcx, [rsp + 0x58]
xor edx, edx
mov r9, rbx
call fcn.14011ed40
test eax, eax
jne 0x1401087bc
lea rdi, [rsi + 1]
lea rax, [rdi + rdi]
cmp rbx, rax
jae 0x1401087f0
mov rcx, qword [rsp + 0x58]
call fcn.1400eba10
mov rcx, r12
call fcn.1400eba10
mov eax, 0x9b
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor ebp, ebp
lea rdi, [0x1402799c9]
jmp 0x14010875b
sub rbx, 1
mov rcx, rbx
call fcn.1400eb8e0
test rax, rax
mov r13, rax
je 0x1401089c0
mov r11, qword [rsp + 0x58]
sub rbx, rsi
mov dword [rsp + 0x20], r14d
mov r9, rbx
mov rdx, rsi
mov rcx, rax
lea rbp, [rax + rsi]
lea r10, [r11 + rdi]
mov qword [rsp + 0x40], r11
mov r8, r10
mov qword [rsp + 0x38], r10
call fcn.140107b80
mov dword [rsp + 0x4c], eax
xor eax, eax
test rsi, rsi
mov r10, qword [rsp + 0x38]
mov r11, qword [rsp + 0x40]
je 0x14010886c
nop dword [rax]
movzx edx, byte [r13 + rax]
lea rcx, [rax + 1]
xor dl, byte [r11 + rax + 1]
cmp rcx, rsi
mov rax, rcx
mov byte [r13 + rcx - 1], dl
jne 0x140108850
mov dword [rsp + 0x20], r14d
mov r9, rsi
mov r8, r13
mov rdx, rbx
mov rcx, rbp
mov qword [rsp + 0x38], r10
call fcn.140107b80
test eax, eax
mov r14d, 1
mov r10, qword [rsp + 0x38]
jne 0x1401088a0
mov eax, dword [rsp + 0x4c]
test eax, eax
setne r14b
test rbx, rbx
movzx r14d, r14b
je 0x1401089e4
xor eax, eax
nop
movzx edx, byte [r10 + rax]
xor byte [rbp + rax], dl
add rax, 1
cmp rbx, rax
jne 0x1401088b0
mov r8, rsi
mov rdx, rbp
mov rcx, r12
call sub.msvcrt.dll_memcmp
test eax, eax
mov eax, 1
cmovne r14d, eax
cmp rsi, rbx
jae 0x140108903
cmp byte [rbp + rsi], 1
jne 0x1401088fb
jmp 0x140108930
cmp byte [rbp + rdi], 1
je 0x140108930
add rdi, 1
cmp rbx, rdi
mov rsi, rdi
ja 0x1401088f0
cmp rbx, rsi
jne 0x140108930
mov rcx, r12
call fcn.1400eba10
mov rcx, qword [rsp + 0x58]
call fcn.1400eba10
mov rcx, r13
call fcn.1400eba10
mov eax, 0x9b
jmp 0x1401087c9
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
jne 0x140108908
mov rcx, r12
call fcn.1400eba10
mov rcx, qword [rsp + 0x58]
call fcn.1400eba10
test r14d, r14d
jne 0x14010891a
add rsi, 1
mov rcx, r13
sub rbx, rsi
lea rdx, [rbp + rsi]
mov r8, rbx
call sub.msvcrt.dll_memmove
mov rax, qword [rsp + 0xb8]
mov qword [r15], r13
mov ecx, 1
mov qword [rax], rbx
call fcn.1400ebf00
mov edx, eax
xor eax, eax
test edx, edx
je 0x1401087c9
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0xb8]
lea rcx, str.value_extracted_from_OAEP_encoded_data
mov rdx, qword [r15]
mov r8, qword [rax]
call fcn.1400ea580
mov eax, dword [rsp + 0x38]
jmp 0x1401087c9
call fcn.14014d490
jmp 0x1401087c9
call fcn.14014d490
mov rcx, qword [rsp + 0x58]
mov dword [rsp + 0x38], eax
call fcn.1400eba10
mov rcx, r12
call fcn.1400eba10
mov eax, dword [rsp + 0x38]
jmp 0x1401087c9
mov r8, rsi
mov rdx, rbp
mov rcx, r12
call sub.msvcrt.dll_memcmp
test eax, eax
mov eax, 1
cmovne r14d, eax
jmp 0x140108903