Function at 0x14001eb20
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
cmp qword [rsp + 0xc0], 0
mov ebx, dword [rsp + 0xc8]
mov rax, r9
mov rdi, rcx
mov rcx, r9
mov rbp, rdx
cmovne rax, qword [rsp + 0xc0]
mov qword [rsp + 0xb0], r8
mov r12, r9
mov qword [rsp + 0xc0], rax
call fcn.140004170
mov esi, eax
test eax, eax
js 0x14001eccf
cmp ebx, 0xffffffff
je 0x14001ef70
cmp ebx, 0xfffffffe
je 0x14001ece0
cmp ebx, 0xfffffffd
jl 0x14001ef80
mov rcx, qword [rdi + 0x28]
call fcn.1400b9a60
mov rcx, rdi
sub eax, 1
and eax, 7
mov dword [rsp + 0x48], eax
mov r15d, eax
call fcn.14021b8b0
mov r13d, eax
test r15d, r15d
jne 0x14001ebc4
mov byte [rbp], 0
sub r13d, 1
add rbp, 1
lea eax, [rsi + 1]
cmp eax, r13d
jge 0x14001eca0
mov eax, r13d
sub eax, esi
mov dword [rsp + 0x38], eax
cmp ebx, 0xfffffffd
je 0x14001ef60
sub eax, 1
cmp eax, ebx
jle 0x14001efb0
movsxd r15, ebx
test ebx, ebx
jle 0x14001ef50
lea r9, str.crypto_rsa_rsa_pss.c
mov r8d, 0xcb
mov rcx, r15
mov rdx, r9
call fcn.14000e4c0
mov r14, rax
test rax, rax
je 0x14001f002
mov rcx, qword [rdi + 8]
xor r9d, r9d
mov r8, r15
mov rdx, rax
call fcn.1402171d0
test eax, eax
jle 0x14001ef40
call fcn.140119a10
xor edi, edi
mov r10, rax
test rax, rax
je 0x14001ec67
xor r8d, r8d
mov rdx, r12
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.14011b460
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
jne 0x14001ecf0
mov rcx, r10
call fcn.140119a30
mov r9d, 0xfc
mov rdx, r15
mov rcx, r14
lea r8, str.crypto_rsa_rsa_pss.c
call fcn.14000e8c0
mov eax, edi
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call fcn.140110230
lea r8, str.RSA_padding_add_PKCS1_PSS_mgf1
mov edx, 0xc1
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.140110360
xor r8d, r8d
mov edx, 0x6e
mov ecx, 4
call fcn.140110450
movsxd r15, ebx
xor r10d, r10d
xor r14d, r14d
xor edi, edi
jmp 0x14001ec67
mov ebx, 0xfffffffd
jmp 0x14001eb92
mov rcx, r10
mov r8d, 8
lea rdx, [0x14034e730]
call fcn.140119af0
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
je 0x14001ec67
mov rdx, qword [rsp + 0xb0]
movsxd r12, esi
mov rcx, r10
mov r8, r12
call fcn.140119af0
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
je 0x14001ec67
test ebx, ebx
je 0x14001ed5f
mov rcx, r10
mov r8, r15
mov rdx, r14
mov qword [rsp + 0x40], r10
call fcn.140119af0
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
je 0x14001ec67
mov r11d, dword [rsp + 0x38]
xor r8d, r8d
mov rcx, r10
mov qword [rsp + 0x38], r10
sub r11d, 1
movsxd rdx, r11d
mov dword [rsp + 0x4c], r11d
add rdx, rbp
mov qword [rsp + 0x40], rdx
call fcn.140119d70
mov r10, qword [rsp + 0x38]
test eax, eax
mov edi, eax
je 0x14001ec67
mov rax, qword [rsp + 0xc0]
mov r9d, esi
mov rcx, rbp
xor edi, edi
mov rdx, qword [rsp + 0x40]
mov r11d, dword [rsp + 0x4c]
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x20], rax
mov r8, rdx
mov edx, r11d
call fcn.14021f060
mov r10, qword [rsp + 0x38]
test eax, eax
mov edx, eax
jne 0x14001ec67
mov eax, r13d
sub eax, ebx
sub eax, esi
cdqe
lea rcx, [rbp + rax - 2]
xor byte [rcx], 1
test ebx, ebx
jle 0x14001efef
lea eax, [rbx - 1]
add rcx, 1
cmp eax, 0xe
jbe 0x14001eff7
movsxd r13, r13d
mov r8d, ebx
xor eax, eax
mov rdx, r13
shr r8d, 4
sub rdx, r12
shl r8, 4
sub rdx, 1
sub rdx, r15
add rdx, rbp
nop
movdqu xmm2, xmmword [rdx + rax]
movdqu xmm0, xmmword [r14 + rax]
pxor xmm0, xmm2
movups xmmword [rdx + rax], xmm0
add rax, 0x10
cmp rax, r8
jne 0x14001ee20
mov r8d, ebx
and r8d, 0xfffffff0
mov eax, r8d
mov edx, r8d
add rcx, rax
cmp r8d, ebx
je 0x14001ef0d
mov r9d, ebx
sub r9d, r8d
lea eax, [r9 - 1]
cmp eax, 6
jbe 0x14001ee9c
mov rax, r13
movq xmm0, qword [r14 + r8]
sub rax, r12
sub rax, 1
sub rax, r15
add rax, r8
add rax, rbp
movq xmm1, qword [rax]
pxor xmm0, xmm1
movq qword [rax], xmm0
mov eax, r9d
and eax, 0xfffffff8
mov r8d, eax
add edx, eax
add rcx, r8
cmp r9d, eax
je 0x14001ef0d
movsxd rax, edx
movzx eax, byte [r14 + rax]
xor byte [rcx], al
lea eax, [rdx + 1]
cmp ebx, eax
jle 0x14001ef0d
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 1], al
lea eax, [rdx + 2]
cmp ebx, eax
jle 0x14001ef0d
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 2], al
lea eax, [rdx + 3]
cmp ebx, eax
jle 0x14001ef0d
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 3], al
lea eax, [rdx + 4]
cmp ebx, eax
jle 0x14001ef0d
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 4], al
lea eax, [rdx + 5]
cmp ebx, eax
jle 0x14001ef0d
cdqe
add edx, 6
movzx eax, byte [r14 + rax]
xor byte [rcx + 5], al
cmp ebx, edx
jle 0x14001ef0d
movsxd rdx, edx
movzx eax, byte [r14 + rdx]
xor byte [rcx + 6], al
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x14001ef28
mov ecx, 8
mov eax, 0xff
sub ecx, dword [rsp + 0x48]
sar eax, cl
and byte [rbp], al
mov byte [rbp + r13 - 1], 0xbc
mov edi, 1
jmp 0x14001ec67
xor r10d, r10d
xor edi, edi
jmp 0x14001ec67
xor r14d, r14d
jmp 0x14001ec36
lea ebx, [rax - 2]
jmp 0x14001ebed
mov ebx, eax
jmp 0x14001eb92
call fcn.140110230
lea r8, str.RSA_padding_add_PKCS1_PSS_mgf1
mov edx, 0xb6
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.140110360
xor r8d, r8d
mov edx, 0x88
jmp 0x14001ecc5
call fcn.140110230
mov edx, 0xc7
movsxd r15, ebx
xor r14d, r14d
lea r8, str.RSA_padding_add_PKCS1_PSS_mgf1
lea rcx, str.crypto_rsa_rsa_pss.c
xor edi, edi
call fcn.140110360
xor r8d, r8d
mov edx, 0x6e
mov ecx, 4
call fcn.140110450
xor r10d, r10d
jmp 0x14001ec67
movsxd r13, r13d
jmp 0x14001ef0d
xor r8d, r8d
movsxd r13, r13d
jmp 0x14001ee55
call fcn.140110230
lea r9, str.crypto_rsa_rsa_pss.c
lea r8, str.RSA_padding_add_PKCS1_PSS_mgf1
xor edi, edi
mov rcx, r9
mov edx, 0xcd
call fcn.140110360
xor r8d, r8d
mov edx, 0xc0100
mov ecx, 4
call fcn.140110450
xor r10d, r10d
jmp 0x14001ec67