Function at 0x14001efe0
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.140004630
mov esi, eax
test eax, eax
js 0x14001f18f
cmp ebx, 0xffffffff
je 0x14001f430
cmp ebx, 0xfffffffe
je 0x14001f1a0
cmp ebx, 0xfffffffd
jl 0x14001f440
mov rcx, qword [rdi + 0x28]
call fcn.1400b9f20
mov rcx, rdi
sub eax, 1
and eax, 7
mov dword [rsp + 0x48], eax
mov r15d, eax
call fcn.14021bd70
mov r13d, eax
test r15d, r15d
jne 0x14001f084
mov byte [rbp], 0
sub r13d, 1
add rbp, 1
lea eax, [rsi + 1]
cmp eax, r13d
jge 0x14001f160
mov eax, r13d
sub eax, esi
mov dword [rsp + 0x38], eax
cmp ebx, 0xfffffffd
je 0x14001f420
sub eax, 1
cmp eax, ebx
jle 0x14001f470
movsxd r15, ebx
test ebx, ebx
jle 0x14001f410
lea r9, str.crypto_rsa_rsa_pss.c
mov r8d, 0xcb
mov rcx, r15
mov rdx, r9
call fcn.14000e980
mov r14, rax
test rax, rax
je 0x14001f4c2
mov rcx, qword [rdi + 8]
xor r9d, r9d
mov r8, r15
mov rdx, rax
call fcn.140217690
test eax, eax
jle 0x14001f400
call fcn.140119ed0
xor edi, edi
mov r10, rax
test rax, rax
je 0x14001f127
xor r8d, r8d
mov rdx, r12
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.14011b920
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
jne 0x14001f1b0
mov rcx, r10
call fcn.140119ef0
mov r9d, 0xfc
mov rdx, r15
mov rcx, r14
lea r8, str.crypto_rsa_rsa_pss.c
call fcn.14000ed80
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.1401106f0
lea r8, str.RSA_padding_add_PKCS1_PSS_mgf1
mov edx, 0xc1
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.140110820
xor r8d, r8d
mov edx, 0x6e
mov ecx, 4
call fcn.140110910
movsxd r15, ebx
xor r10d, r10d
xor r14d, r14d
xor edi, edi
jmp 0x14001f127
mov ebx, 0xfffffffd
jmp 0x14001f052
mov rcx, r10
mov r8d, 8
lea rdx, [0x14034e750]
call fcn.140119fb0
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
je 0x14001f127
mov rdx, qword [rsp + 0xb0]
movsxd r12, esi
mov rcx, r10
mov r8, r12
call fcn.140119fb0
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
je 0x14001f127
test ebx, ebx
je 0x14001f21f
mov rcx, r10
mov r8, r15
mov rdx, r14
mov qword [rsp + 0x40], r10
call fcn.140119fb0
mov r10, qword [rsp + 0x40]
test eax, eax
mov edi, eax
je 0x14001f127
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.14011a230
mov r10, qword [rsp + 0x38]
test eax, eax
mov edi, eax
je 0x14001f127
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.14021f520
mov r10, qword [rsp + 0x38]
test eax, eax
mov edx, eax
jne 0x14001f127
mov eax, r13d
sub eax, ebx
sub eax, esi
cdqe
lea rcx, [rbp + rax - 2]
xor byte [rcx], 1
test ebx, ebx
jle 0x14001f4af
lea eax, [rbx - 1]
add rcx, 1
cmp eax, 0xe
jbe 0x14001f4b7
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 0x14001f2e0
mov r8d, ebx
and r8d, 0xfffffff0
mov eax, r8d
mov edx, r8d
add rcx, rax
cmp r8d, ebx
je 0x14001f3cd
mov r9d, ebx
sub r9d, r8d
lea eax, [r9 - 1]
cmp eax, 6
jbe 0x14001f35c
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 0x14001f3cd
movsxd rax, edx
movzx eax, byte [r14 + rax]
xor byte [rcx], al
lea eax, [rdx + 1]
cmp ebx, eax
jle 0x14001f3cd
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 1], al
lea eax, [rdx + 2]
cmp ebx, eax
jle 0x14001f3cd
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 2], al
lea eax, [rdx + 3]
cmp ebx, eax
jle 0x14001f3cd
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 3], al
lea eax, [rdx + 4]
cmp ebx, eax
jle 0x14001f3cd
cdqe
movzx eax, byte [r14 + rax]
xor byte [rcx + 4], al
lea eax, [rdx + 5]
cmp ebx, eax
jle 0x14001f3cd
cdqe
add edx, 6
movzx eax, byte [r14 + rax]
xor byte [rcx + 5], al
cmp ebx, edx
jle 0x14001f3cd
movsxd rdx, edx
movzx eax, byte [r14 + rdx]
xor byte [rcx + 6], al
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x14001f3e8
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 0x14001f127
xor r10d, r10d
xor edi, edi
jmp 0x14001f127
xor r14d, r14d
jmp 0x14001f0f6
lea ebx, [rax - 2]
jmp 0x14001f0ad
mov ebx, eax
jmp 0x14001f052
call fcn.1401106f0
lea r8, str.RSA_padding_add_PKCS1_PSS_mgf1
mov edx, 0xb6
lea rcx, str.crypto_rsa_rsa_pss.c
call fcn.140110820
xor r8d, r8d
mov edx, 0x88
jmp 0x14001f185
call fcn.1401106f0
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.140110820
xor r8d, r8d
mov edx, 0x6e
mov ecx, 4
call fcn.140110910
xor r10d, r10d
jmp 0x14001f127
movsxd r13, r13d
jmp 0x14001f3cd
xor r8d, r8d
movsxd r13, r13d
jmp 0x14001f315
call fcn.1401106f0
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.140110820
xor r8d, r8d
mov edx, 0xc0100
mov ecx, 4
call fcn.140110910
xor r10d, r10d
jmp 0x14001f127