Function at 0x14018fea0
Capabilities:
Encode data using xor

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x40
mov qword [rsp + 0x30], 0
mov rbx, rcx
mov rbp, r9
mov rcx, rdx
test rbx, rbx
je 0x14018ffca
test rdx, rdx
je 0x14018ffca
movzx eax, byte [r8]
sub eax, 0x68
mov edi, eax
jne 0x14018feed
movzx eax, byte [r8 + 1]
sub eax, 0x65
mov edi, eax
je 0x140190040
mov rdx, r8
call fcn.14003adf0
cmp qword [rsp + 0xa8], 0
mov rsi, rax
je 0x14018ff15
xor eax, eax
mov rdx, qword [rsp + 0xa8]
test rsi, rsi
setne al
mov dword [rdx], eax
test rsi, rsi
je 0x14018ffc0
mov eax, dword [rsi + 8]
cmp eax, 4
je 0x1401900d8
ja 0x14018ffe0
sub eax, 1
cmp eax, 1
ja 0x140190060
lea rcx, [rsp + 0x30]
mov rdx, rbp
test edi, edi
jne 0x1401901a0
call fcn.1400f7880
mov rcx, qword [rsp + 0x30]
test eax, eax
je 0x14018ffc5
test rcx, rcx
je 0x14018ffc5
mov eax, dword [rsi + 8]
cmp eax, 2
je 0x140190230
cmp eax, 1
je 0x140190210
call fcn.1400fcf50
cmp dword [rsi + 8], 1
movsxd rdx, eax
jne 0x14018ff8c
lea rcx, [rdx + 8]
test al, 7
cmove rdx, rcx
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0xa0], rax
test rax, rax
jne 0x140190250
add rdx, 7
mov ecx, 1
shr rdx, 3
mov qword [rsp + 0xa0], rdx
cmovne rcx, rdx
jmp 0x140190004
mov rcx, qword [rsp + 0x30]
call fcn.1400fd190
xor eax, eax
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
cmp eax, 5
jne 0x140190060
test edi, edi
je 0x1401901b0
cmp qword [rsp + 0xa0], 0
mov ecx, 1
cmovne rcx, qword [rsp + 0xa0]
lea r14, str..._openssl_3.1.1_crypto_params_from_text.c
mov r8d, 0xd8
mov rdx, r14
call fcn.140038490
mov r12, rax
test rax, rax
je 0x14019048b
cmp qword [rsp + 0xa0], 0
mov r13, qword [rsp + 0x30]
jne 0x140190122
jmp 0x140190097
movzx eax, byte [r8 + 2]
lea rdx, [r8 + 3]
sub eax, 0x78
cmove r8, rdx
mov edi, eax
jmp 0x14018feed
lea r14, str..._openssl_3.1.1_crypto_params_from_text.c
mov r8d, 0xd8
mov ecx, 1
mov rdx, r14
call fcn.140038490
mov r12, rax
test rax, rax
je 0x14019048b
mov qword [rsp + 0xa0], 0
mov r13, qword [rsp + 0x30]
mov rax, qword [rsp + 0xa0]
movdqu xmm2, xmmword [rsi]
mov qword [rbx + 0x10], r12
mov rcx, r13
mov qword [rbx + 0x20], 0xffffffffffffffff
mov qword [rbx + 0x18], rax
movups xmmword [rbx], xmm2
call fcn.1400fd190
mov eax, 1
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
test edi, edi
je 0x1401902c8
mov rcx, rbp
call fcn.14033ce60
add rax, 1
mov qword [rsp + 0xa0], rax
mov rcx, qword [rsp + 0xa0]
lea r14, str..._openssl_3.1.1_crypto_params_from_text.c
mov r8d, 0xd8
mov rdx, r14
call fcn.140038490
mov r12, rax
test rax, rax
je 0x14019048b
mov r13, qword [rsp + 0x30]
mov eax, dword [rsi + 8]
cmp eax, 4
je 0x1401902a0
jbe 0x1401901d8
cmp eax, 5
jne 0x140190097
test edi, edi
jne 0x140190308
mov dword [rsp + 0x20], 0x3a
mov r9, rbp
lea r8, [rsp + 0x38]
mov rcx, r12
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0x38], 0
call fcn.14003a090
mov r13, qword [rsp + 0x30]
test eax, eax
jne 0x140190097
mov rcx, r13
call fcn.1400fd190
mov r8d, 0xe1
mov rdx, r14
mov rcx, r12
call fcn.140038320
jmp 0x14018ffca
call fcn.1400f7c90
jmp 0x14018ff51
mov rcx, rbp
call fcn.14033ce60
mov ecx, 1
shr rax, 1
mov qword [rsp + 0xa0], rax
cmovne rcx, rax
jmp 0x140190004
sub eax, 1
cmp eax, 1
ja 0x140190097
mov r8d, dword [rsp + 0xa0]
mov rdx, r12
mov rcx, r13
call fcn.1400fe000
cmp dword [rsi + 8], 1
je 0x140190341
mov r13, qword [rsp + 0x30]
jmp 0x140190097
call fcn.1400fe880
test eax, eax
jne 0x140190320
mov rcx, qword [rsp + 0x30]
jmp 0x14018ff74
call fcn.1400fe880
test eax, eax
jne 0x140190448
mov eax, dword [rsi + 8]
mov rcx, qword [rsp + 0x30]
jmp 0x14018ff6b
shl rax, 3
cmp rax, rdx
jae 0x1401900f4
call fcn.140015850
lea r8, str.prepare_from_text
mov edx, 0x68
lea rcx, str..._openssl_3.1.1_crypto_params_from_text.c
call fcn.140015980
mov ecx, 0xf
xor r8d, r8d
mov edx, 0x74
call fcn.140015a70
mov rcx, qword [rsp + 0x30]
jmp 0x14018ffc5
mov r8, qword [rsp + 0xa0]
mov rdx, rbp
mov rcx, r12
call fcn.14033ce70
sub qword [rsp + 0xa0], 1
jmp 0x140190097
call fcn.140015850
lea r8, str.prepare_from_text
mov edx, 0x72
lea rcx, str..._openssl_3.1.1_crypto_params_from_text.c
call fcn.140015980
mov ecx, 0xf
xor r8d, r8d
mov edx, 0x80106
call fcn.140015a70
mov rcx, qword [rsp + 0x30]
jmp 0x14018ffc5
mov r8, qword [rsp + 0xa0]
mov rdx, rbp
mov rcx, r12
call fcn.14033cdb8
jmp 0x140190097
mov rcx, qword [rsp + 0x30]
mov edx, 1
call fcn.140104780
mov rcx, qword [rsp + 0x30]
test eax, eax
jne 0x14018ff74
jmp 0x14018ffc5
mov rcx, r13
call fcn.1400fe880
test eax, eax
je 0x140190201
mov rax, qword [rsp + 0xa0]
lea r8, [rax - 1]
cmp r8, 0xe
jbe 0x140190481
lea rdx, [rax - 0x10]
xor ecx, ecx
pcmpeqd xmm1, xmm1
mov rax, r12
shr rdx, 4
add rdx, 1
nop dword [rax]
movdqu xmm0, xmmword [rax]
add rcx, 1
add rax, 0x10
pxor xmm0, xmm1
movups xmmword [rax - 0x10], xmm0
cmp rcx, rdx
jb 0x140190380
shl rdx, 4
lea rax, [r12 + rdx]
sub r8, rdx
cmp qword [rsp + 0xa0], rdx
je 0x140190201
mov rcx, qword [rsp + 0xa0]
sub rcx, rdx
lea r9, [rcx - 1]
cmp r9, 6
jbe 0x1401903f4
movq xmm1, qword [0x140491a00]
add rdx, r12
movq xmm0, qword [rdx]
pxor xmm0, xmm1
movq qword [rdx], xmm0
mov rdx, rcx
and rdx, 0xfffffffffffffff8
add rax, rdx
sub r8, rdx
and ecx, 7
je 0x140190201
not byte [rax]
test r8, r8
je 0x140190201
not byte [rax + 1]
cmp r8, 1
je 0x140190201
not byte [rax + 2]
cmp r8, 2
je 0x140190201
not byte [rax + 3]
cmp r8, 3
je 0x140190201
not byte [rax + 4]
cmp r8, 4
je 0x140190201
not byte [rax + 5]
cmp r8, 5
je 0x140190201
not byte [rax + 6]
jmp 0x140190201
call fcn.140015850
lea r8, str.prepare_from_text
mov edx, 0x3e
lea rcx, str..._openssl_3.1.1_crypto_params_from_text.c
call fcn.140015980
mov ecx, 0xf
xor r8d, r8d
mov edx, 0x7a
call fcn.140015a70
mov rcx, qword [rsp + 0x30]
jmp 0x14018ffc5
mov rax, r12
xor edx, edx
jmp 0x1401903b2
call fcn.140015850
lea r8, str.OSSL_PARAM_allocate_from_text
mov edx, 0xd9
mov rcx, r14
call fcn.140015980
mov ecx, 0xf
xor r8d, r8d
mov edx, 0xc0100
call fcn.140015a70
mov rcx, qword [rsp + 0x30]
jmp 0x14018ffc5