Function at 0x14033c560
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r12
push r15
mov eax, 0x50
call fcn.1401d84a0
sub rsp, rax
mov r12, rdx
test rdx, rdx
mov rdx, r8
mov r15, r9
mov rbp, r8
je 0x14033c7da
mov qword [rsp + 0x70], rbx
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], rsi
mov rsi, qword [rsp + 0xa0]
mov qword [rsp + 0x48], 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], rsi
mov qword [rsp + 0x20], r13
call fcn.14033c350
test eax, eax
je 0x14033c7d3
mov r8d, 0x186
mov qword [rsp + 0x80], rdi
lea rdx, str.providersimplementationskdfs_tls1_prf.c
mov rcx, rbx
call fcn.1401fab50
mov rdi, rax
test rax, rax
jne 0x14033c65c
call fcn.1401faf30
lea r8, str.tls1_prf_alg
mov edx, 0x187
lea rcx, str.providersimplementationskdfs_tls1_prf.c
call fcn.1401fb050
xor r8d, r8d
lea ecx, [rdi + 0x39]
mov edx, 0xc0100
call fcn.1401fb150
xor eax, eax
mov rdi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
add rsp, 0x50
pop r15
pop r12
pop rbp
ret
mov r9, qword [rsp + 0x90]
sub rbp, r14
mov qword [rsp + 0x30], rbx
mov r8, r14
mov qword [rsp + 0x28], rdi
mov rcx, r12
mov qword [rsp + 0x20], r13
lea rdx, [r15 + rbp]
call fcn.14033c350
test eax, eax
jne 0x14033c6a3
mov r9d, 0x18d
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rdi
call fcn.1401fac90
jmp 0x14033c634
xor ecx, ecx
test rbx, rbx
je 0x14033c7b1
cmp rbx, 8
jb 0x14033c784
lea rdx, [rsi - 1]
lea rax, [rbx - 1]
add rdx, rbx
add rax, rdi
cmp rsi, rax
ja 0x14033c6d4
cmp rdx, rdi
jae 0x14033c784
cmp rbx, 0x40
jb 0x14033c74f
mov r8, rbx
mov r9, rbx
and r8d, 0x3f
sub r9, r8
mov rdx, rdi
lea rax, [rsi + 0x10]
sub rdx, rsi
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 0x14033c6f1
cmp r8, 8
jb 0x14033c77f
mov rdx, rbx
and rdx, 0xfffffffffffffff8
mov r8, rdi
lea rax, [rcx + rsi]
sub r8, rsi
movq xmm0, qword [rax]
add rcx, 8
movq xmm1, qword [rax + r8]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax - 8], xmm1
cmp rcx, rdx
jb 0x14033c760
cmp rcx, rbx
jae 0x14033c7b1
mov r8, rdi
lea rax, [rcx + rsi]
sub r8, rsi
mov rdx, rbx
sub rdx, rcx
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x14033c7a0
mov r9d, 0x192
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rdi
call fcn.1401fac90
mov eax, 1
jmp 0x14033c636
xor eax, eax
jmp 0x14033c63e
mov rax, qword [rsp + 0xa8]
mov r8, r15
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call fcn.14033c350
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
add rsp, 0x50
pop r15
pop r12
pop rbp
ret