Function at 0x140237aa0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r12
push r15
mov eax, 0x40
call fcn.1402b6820
sub rsp, rax
mov rsi, qword [rsp + 0x98]
mov r15, r9
mov rbx, r8
mov r12, rdx
mov rdi, rcx
call fcn.1401835e0
cmp eax, 0x72
jne 0x140237d1a
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], r14
mov r14, rbx
shr r14, 1
and ebx, 1
lea r13, [rbx + r14]
call fcn.1401e8400
mov rdi, qword [rsp + 0xa0]
mov rcx, rax
mov rax, qword [rsp + 0x90]
mov r9, r15
mov qword [rsp + 0x30], rdi
mov r8, r13
mov qword [rsp + 0x28], rsi
mov rdx, r12
mov qword [rsp + 0x20], rax
call fcn.140237830
test eax, eax
je 0x140237d13
mov r8d, 0x104
mov qword [rsp + 0x70], rbp
lea rdx, str.cryptokdf_tls1_prf.c
mov rcx, rdi
call fcn.1401df1e0
mov rbp, rax
test rax, rax
jne 0x140237b8e
lea r9, str.cryptokdf_tls1_prf.c
mov dword [rsp + 0x20], 0x105
lea edx, [rax + 0x6f]
lea ecx, [rax + 0x34]
lea r8d, [rax + 0x41]
call fcn.1401d4a20
xor eax, eax
mov rbp, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
mov r14, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r12
pop rdi
pop rsi
pop rbx
ret
lea rbx, [r14 + r12]
call fcn.1401cc150
mov rcx, rax
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x90]
mov r9, r15
mov qword [rsp + 0x28], rbp
mov r8, r13
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.140237830
test eax, eax
jne 0x140237bdd
mov r9d, 0x10a
lea r8, str.cryptokdf_tls1_prf.c
mov rdx, rdi
mov rcx, rbp
call fcn.1401df350
jmp 0x140237b6e
xor ecx, ecx
test rdi, rdi
je 0x140237cf1
cmp rdi, 8
jb 0x140237cc3
lea rdx, [rsi - 1]
lea rax, [rdi - 1]
add rdx, rdi
add rax, rbp
cmp rsi, rax
ja 0x140237c0e
cmp rdx, rbp
jae 0x140237cc3
mov rdx, rbp
cmp rdi, 0x40
jb 0x140237c90
mov r8, rdi
mov r9, rdi
and r8d, 0x3f
sub r9, r8
lea rax, [rsi + 0x10]
sub rdx, rsi
nop dword [rax + 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 0x140237c30
cmp r8, 8
jb 0x140237cbe
jmp 0x140237c93
sub rdx, rsi
mov r8, rdi
and r8, 0xfffffffffffffff8
lea rax, [rcx + rsi]
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 0x140237ca0
cmp rcx, rdi
jae 0x140237cf1
mov r8, rbp
lea rax, [rcx + rsi]
sub r8, rsi
mov rdx, rdi
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 0x140237ce0
mov r9d, 0x10f
lea r8, str.cryptokdf_tls1_prf.c
mov rdx, rdi
mov rcx, rbp
call fcn.1401df350
mov eax, 1
jmp 0x140237b70
xor eax, eax
jmp 0x140237b75
mov rax, qword [rsp + 0xa0]
mov r9, r15
mov qword [rsp + 0x30], rax
mov r8, rbx
mov rax, qword [rsp + 0x90]
mov rdx, r12
mov qword [rsp + 0x28], rsi
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.140237830
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
add rsp, 0x40
pop r15
pop r12
pop rdi
pop rsi
pop rbx
ret