Function at 0x1401e90d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov eax, dword [0x1415cf260]
and eax, dword [0x1415cf264]
mov rsi, rcx
mov ecx, eax
xor ecx, 0xad686820
and ecx, eax
and ecx, 0xef68e9b4
imul rax, rcx, 0x75ec73f5
shr rax, 0x3d
cmp eax, 0x5f2f9f3
je 0x1401e9168
mov eax, dword [0x1415cf268]
or eax, dword [0x1415cf26c]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x92c2b4cc
and ecx, 0x6d3d4b33
imul ecx, edx
mov edx, eax
and edx, 0x6d3d4b33
or eax, 0x6d3d4b33
imul eax, edx
add ecx, eax
add ecx, 0xd1e02b4
xor ecx, 0xed410a9c
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xe34853a
jne 0x1401e9177
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
jmp 0x1401e9111
mov eax, dword [0x1415cf270]
mov ecx, dword [0x1415cf274]
xor ecx, eax
not ecx
and ecx, eax
mov eax, ecx
not eax
or eax, 0x615bf08
add eax, ecx
inc eax
mov ecx, eax
and ecx, 0x61f82110
xor eax, 0xe1f82110
lea eax, [rax + rcx*2]
xor eax, 0x3168ece0
cmp eax, 0x9f2620e1
jne 0x1401e91c0
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
nop
mov eax, dword [0x1415cf278]
add eax, dword [0x1415cf27c]
imul rax, rax, 0x7993377f
shr rax, 0x3e
imul ecx, eax, 0x593d8811
add ecx, 0x7b232466
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov r14, rsp
cmp ecx, 0x33d0b49f
jb 0x1401e91c0
mov rax, qword [rsi]
cmp rax, 0xffffffffffffffff
je 0x1401e94fc
mov ecx, eax
and ecx, 1
mov rdx, rax
xor rdx, 1
lea rcx, [rdx + rcx*2]
lea rdx, [rax + rax]
cmp rdx, rcx
cmova rcx, rdx
cmp rcx, 9
mov ebx, 8
cmovae rbx, rcx
mov r15, rbx
not r15
shr r15, 0x3f
nop word [rax + rax]
mov ecx, dword [0x1415cf280]
imul ecx, dword [0x1415cf284]
imul ecx, ecx, 0x659db77e
add ecx, 0x70e54e3c
cmp ecx, 0x228a2cbb
jb 0x1401e9240
nop word cs:[rax + rax]
mov ecx, dword [0x1415cf288]
mov edx, dword [0x1415cf28c]
not ecx
not edx
or edx, ecx
not edx
mov ecx, edx
and ecx, 0x48865
add ecx, ecx
neg ecx
add ecx, edx
add ecx, 0x57048865
and ecx, 0x100270
cmp ecx, 0xd3cea90d
ja 0x1401e9270
test rax, rax
je 0x1401e93a1
mov ecx, dword [0x1415cf290]
mov edx, dword [0x1415cf294]
not ecx
not edx
and edx, ecx
not edx
add edx, 0x9496f6a8
and edx, 0xf5692211
cmp edx, 0xb4ec2266
jbe 0x1401e92f0
mov rcx, qword [rsi + 8]
mov qword [rdi], rcx
mov qword [rdi + 0x10], rax
nop word cs:[rax + rax]
mov edx, dword [0x1415cf298]
mov ecx, dword [0x1415cf29c]
mov r8d, edx
xor r8d, ecx
not r8d
and r8d, ecx
add r8d, r8d
sub ecx, r8d
add ecx, edx
mov edx, ecx
not edx
mov r8d, ecx
and r8d, 0x9a203b56
and edx, 0x65dfc4a9
imul edx, r8d
mov r8d, ecx
and r8d, 0x65dfc4a9
or ecx, 0x65dfc4a9
imul ecx, r8d
add ecx, edx
mov edx, ecx
and edx, 0x2bd192cb
add edx, edx
sub ecx, edx
add ecx, 0x2bd192cb
xor ecx, 0xecad9536
mov rdx, qword [rsi + 8]
mov qword [rdi], rdx
mov qword [rdi + 0x10], rax
cmp ecx, 0xda5dbacd
ja 0x1401e92f0
nop dword [rax]
mov eax, dword [0x1415cf2a0]
xor eax, dword [0x1415cf2a4]
imul eax, eax, 0x9d01303a
add eax, 0xece6b02
mov ecx, eax
xor ecx, 0x3c49541a
and ecx, eax
cmp ecx, 0x106cd898
je 0x1401e9370
mov r12d, 1
jmp 0x1401e93a4
xor r12d, r12d
mov eax, dword [0x1415cf2a8]
and eax, dword [0x1415cf2ac]
not eax
or eax, 0x61a6874b
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x1e496084
and eax, 0x80941830
imul eax, edx
mov edx, ecx
and edx, 0x80101830
or ecx, 0x80941830
imul ecx, edx
add ecx, eax
not ecx
or ecx, 0x65eec5d3
cmp ecx, 0x9810f7c5
jne 0x1401e9410
mov qword [rdi + 8], r12
sub rsp, 0x20
mov rcx, r14
mov rdx, r15
mov r8, rbx
mov r9, rdi
call fcn.140219c20
add rsp, 0x20
nop dword [rax + rax]
mov eax, dword [0x1415cf2b0]
mov ecx, dword [0x1415cf2b4]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
lea r13d, [rax + r8]
add r13d, 0x3fae4123
mov qword [rdi + 8], r12
sub rsp, 0x20
mov rcx, r14
mov rdx, r15
mov r8, rbx
mov r9, rdi
call fcn.14013a410
add rsp, 0x20
cmp r13d, 0x159fb263
jb 0x1401e9410
cmp qword [r14], 0
jne 0x1401e94fc
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1401e9480
mov rcx, qword [r14 + 8]
nop dword [rax + rax]
mov eax, dword [0x1415cf2d0]
xor edx, edx
div dword [0x1415cf2d4]
xor eax, 0x65813154
add eax, 0x9532efcb
cmp eax, 0x58e5c5a8
jb 0x1401e9490
mov eax, dword [0x1415cf2d8]
sub eax, dword [0x1415cf2dc]
lea edx, [rax + 0x71260613]
mov r8d, edx
and r8d, 0x705f51ec
xor edx, 0x8fa0ae13
add eax, edx
add eax, 0x71260613
sub eax, r8d
mov edx, eax
xor edx, 0x34ff0165
and eax, 0x4b00fe9a
add eax, eax
sub eax, edx
cmp eax, 0x4e4887c1
jae 0x1401e95fe
jmp 0x1401e962a
mov eax, dword [0x1415cf2b8]
xor edx, edx
div dword [0x1415cf2bc]
mov ecx, eax
xor ecx, 0x102a4496
and ecx, eax
mov eax, ecx
and eax, 0xd82bfcde
mov edx, eax
not edx
and edx, 0x5e9af36
mov r8d, ecx
and r8d, 0xd80250c8
imul r8d, edx
and ecx, 0x29ac16
or eax, 0x5e9af36
imul eax, ecx
add eax, r8d
cmp eax, 0x6a506007
jbe 0x1401e9550
ud2
mov eax, dword [0x1415cf2c0]
mov ecx, dword [0x1415cf2c4]
not eax
not ecx
or ecx, eax
not ecx
and ecx, 0x1000232
lea eax, [rcx - 0x3f47db3c]
not ecx
and ecx, 0x1040002
and eax, 0xc0b826f4
or eax, ecx
ud2
mov eax, dword [0x1415cf2e0]
mov edx, dword [0x1415cf2e4]
add eax, edx
add eax, 0x65f5e031
imul rax, rax, 0x3d8fd56f
shr rax, 0x3c
mov qword [rsi + 8], rcx
mov qword [rsi], rbx
cmp eax, 0x98ffe40c
jbe 0x1401e9633
mov qword [rsi + 8], rcx
mov qword [rsi], rbx
jmp 0x1401e95fe
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret