Function at 0x1400fe550
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x141dd6408]
and eax, dword [0x141dd640c]
add eax, 0x8b118a79
imul rcx, rax, 0x16740871
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x60c9cce1
jbe 0x1400fe599
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov r11, qword [rbp + 0x60]
mov ecx, 0xf2fd5ed9
nop word cs:[rax + rax]
mov eax, dword [0x141dd6410]
or eax, dword [0x141dd6414]
add eax, 0xf45c99fe
imul rax, rcx
shr rax, 0x3e
imul edi, eax, 0x8f2c044f
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov r10, rsp
cmp edi, 0x7a2f6e67
ja 0x1400fe5b0
mov eax, dword [0x141dd6418]
add eax, dword [0x141dd641c]
xor eax, 0x37ca21ae
mov ecx, 0x9bd69109
imul rcx, rax
shr rcx, 0x39
cmp ecx, 0x29df051e
je 0x1400fe640
mov ebx, dword [0x141dd6420]
add ebx, dword [0x141dd6424]
or ebx, 0xd7fb7ff3
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov rdi, rsp
mov rcx, rdx
add rcx, r8
setb al
cmp ebx, 0x8936972f
jae 0x1400fe64f
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
jmp 0x1400fe60d
test al, al
jne 0x1400fe8f5
mov r14, qword [rsi]
lea rax, [r14 + r14]
cmp rax, rcx
cmova rcx, rax
mov eax, dword [0x141dd6428]
xor edx, edx
div dword [0x141dd642c]
nop word cs:[rax + rax]
mov eax, dword [0x141dd6430]
mov edx, dword [0x141dd6434]
add eax, edx
add eax, 0xbb717b8
shr eax, 2
imul rax, rax, 0x58378a63
shr rax, 0x38
xor eax, 0x759b0f34
xor edx, edx
cmp r11, 1
sete dl
lea rbx, [rdx*4 + 4]
cmp rbx, rcx
cmovbe rbx, rcx
cmp eax, 0x2e5aa7d4
jb 0x1400fe680
movabs r15, 0x8000000000000000
mov eax, dword [0x141dd6438]
xor edx, edx
div dword [0x141dd643c]
lea rax, [r9 + r11]
dec rax
mov rcx, r9
neg rcx
and rcx, rax
sub r15, r9
mov eax, dword [0x141dd6440]
imul eax, dword [0x141dd6444]
imul r12d, eax, 0x33967853
and r12d, 0xbafa9a9
mov rax, rcx
mul rbx
mov r8, rax
seto al
cmp r8, r15
seta dl
cmp r12d, 0xef93db69
je 0x1400fe6f0
or al, dl
jne 0x1400fe8f5
nop
mov eax, dword [0x141dd6448]
xor edx, edx
div dword [0x141dd644c]
add eax, 0x57e40e31
imul rcx, rax, 0x151104df
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1b
xor eax, 0x209d8c05
cmp eax, 0x9f313bdb
ja 0x1400fe730
test r14, r14
je 0x1400fe7dc
nop dword [rax + rax]
mov eax, dword [0x141dd6450]
add eax, dword [0x141dd6454]
or eax, 0xf944dd5
add eax, 0x7ce71960
or eax, 0xc0cf06a7
cmp eax, 0x8af437ca
jb 0x1400fe770
mov rax, qword [rsi + 8]
imul r14, r11
nop word [rax + rax]
mov ecx, dword [0x141dd6458]
sub ecx, dword [0x141dd645c]
add ecx, 0x1f72f682
and ecx, 0xd7033663
cmp ecx, 0x1b4dd6e3
je 0x1400fe7a0
mov ecx, dword [0x141dd6460]
add ecx, dword [0x141dd6464]
or ecx, 0x83851ffd
cmp ecx, 0x579f953a
jne 0x1400fe7e0
jmp 0x1400fe7f0
xor ecx, ecx
jmp 0x1400fe7f9
mov qword [r10], rax
mov qword [r10 + 0x10], r14
xor edx, edx
mov rcx, r9
test dl, dl
je 0x1400fe7f9
mov qword [r10], rax
mov qword [r10 + 0x10], r14
jmp 0x1400fe7e0
mov qword [r10 + 8], rcx
sub rsp, 0x20
mov rcx, rdi
mov rdx, r9
mov r9, r10
call fcn.1400c1ab0
add rsp, 0x20
cmp qword [rdi], 0
jne 0x1400fe8a0
nop dword [rax]
mov eax, dword [0x141dd6480]
xor edx, edx
div dword [0x141dd6484]
add eax, 0x30a84c3a
xor eax, 0xf4a0f6e3
imul rax, rax, 0x213c5585
shr rax, 0x3b
cmp eax, 0x44e65a23
je 0x1400fe820
nop word [rax + rax]
mov eax, dword [0x141dd6488]
add eax, dword [0x141dd648c]
imul rax, rax, 0x6f6a9075
shr rax, 0x3e
imul eax, eax, 0x94d4600d
add eax, 0x4249cd11
cmp eax, 0x15df9544
jb 0x1400fe850
mov rax, qword [rdi + 8]
mov qword [rsi + 8], rax
mov qword [rsi], rbx
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141dd6468]
xor eax, dword [0x141dd646c]
imul eax, eax, 0xeab6aaaf
xor eax, 0x8c43b040
or eax, 0x10b0461b
cmp eax, 0x26a6f6d3
je 0x1400fe8a0
nop word cs:[rax + rax]
mov eax, dword [0x141dd6470]
xor edx, edx
div dword [0x141dd6474]
imul eax, eax, 0x7d63d6e6
add eax, 0xe040469
or eax, 0x5e66275b
cmp eax, 0x9452fedd
ja 0x1400fe8d0
ud2