Function at 0x1400e09f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x18
lea rbp, [rsp + 0x10]
mov rsi, rcx
mov eax, dword [0x141f46560]
mov ecx, dword [0x141f46564]
add eax, ecx
add eax, 0xda0d460c
imul rax, rax, 0x288b4a33
shr rax, 0x3a
cmp eax, 0x345f1c23
ja 0x1400e0a5c
mov eax, dword [0x141f46568]
add eax, dword [0x141f4656c]
or eax, 0x2bd81447
imul ecx, eax, 0x7b31a760
mov eax, 0x20
call fcn.1400f4d10
sub rsp, rax
mov rdi, rsp
cmp ecx, 0x603079f8
jne 0x1400e0a6b
mov eax, 0x20
call fcn.1400f4d10
sub rsp, rax
jmp 0x1400e0a2d
mov r8, qword [rsi]
cmp r8, 0xffffffffffffffff
je 0x1400e0d23
lea rax, [r8 + 1]
lea rcx, [r8 + r8]
cmp rcx, rax
cmova rax, rcx
nop word [rax + rax]
mov edx, dword [0x141f46570]
xor edx, dword [0x141f46574]
imul edx, edx, 0x4385b336
add edx, 0x26dc0137
cmp rax, 5
mov r15d, 4
cmovae r15, rax
cmp edx, 0xbd3b3f62
ja 0x1400e0a90
movabs r9, 0x7ffffffffffffffe
mov eax, dword [0x141f46578]
xor edx, edx
div dword [0x141f4657c]
mov eax, 0xe02d5911
lea rbx, [r15 + r15]
nop
mov r11d, dword [0x141f46580]
or r11d, dword [0x141f46584]
or r11d, 0xdfcb3132
imul r11, rax
shr r11, 0x3f
test r15, r15
sets dl
cmp rbx, r9
seta r10b
cmp r11d, 0xc99b3ab4
je 0x1400e0ae0
or dl, r10b
jne 0x1400e0d23
nop dword [rax]
mov eax, dword [0x141f46588]
and eax, dword [0x141f4658c]
and eax, 0x11475c53
imul eax, eax, 0x20e20ead
or eax, 0xa5e9866e
cmp eax, 0x624d5a62
jb 0x1400e0b20
nop word cs:[rax + rax]
mov eax, dword [0x141f46590]
xor edx, edx
div dword [0x141f46594]
or eax, 0x94467f47
imul eax, eax, 0x78f4f439
add eax, 0x934a335b
cmp eax, 0xb0bf7fe7
ja 0x1400e0b50
test r8, r8
je 0x1400e0b97
mov eax, dword [0x141f46598]
xor edx, edx
div dword [0x141f4659c]
imul eax, eax, 0x982d5cc0
cmp eax, 0xd2d36f79
jne 0x1400e0b9c
jmp 0x1400e0bc1
xor r12d, r12d
jmp 0x1400e0bf6
mov eax, dword [0x141f465a0]
and eax, dword [0x141f465a4]
or eax, 0x8b7b959e
xor eax, 0xa8afba51
mov rdx, qword [rsi + 8]
mov qword [rbp - 0x10], rdx
cmp eax, 0x2b0eece7
jae 0x1400e0bcb
mov rax, qword [rsi + 8]
mov qword [rbp - 0x10], rax
jmp 0x1400e0b9c
mov qword [rbp], rcx
nop
mov eax, dword [0x141f465a8]
sub eax, dword [0x141f465ac]
shr eax, 1
imul rax, rax, 0x25d86d1
shr rax, 0x38
cmp eax, 0xdd1bfdcf
je 0x1400e0bd0
mov r12d, 2
mov eax, dword [0x141f465b0]
add eax, dword [0x141f465b4]
imul eax, eax, 0x71a8d749
add eax, 0xeda6cbab
imul rax, rax, 0x5a850c7b
shr rax, 0x3e
cmp eax, 0xc13f7921
jbe 0x1400e0c3f
mov qword [rbp - 8], r12
sub rsp, 0x20
lea r9, [rbp - 0x10]
mov edx, 2
mov rcx, rdi
mov r8, rbx
call fcn.1400c7170
add rsp, 0x20
lea r14, [rbp - 0x10]
nop word cs:[rax + rax]
mov r13d, dword [0x141f465b8]
imul r13d, dword [0x141f465bc]
or r13d, 0x4184d11a
add r13d, 0x8d83a6df
or r13d, 0x482cda47
mov qword [rbp - 8], r12
sub rsp, 0x20
mov edx, 2
mov rcx, rdi
mov r8, rbx
mov r9, r14
call fcn.1400c7170
add rsp, 0x20
cmp r13d, 0x604d93e6
jb 0x1400e0c50
cmp qword [rdi], 0
jne 0x1400e0d00
mov rax, qword [rdi + 8]
mov ecx, dword [0x141f465d8]
imul ecx, dword [0x141f465dc]
or ecx, 0xf2a04014
and ecx, 0xf2b5603e
add ecx, 0x6067e57a
cmp ecx, 0xd4ac900
jae 0x1400e0cd4
mov qword [rsi + 8], rax
mov qword [rsi], r15
xor ecx, ecx
nop word cs:[rax + rax]
mov qword [rsi + 8], rax
mov qword [rsi], r15
test cl, cl
jne 0x1400e0ce0
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141f465c0]
sub eax, dword [0x141f465c4]
or eax, 0x59c0c560
and eax, 0xf9e1d575
imul eax, eax, 0x456713af
cmp eax, 0xd3fd0f3f
ja 0x1400e0d00
mov eax, dword [0x141f465c8]
xor edx, edx
div dword [0x141f465cc]
xor eax, 0xc85b2ae3
imul eax, eax, 0xdd34231d
cmp eax, 0xaa4cb1e4
jae 0x1400e0d50
ud2
mov eax, dword [0x141f465d0]
xor eax, dword [0x141f465d4]
add eax, 0x6cfc5ec8
xor eax, 0x872a3d5
add eax, 0x5c2b9c86
ud2