Function at 0x14005cb00
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x100
call fcn.1400a06f0
sub rsp, rax
mov rax, qword [0x1400fb010]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x168]
xor ebx, ebx
movsxd r15, dword [rsp + 0x160]
or r12d, 0xffffffff
mov rdi, qword [rsp + 0x180]
mov r13, r8
mov qword [rsp + 0x58], rax
mov esi, ebx
mov rax, qword [rsp + 0x178]
mov ebp, ebx
movsxd r14, r9d
mov dword [rsp + 0x30], edx
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x44], r15d
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x38], rbx
test rax, rax
jne 0x14005cb8b
call fcn.14001a8e0
mov qword [rsp + 0x50], rax
test rdi, rdi
mov rcx, rax
cmove rdi, rax
mov qword [rsp + 0x48], rdi
call fcn.14001a4b0
movsxd rdi, eax
cmp dword [rsp + 0x30], ebx
jle 0x14005cfb5
test r14d, r14d
jle 0x14005cfb5
cmp r15d, r14d
jl 0x14005cf1d
lea ecx, [rdi*2 + 2]
cmp r15d, ecx
jl 0x14005cf1d
mov esi, r15d
lea rdx, str.crypto_rsa_rsa_oaep.c
sub esi, edi
mov r8d, 0x9d
dec esi
movsxd rcx, esi
call fcn.140007c10
mov r8d, 0x9e
lea rdx, str.crypto_rsa_rsa_oaep.c
mov rcx, r15
mov rbp, rax
call fcn.140007c10
mov qword [rsp + 0x38], rax
test rbp, rbp
je 0x14005cf91
test rax, rax
je 0x14005cf91
mov r8, r15
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
sub r15, r14
mov r8, r14
add r15, qword [rsp + 0x38]
mov rdx, r13
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x38]
mov r9d, esi
movzx eax, byte [rdx]
lea r15, [rdx + 1]
lea r14, [rdx + 1]
add r15, rdi
mov r8, r15
mov edx, edi
lea ecx, [rax - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
and ecx, eax
mov rax, qword [rsp + 0x48]
neg ecx
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x40], ecx
lea rcx, [rsp + 0x70]
call fcn.14005c4f0
test eax, eax
jne 0x14005cf43
mov edx, ebx
test edi, edi
jle 0x14005cd1b
cmp edi, 0x20
jb 0x14005cd1b
lea eax, [rdi - 1]
movsxd rcx, eax
lea r8, [rsp + 0x70]
add r8, rcx
lea rax, [rcx + r14]
lea rcx, [rsp + 0x70]
cmp rcx, rax
ja 0x14005ccba
cmp r8, r14
jae 0x14005cd1b
mov ecx, edi
and ecx, 0x8000001f
jge 0x14005cccb
dec ecx
or ecx, 0xffffffe0
inc ecx
mov eax, edi
mov r8, r14
sub eax, ecx
mov rcx, rbx
movsxd r9, eax
lea rax, [rsp + 0x70]
sub r8, rax
lea rax, [rsp + 0x70]
add edx, 0x20
add rax, rcx
add rcx, 0x20
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + r8]
pxor xmm1, xmm0
movdqu xmmword [rax], xmm1
movdqu xmm1, xmmword [rax + r8 + 0x10]
movdqu xmm0, xmmword [rax + 0x10]
pxor xmm1, xmm0
movdqu xmmword [rax + 0x10], xmm1
cmp rcx, r9
jl 0x14005cce0
movsxd rdx, edx
cmp rdx, rdi
jge 0x14005cd47
lea rax, [rsp + 0x70]
sub r14, rax
nop dword [rax + rax]
lea rcx, [rsp + 0x70]
add rcx, rdx
inc rdx
movzx eax, byte [rcx + r14]
xor byte [rcx], al
cmp rdx, rdi
jl 0x14005cd30
mov rax, qword [rsp + 0x48]
lea r8, [rsp + 0x70]
mov r9d, edi
mov qword [rsp + 0x20], rax
mov edx, esi
mov rcx, rbp
call fcn.14005c4f0
test eax, eax
jne 0x14005cf43
mov edx, ebx
test esi, esi
jle 0x14005cdf8
cmp esi, 0x20
jb 0x14005cdf8
lea eax, [rsi - 1]
movsxd rcx, eax
lea rax, [rcx + r15]
lea r8, [rcx + rbp]
cmp rbp, rax
ja 0x14005cd96
cmp r8, r15
jae 0x14005cdf8
mov ecx, esi
and ecx, 0x8000001f
jge 0x14005cda7
dec ecx
or ecx, 0xffffffe0
inc ecx
mov eax, esi
mov r8, r15
sub eax, ecx
sub r8, rbp
mov r9, rbp
movsxd r10, eax
neg r9
mov rcx, rbp
nop dword [rax]
movdqu xmm0, xmmword [rcx]
add edx, 0x20
movdqu xmm1, xmmword [r8 + rcx]
lea rcx, [rcx + 0x20]
lea rax, [r9 + rcx]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
movdqu xmm1, xmmword [r8 + rcx - 0x10]
movdqu xmm0, xmmword [rcx - 0x10]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x10], xmm1
cmp rax, r10
jl 0x14005cdc0
movsxd rax, edx
movsxd r14, esi
cmp rax, r14
jge 0x14005ce21
sub r15, rbp
lea rcx, [rax + rbp]
mov rdx, r14
sub rdx, rax
movzx eax, byte [rcx + r15]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x14005ce10
mov rax, qword [rsp + 0x50]
lea r8, [rsp + 0xb0]
movsxd rdx, dword [rsp + 0x170]
xor r9d, r9d
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
call fcn.140019890
test eax, eax
je 0x14005cf43
mov r8, rdi
lea rdx, [rsp + 0xb0]
mov rcx, rbp
call fcn.1400101b0
mov r11d, dword [rsp + 0x40]
mov r9d, ebx
lea ecx, [rax - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
and ecx, eax
neg ecx
and r11d, ecx
cmp rdi, r14
jge 0x14005cee2
lea r10, [rdi + rbp]
sub r14, rdi
nop
movzx r8d, byte [r10]
lea r10, [r10 + 1]
mov eax, r8d
mov ecx, r9d
xor eax, 1
not ecx
lea edx, [rax - 1]
not eax
shr eax, 0x1f
shr edx, 0x1f
and edx, eax
neg edx
and ecx, edx
or r9d, edx
mov eax, ecx
and ecx, edi
not eax
inc edi
and ebx, eax
lea eax, [r8 - 1]
shr eax, 0x1f
not r8d
shr r8d, 0x1f
or ebx, ecx
and eax, r8d
neg eax
or eax, r9d
and r11d, eax
sub r14, 1
jne 0x14005ce90
test r11d, r9d
je 0x14005cf1d
lea eax, [rbx + 1]
mov r12d, esi
sub r12d, eax
cmp dword [rsp + 0x30], r12d
jge 0x14005cf7c
mov edx, 0x99
mov dword [rsp + 0x20], 0xe3
lea r9, str.crypto_rsa_rsa_oaep.c
mov ecx, 4
lea r8d, [rdx - 0x2c]
call fcn.140006c60
mov edx, 0x99
mov dword [rsp + 0x20], 0xf0
lea r9, str.crypto_rsa_rsa_oaep.c
mov ecx, 4
lea r8d, [rdx - 0x20]
call fcn.140006c60
or r12d, 0xffffffff
movsxd rdx, esi
lea r8, str.crypto_rsa_rsa_oaep.c
mov r9d, 0xf2
mov rcx, rbp
call fcn.140007d70
movsxd rdx, dword [rsp + 0x44]
lea r8, str.crypto_rsa_rsa_oaep.c
mov rcx, qword [rsp + 0x38]
mov r9d, 0xf3
call fcn.140007d70
mov eax, r12d
jmp 0x14005cfb8
mov rcx, qword [rsp + 0x60]
movsxd rdx, eax
add rdx, rbp
movsxd r8, r12d
call sub.VCRUNTIME140.dll_memcpy
jmp 0x14005cf43
mov edx, 0x99
mov dword [rsp + 0x20], 0xa0
lea r9, str.crypto_rsa_rsa_oaep.c
mov ecx, 4
lea r8d, [rdx - 0x58]
call fcn.140006c60
jmp 0x14005cf43
or eax, 0xffffffff
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.140002dc0
mov rbx, qword [rsp + 0x148]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret