Function at 0x533a80
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
lea eax, [rdx - 0x29]
mov rbx, rcx
mov esi, edx
mov r12, r8
mov edi, r9d
cmp eax, r9d
jle 0x533b30
lea ebp, [rdx - 1]
cmp ebp, 0x28
jle 0x533af0
mov byte [rcx], 0
lea r13, [rcx + 0x15]
call fcn.0049ae60
movsxd rdx, dword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
xor r9d, r9d
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
mov r8, r13
call fcn.0049a300
test eax, eax
jne 0x533b60
xor eax, eax
jmp 0x533b16
lea r9, str.rsa_oaep.c
mov dword [rsp + 0x20], 0x34
mov r8d, 0x78
mov edx, 0x79
mov ecx, 4
call fcn.00498ab0
xor eax, eax
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r9, str.rsa_oaep.c
mov dword [rsp + 0x20], 0x2e
mov r8d, 0x6e
mov edx, 0x79
mov ecx, 4
call fcn.00498ab0
xor eax, eax
jmp 0x533b16
mov r15d, ebp
lea rcx, [rbx + 0x29]
xor edx, edx
sub r15d, edi
movsxd rbp, ebp
lea r14, [rbx + 1]
lea r8d, [r15 - 0x29]
sub r15d, 0x14
movsxd r15, r15d
movsxd r8, r8d
call fcn.005999d0
movsxd rax, edi
mov rcx, r13
mov r8d, edi
sub rcx, rax
mov rdx, r12
mov byte [r13 + r15 - 1], 1
lea rcx, [rcx + rbp - 0x14]
call sub.msvcrt.dll_memcpy
mov edx, 0x14
mov rcx, r14
call fcn.00495770
test eax, eax
jle 0x533ae8
lea edi, [rsi - 0x15]
lea rdx, str.rsa_oaep.c
mov r8d, 0x4a
mov ecx, edi
call fcn.00493db0
test rax, rax
mov rbp, rax
je 0x533e10
call fcn.0049ae60
mov r9d, 0x14
mov qword [rsp + 0x20], rax
mov r8, r14
mov edx, edi
mov rcx, rbp
call fcn.00533910
test eax, eax
js 0x533ae8
test edi, edi
jle 0x533da1
lea rax, [rbp + 0x10]
cmp r13, rax
lea rax, [rbx + 0x25]
setae dl
cmp rbp, rax
setae al
or dl, al
je 0x533e3b
cmp edi, 0x12
jbe 0x533e3b
mov rdx, r13
sub esi, 0x16
neg rdx
and edx, 0xf
lea eax, [rdx + 0xf]
cmp esi, eax
jb 0x533e6f
test edx, edx
je 0x533e9e
movzx eax, byte [rbp]
xor byte [rbx + 0x15], al
cmp edx, 1
je 0x533e5b
movzx eax, byte [rbp + 1]
xor byte [rbx + 0x16], al
cmp edx, 2
je 0x533e65
movzx eax, byte [rbp + 2]
xor byte [rbx + 0x17], al
cmp edx, 3
je 0x533e76
movzx eax, byte [rbp + 3]
xor byte [rbx + 0x18], al
cmp edx, 4
je 0x533e80
movzx eax, byte [rbp + 4]
xor byte [rbx + 0x19], al
cmp edx, 5
je 0x533e8a
movzx eax, byte [rbp + 5]
xor byte [rbx + 0x1a], al
cmp edx, 6
je 0x533e94
movzx eax, byte [rbp + 6]
xor byte [rbx + 0x1b], al
cmp edx, 7
je 0x533ea5
movzx eax, byte [rbp + 7]
xor byte [rbx + 0x1c], al
cmp edx, 8
je 0x533eaf
movzx eax, byte [rbp + 8]
xor byte [rbx + 0x1d], al
cmp edx, 9
je 0x533eb9
movzx eax, byte [rbp + 9]
xor byte [rbx + 0x1e], al
cmp edx, 0xa
je 0x533ec3
movzx eax, byte [rbp + 0xa]
xor byte [rbx + 0x1f], al
cmp edx, 0xb
je 0x533ecd
movzx eax, byte [rbp + 0xb]
xor byte [rbx + 0x20], al
cmp edx, 0xc
je 0x533ed7
movzx eax, byte [rbp + 0xc]
xor byte [rbx + 0x21], al
cmp edx, 0xd
je 0x533eeb
movzx eax, byte [rbp + 0xd]
xor byte [rbx + 0x22], al
cmp edx, 0xf
jne 0x533ee1
movzx eax, byte [rbp + 0xe]
xor byte [rbx + 0x23], al
mov eax, 0xf
nop word [rax + rax]
mov r11d, edi
mov r9d, edx
xor ecx, ecx
sub r11d, edx
lea r8, [rbx + r9 + 0x15]
xor edx, edx
mov r10d, r11d
add r9, rbp
shr r10d, 4
nop dword [rax]
movdqu xmm0, xmmword [r9 + rdx]
add ecx, 1
pxor xmm0, xmmword [r8 + rdx]
movaps xmmword [r8 + rdx], xmm0
add rdx, 0x10
cmp ecx, r10d
jb 0x533d60
mov edx, r11d
and edx, 0xfffffff0
add eax, edx
cmp r11d, edx
je 0x533da1
cdqe
nop dword [rax]
movzx edx, byte [rbp + rax]
xor byte [rbx + rax + 0x15], dl
add rax, 1
cmp edi, eax
jg 0x533d90
call fcn.0049ae60
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9d, edi
mov r8, r13
mov edx, 0x14
call fcn.00533910
test eax, eax
js 0x533ae8
movdqu xmm0, xmmword [rbx + 1]
mov rcx, rbp
movzx eax, byte [rsp + 0x40]
pxor xmm0, xmmword [rsp + 0x30]
xor byte [rbx + 0x11], al
movzx eax, byte [rsp + 0x41]
xor byte [rbx + 0x12], al
movzx eax, byte [rsp + 0x42]
xor byte [rbx + 0x13], al
movzx eax, byte [rsp + 0x43]
xor byte [rbx + 0x14], al
movups xmmword [rbx + 1], xmm0
call fcn.00494240
mov eax, 1
jmp 0x533b16
lea r9, str.rsa_oaep.c
mov dword [rsp + 0x20], 0x4d
mov r8d, 0x41
mov edx, 0x79
mov ecx, 4
call fcn.00498ab0
xor eax, eax
jmp 0x533b16
lea ecx, [rsi - 0x16]
xor eax, eax
add rcx, 1
movzx edx, byte [rbp + rax]
xor byte [rbx + rax + 0x15], dl
add rax, 1
cmp rcx, rax
jne 0x533e44
jmp 0x533da1
mov eax, 1
jmp 0x533d40
mov eax, 2
jmp 0x533d40
xor eax, eax
jmp 0x533d8a
mov eax, 3
jmp 0x533d40
mov eax, 4
jmp 0x533d40
mov eax, 5
jmp 0x533d40
mov eax, 6
jmp 0x533d40
xor eax, eax
jmp 0x533d40
mov eax, 7
jmp 0x533d40
mov eax, 8
jmp 0x533d40
mov eax, 9
jmp 0x533d40
mov eax, 0xa
jmp 0x533d40
mov eax, 0xb
jmp 0x533d40
mov eax, 0xc
jmp 0x533d40
mov eax, 0xe
jmp 0x533d40
mov eax, 0xd
jmp 0x533d40