Function at 0x140171490
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r12
push r15
mov eax, 0x50
call fcn.1401e4c70
sub rsp, rax
mov r12, rdx
test rdx, rdx
mov rdx, r8
mov r15, r9
mov rbp, r8
je 0x14017171a
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.140171280
test eax, eax
je 0x140171713
mov r8d, 0x186
mov qword [rsp + 0x80], rdi
lea rdx, str.providersimplementationskdfs_tls1_prf.c
mov rcx, rbx
call fcn.14002f2a0
mov rdi, rax
test rax, rax
jne 0x14017158c
call fcn.14002f680
lea r8, str.tls1_prf_alg
mov edx, 0x187
lea rcx, str.providersimplementationskdfs_tls1_prf.c
call fcn.14002f7a0
xor r8d, r8d
lea ecx, [rdi + 0x39]
mov edx, 0xc0100
call fcn.14002f8a0
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.140171280
test eax, eax
jne 0x1401715d3
mov r9d, 0x18d
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rdi
call fcn.14002f3e0
jmp 0x140171564
xor ecx, ecx
test rbx, rbx
je 0x1401716f1
cmp rbx, 8
jb 0x1401716c4
lea rdx, [rsi - 1]
lea rax, [rbx - 1]
add rdx, rbx
add rax, rdi
cmp rsi, rax
ja 0x140171604
cmp rdx, rdi
jae 0x1401716c4
cmp rbx, 0x40
jb 0x140171683
mov rdx, rbx
mov r8, rbx
and edx, 0x3f
sub r8, rdx
mov r9, rdi
lea rax, [rsi + 0x10]
sub r9, rsi
movdqu xmm0, xmmword [rax - 0x10]
add rcx, 0x40
movdqu xmm1, xmmword [r9 + rax - 0x10]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [r9 + rax - 0x40]
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm2, xmmword [rax - 0x40]
movdqu xmm1, xmmword [r9 + 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 [r9 + rax - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp rcx, r8
jb 0x140171620
cmp rdx, 8
jb 0x1401716bf
mov rdx, rbx
and rdx, 0xfffffffffffffff8
mov r8, rdi
lea rax, [rcx + rsi]
sub r8, rsi
nop dword [rax]
nop dword [rax + rax]
movq xmm0, qword [rax]
add rcx, 8
movq xmm1, qword [r8 + rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax - 8], xmm1
cmp rcx, rdx
jb 0x1401716a0
cmp rcx, rbx
jae 0x1401716f1
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 [r8 + rax]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x1401716e0
mov r9d, 0x192
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rdi
call fcn.14002f3e0
mov eax, 1
jmp 0x140171566
xor eax, eax
jmp 0x14017156e
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.140171280
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
add rsp, 0x50
pop r15
pop r12
pop rbp
ret