Function at 0x1401c5d10
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rdi
push r12
push r15
mov eax, 0x48
call fcn.1402a9b20
sub rsp, rax
mov rdi, qword [rsp + 0xa0]
mov r12, rdx
test rdx, rdx
mov r15, r9
mov rdx, r8
mov rbp, r8
je 0x1401c5f8a
mov qword [rsp + 0x70], rbx
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x80], r13
mov r13, qword [rsp + 0x98]
mov qword [rsp + 0x40], r14
lea r14, [r9 + 1]
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rbx
shr r14, 1
mov r8, r14
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r13
call fcn.1401c5b00
test eax, eax
je 0x1401c5f83
mov r8d, 0x1bb
mov qword [rsp + 0x78], rsi
lea rdx, str.providersimplementationskdfs_tls1_prf.c
mov rcx, rbx
call fcn.1401108e0
mov rsi, rax
test rax, rax
jne 0x1401c5e04
call fcn.140116d60
lea r8, str.tls1_prf_alg
mov edx, 0x1bc
lea rcx, str.providersimplementationskdfs_tls1_prf.c
call fcn.140116e80
xor r8d, r8d
lea ecx, [rsi + 0x39]
mov edx, 0xc0100
call fcn.140116f80
xor eax, eax
mov rsi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
add rsp, 0x48
pop r15
pop r12
pop rdi
pop rbp
ret
mov r9, qword [rsp + 0x90]
sub rbp, r14
mov qword [rsp + 0x30], rbx
mov r8, r14
mov qword [rsp + 0x28], rsi
mov rcx, r12
mov qword [rsp + 0x20], r13
lea rdx, [r15 + rbp]
call fcn.1401c5b00
test eax, eax
jne 0x1401c5e4b
mov r9d, 0x1c2
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rsi
call fcn.140110a20
jmp 0x1401c5de0
xor ecx, ecx
test rbx, rbx
je 0x1401c5f61
cmp rbx, 8
jb 0x1401c5f33
lea rdx, [rdi - 1]
lea rax, [rbx - 1]
add rdx, rbx
add rax, rsi
cmp rdi, rax
ja 0x1401c5e7c
cmp rdx, rsi
jae 0x1401c5f33
mov rdx, rsi
cmp rbx, 0x40
jb 0x1401c5f00
mov r8, rbx
mov r9, rbx
and r8d, 0x3f
sub r9, r8
lea rax, [rdi + 0x10]
sub rdx, rdi
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x10]
add rcx, 0x40
movdqu xmm1, xmmword [rdx + rax - 0x10]
movdqu xmm2, xmmword [rdx + rax]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rdx + rax - 0x30]
xorps xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rdx + rax - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp rcx, r9
jb 0x1401c5ea0
cmp r8, 8
jb 0x1401c5f2e
jmp 0x1401c5f03
sub rdx, rdi
mov r8, rbx
and r8, 0xfffffffffffffff8
lea rax, [rcx + rdi]
nop
movq xmm0, qword [rax]
add rcx, 8
movq xmm1, qword [rdx + rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax - 8], xmm1
cmp rcx, r8
jb 0x1401c5f10
cmp rcx, rbx
jae 0x1401c5f61
mov r8, rsi
lea rax, [rcx + rdi]
sub r8, rdi
mov rdx, rbx
sub rdx, rcx
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x1401c5f50
mov r9d, 0x1c7
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rsi
call fcn.140110a20
mov eax, 1
jmp 0x1401c5de2
xor eax, eax
jmp 0x1401c5de7
mov rax, qword [rsp + 0xa8]
mov r8, r15
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
call fcn.1401c5b00
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
add rsp, 0x48
pop r15
pop r12
pop rdi
pop rbp
ret