Function at 0x1400fe843
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 8], rcx
push rbp
push rdi
push r12
push r14
lea rbp, [rax - 0x5f]
add rsp, 0xffffffffffffff28
mov qword [rax - 0x28], rbx
xorps xmm0, xmm0
mov qword [rax - 0x30], rsi
xor r14d, r14d
mov qword [rdx], r14
mov r12, rdx
mov qword [rdx + 8], r14
mov qword [rdx + 0x10], r14
mov qword [rdx + 0x18], 0x336f0765
add qword [rdx + 0x18], 0x39eee3a2
sub qword [rdx + 0x18], 0x179c667c
sub qword [rdx + 0x18], 0x55c1848a
mov rsi, qword [rcx + 0x868]
mov rbx, qword [rcx + 0x830]
mov qword [rax - 0x38], r13
mov r13, rcx
lea rax, [rbp - 0x29]
lea rdx, [rsi + 1]
mov qword [rbp - 0x31], rax
lea rcx, [rbp - 0x31]
movups xmmword [rbp - 0x29], xmm0
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm0
call fcn.14001781c
mov r8, rax
mov ecx, 0x49b3789c
sub ecx, 0x34940720
xor ecx, 0x5d85e044
xor ecx, 0x4929af49
mov r9d, 0x790e89cd
sub r9d, 0x6132adbb
add r9d, 0x17caeb99
xor r9d, 0x2fa6c754
test rsi, rsi
je 0x1400fe876
mov rdx, rax
sub rbx, rax
mov rdi, rsi
movzx eax, cx
lea rdx, [rdx + 2]
and ax, r9w
ror ecx, 8
xor ax, word [rbx + rdx - 2]
mov word [rdx - 2], ax
sub rdi, 1
jne 0x1400fe855
mov word [r8 + rsi*2], r14w
mov r14, qword [rbp - 0x31]
cmp word [r14], 0
je 0x1400fed1e
mov qword [rsp + 0xb8], r15
nop dword [rax + rax]
mov edx, 0x12c2c79
xor edx, 0x4f935f7c
xor edx, 0x4ebf730f
mov rcx, r14
call 0x14009a550
mov qword [rbp + 0x6f], rax
nop
movabs r15, 0xffffffff1aef67ab
xor r15, 0x1624442a
add r15, 0x4334ff80
add r15, 0x7fffffff
add r15, 0x2fffdcff
test rax, rax
je 0x1400fe8f2
mov rbx, rax
sub rbx, r14
sar rbx, 1
jmp 0x1400fe909
mov rbx, r15
nop dword [rax + rax]
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x1400fe8fa
lea rdi, [rbx + 1]
mov eax, 0x3de5a879
sub eax, 0x4521525
add eax, 0x3d8cd7de
sub eax, 0x77206b30
mul rdi
cmovo rax, r15
mov rcx, rax
call fcn.1400993a0
mov r9, rbx
mov qword [rbp + 0x7f], rax
mov r8, r14
mov rdx, rdi
mov rcx, rax
mov rsi, rax
call fcn.14009a6b0
cmp byte [r13 + 0x884], 0
je 0x1400fe9e5
xor ebx, ebx
nop word [rax + rax]
lea rdx, [rbp + 7]
mov rcx, r13
call fcn.1400f02d0
mov rcx, qword [rbp + 0x77]
mov rdx, rsi
mov rdi, rax
call fcn.1400f3534
cmp eax, dword [rdi]
jle 0x1400fe9e5
mov edx, 0x69dd0724
sub edx, 0x3c8ef0d2
sub edx, 0x2d4e1632
mov rcx, rsi
call fcn.14009a7d0
test rax, rax
jne 0x1400fe9c7
mov rax, r15
inc rax
cmp word [rsi + rax*2], bx
jne 0x1400fe9a9
cmp rax, 1
jbe 0x1400febc6
dec rax
lea rax, [rsi + rax*2]
mov word [rax], bx
sub rax, rsi
sar rax, 1
lea rax, [r14 + rax*2]
mov qword [rbp + 0x6f], rax
cmp byte [r13 + 0x884], bl
jne 0x1400fe961
xor r14d, r14d
xorps xmm0, xmm0
lea rax, [rbp - 0x69]
mov qword [rbp - 0x71], rax
mov rdx, r15
movups xmmword [rbp - 0x69], xmm0
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm0
inc rdx
cmp word [rsi + rdx*2], 0
jne 0x1400fea02
lea rcx, [rbp - 0x71]
mov qword [rbp - 0x39], rdx
call fcn.14001781c
cmp qword [rbp - 0x39], 0
pushf
mov edx, 0x712354ef
xor edx, 0x5e148543
sub edx, 0x2d84933b
popf
mov rdi, r14
jbe 0x1400fea88
mov r8, rsi
mov r9d, 0x63f59f0b
sub r9d, 0x2402d17d
sub r9d, 0x3ff2cc8f
sub r8, rax
nop word [rax + rax]
movzx ecx, dx
lea rax, [rax + 2]
and cx, r9w
ror edx, 8
xor cx, word [r8 + rax - 2]
inc rdi
mov word [rax - 2], cx
cmp rdi, qword [rbp - 0x39]
jb 0x1400fea63
mov rax, qword [r12 + 8]
test rax, rax
je 0x1400fec0d
mov rcx, qword [r12 + 0x10]
cmp rax, rcx
jb 0x1400fec04
add rcx, qword [r12 + 0x18]
mov qword [r12 + 0x10], rcx
shl rcx, 6
call fcn.140099820
mov rcx, qword [r12 + 8]
mov r13, rax
mov qword [rbp - 0x79], rax
mov r15, r14
test rcx, rcx
je 0x1400feb7c
nop
movabs rsi, 0xffffffff2b0f7664
sub rsi, 0x171d0c11
add rsi, 0x7fffffff
add rsi, 0x6c0d9576
lea rbx, [rax + 0x38]
sub rsi, rax
xor r13d, r13d
nop dword [rax]
mov r14, qword [r12]
lea rax, [rbx - 0x30]
mov qword [rbx - 0x38], rax
lea rcx, [rbx - 0x38]
xorps xmm0, xmm0
add r14, rsi
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov rdx, qword [r14 + rbx + 0x38]
mov qword [rbx], rdx
call fcn.14001781c
mov rdi, r13
cmp qword [rbx], r13
jbe 0x1400feb5c
nop word [rax + rax]
mov rcx, qword [r14 + rbx]
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx]
jb 0x1400feb44
mov rcx, qword [r12 + 8]
inc r15
sub rbx, 0xffffffffffffffc0
cmp r15, rcx
jb 0x1400feb00
mov rsi, qword [rbp + 0x7f]
xor r14d, r14d
mov r13, qword [rbp - 0x79]
cmp qword [r12], 0
je 0x1400febfb
mov rbx, r14
test rcx, rcx
je 0x1400febf2
nop
mov rax, qword [r12]
mov rcx, qword [r14 + rax]
lea rdi, [rax + 8]
add rdi, r14
cmp rcx, rdi
jne 0x1400febd2
xor eax, eax
mov ecx, 0x47ea7fa3
sub ecx, 0x37a02455
sub ecx, 0x104a5b1e
rep stosb byte [rdi], al
jmp 0x1400febd7
xor r14d, r14d
mov qword [rbp + 0x6f], r14
jmp 0x1400fe9e8
call fcn.140099570
inc rbx
neg r14
add r14, 0xffffffffffffffc0
neg r14
cmp rbx, qword [r12 + 8]
jb 0x1400feb94
xor r14d, r14d
mov rcx, qword [r12]
call fcn.140099570
mov qword [r12], r13
jmp 0x1400fec34
mov r13, qword [r12]
jmp 0x1400fec34
mov r13, qword [r12]
test r13, r13
jne 0x1400fec34
mov rcx, qword [r12 + 0x18]
mov qword [r12 + 0x10], rcx
shl rcx, 6
call fcn.140099820
mov r13, rax
mov qword [r12], rax
mov rax, qword [r12 + 8]
xorps xmm0, xmm0
mov rbx, rax
shl rbx, 6
add rbx, r13
inc rax
mov rcx, rbx
mov qword [r12 + 8], rax
lea rax, [rbx + 8]
mov qword [rbx], rax
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov rax, qword [rbp - 0x39]
mov qword [rbx + 0x38], rax
mov rdx, qword [rbp - 0x39]
call fcn.14001781c
cmp qword [rbx + 0x38], 0
mov rdi, r14
jbe 0x1400feca8
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbp - 0x71]
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x1400fec8f
mov rcx, qword [rbp - 0x71]
lea rax, [rbp - 0x69]
cmp rcx, rax
jne 0x1400fecd7
lea rdi, [rbp - 0x69]
xor eax, eax
mov ecx, 0x5e0a2046
sub ecx, 0x2e62674c
sub ecx, 0x2fa7b8ca
rep stosb byte [rdi], al
jmp 0x1400fecdc
call fcn.140099570
mov rcx, rsi
call fcn.1400993b0
mov rax, qword [rbp + 0x6f]
test rax, rax
je 0x1400fed12
mov r13, qword [rbp + 0x67]
cmp byte [r13 + 0x884], 0
je 0x1400fed12
cmp word [rax + 2], 0
lea r14, [rax + 2]
jne 0x1400fe897
mov r14, qword [rbp - 0x31]
mov r15, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xc0]
lea rax, [rbp - 0x29]
mov rsi, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
cmp r14, rax
jne 0x1400fed79
xor eax, eax
lea rdi, [rbp - 0x29]
mov ecx, 0x47c8cc51
sub ecx, 0x88caeb4
add ecx, 0x6e70b43
xor ecx, 0x462328d0
rep stosb byte [rdi], al
mov rax, r12
neg rsp
add rsp, 0xffffffffffffff28
neg rsp
pop r14
pop r12
pop rdi
pop rbp
ret
mov rcx, r14
call fcn.140099570
mov rax, r12
add rsp, 0xd8
pop r14
pop r12
pop rdi
pop rbp
ret