Function at 0x1400ce610
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov rax, qword [rcx]
test rax, rax
je 0x1400ceafb
cmp eax, 1
jne 0x1400ce980
lea r9, [rcx + 0x10]
nop dword [rax]
mov eax, dword [0x141dd6418]
or eax, dword [0x141dd641c]
add eax, 0x7d9e86c1
xor eax, 0x47514bc4
add eax, 0x7cafddcd
cmp eax, 0x9cbc4292
ja 0x1400ce640
mov rdi, qword [rcx + 8]
test rdi, rdi
je 0x1400ceafb
mov rax, qword [rcx + 0x18]
mov r12d, 0xc300cff3
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r9
nop word cs:[rax + rax]
mov r8d, dword [0x141dd6420]
and r8d, dword [0x141dd6424]
add r8d, 0xbe092f4f
imul rdx, r8, 0x4de56bf
shr rdx, 0x20
sub r8d, edx
shr r8d, 1
add r8d, edx
shr r8d, 0x1d
cmp r8d, 0x91221b1
je 0x1400ce8c0
nop word [rax + rax]
mov r8d, dword [0x141dd6428]
or r8d, dword [0x141dd642c]
xor r8d, 0xc6887c43
add r8d, 0x8bbafd00
xor r8d, 0x5e51921a
mov r13, qword [rdi + 0x18]
lea rdx, [r13 + 0x20]
test r13, r13
cmove rdx, r9
lea rbp, [rax - 1]
mov qword [rcx + 8], r13
mov qword [rdx], 0
mov qword [rcx + 0x18], rbp
cmp r8d, 0x5f0ea41c
jb 0x1400ce8c0
mov rbx, qword [rdi + 8]
mov r15, qword [rdi + 0x10]
test r15, r15
je 0x1400ce7d0
xor r14d, r14d
nop word cs:[rax + rax]
mov eax, dword [0x141dd6430]
xor eax, dword [0x141dd6434]
add eax, 0x27629354
or eax, 0x1d11a180
and eax, 0x1f55a99c
cmp eax, 0x83ebbc69
jbe 0x1400ce780
imul rcx, r14, 0x158
add rcx, rbx
call fcn.1400c91b0
nop word cs:[rax + rax]
mov eax, dword [0x141dd6438]
or eax, dword [0x141dd643c]
or eax, 0x9ffe4436
imul eax, eax, 0x5f7a2174
shr eax, 1
imul rsi, rax, 0x4bc47745
shr rsi, 0x3d
imul rcx, r14, 0x158
add rcx, rbx
call fcn.1400c91b0
cmp esi, 0xb9b7fedf
ja 0x1400ce780
inc r14
cmp r14, r15
jne 0x1400ce740
nop word [rax + rax]
mov eax, dword [0x141dd6440]
xor eax, dword [0x141dd6444]
xor eax, 0xe5bf9dc0
cmp eax, 0x38caf98
jb 0x1400ce7d0
mov rcx, qword [rdi]
mov eax, dword [0x141dd6448]
xor edx, edx
div dword [0x141dd644c]
mov r14, qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [0x141dd6450]
and eax, dword [0x141dd6454]
xor eax, 0x2f0bb6dc
add eax, 0x8d67a53b
or eax, 0xb6086bf6
cmp eax, 0xc5d6b4b8
je 0x1400ce800
nop word cs:[rax + rax]
mov eax, dword [0x141dd6458]
add eax, dword [0x141dd645c]
or eax, 0xf9fffffb
cmp eax, 0xbede438f
jb 0x1400ce830
test rcx, rcx
je 0x1400ce886
mov rcx, qword [0x141dda6a0]
xor edx, edx
mov r8, rbx
call r14
nop dword [rax]
mov eax, dword [0x141dd6460]
xor eax, dword [0x141dd6464]
imul rax, r12
shr rax, 0x3f
or eax, 0x1b506b1e
imul eax, eax, 0xb0b86d44
cmp eax, 0xd0a1ee
je 0x1400ce860
mov rbx, qword [0x141dda6a0]
mov eax, dword [0x141dd6468]
or eax, dword [0x141dd646c]
add eax, 0xb6d5aed4
xor eax, 0x94308600
or eax, 0x6bca28ff
cmp eax, 0x5e4618ac
jae 0x1400ce8f0
jmp 0x1400ce922
mov r8, qword [rdi + 0x18]
lea rdx, [r8 + 0x20]
test r8, r8
cmove rdx, r9
mov qword [rcx + 8], r8
mov qword [rdx], 0
lea rdx, [rax - 1]
mov qword [rcx + 0x18], rdx
jmp 0x1400ce6d0
mov esi, dword [0x141dd6470]
imul esi, dword [0x141dd6474]
or esi, 0x10485406
xor esi, 0x11802496
or esi, 0xce340b68
mov rcx, rbx
xor edx, edx
mov r8, rdi
call r14
cmp esi, 0x6cb4253
jae 0x1400ce930
mov rcx, rbx
xor edx, edx
mov r8, rdi
call r14
jmp 0x1400ce8f0
mov eax, dword [0x141dd6478]
xor edx, edx
div dword [0x141dd647c]
add eax, 0xfb2d756a
or eax, 0x1a4bfc37
add eax, 0xa7b6e974
cmp eax, 0x73ce19c7
jb 0x1400ce930
mov rdi, r13
mov rax, rbp
test r13, r13
mov rcx, qword [rsp + 0x30]
mov r9, qword [rsp + 0x28]
jne 0x1400ce690
jmp 0x1400ceafb
mov eax, dword [str.p9_r]
add eax, dword [0x141dd63e4]
and eax, 0x7c4a6d8
add eax, 0xc670d3e7
imul rax, rax, 0x522ef815
shr rax, 0x3e
cmp eax, 0x1ea290f2
ja 0x1400ce980
mov rdi, qword [rcx + 8]
mov rsi, qword [rcx + 0x10]
mov rbx, qword [rsi]
nop word cs:[rax + rax]
mov eax, dword [0x141dd63e8]
and eax, dword [0x141dd63ec]
imul eax, eax, 0x281fcab2
imul rax, rax, 0x1d8bd06b
shr rax, 0x3c
imul eax, eax, 0x49fc2561
cmp eax, 0xb6d0ab5f
je 0x1400ce9c0
test rbx, rbx
je 0x1400cea50
mov eax, dword [0x141dd63f0]
xor eax, dword [0x141dd63f4]
or eax, 0x35208000
and eax, 0x356dc060
cmp eax, 0xdcdc68ad
je 0x1400cea3e
mov eax, dword [0x141dd63f8]
or eax, dword [0x141dd63fc]
xor eax, 0xc0140406
and eax, 0xe2144696
mov r14d, 0xb8956161
imul r14, rax
shr r14, 0x3f
mov rcx, rdi
call rbx
cmp r14d, 0xdc8402cc
jbe 0x1400cea50
mov rcx, rdi
call rbx
jmp 0x1400cea0c
mov eax, dword [0x141dd6400]
or eax, dword [0x141dd6404]
xor eax, 0x898e5f30
shr eax, 3
imul rax, rax, 0x213ff769
shr rax, 0x37
imul eax, eax, 0x652b02fd
cmp eax, 0x75741282
je 0x1400cea50
mov rax, qword [rsi + 8]
mov ecx, dword [0x141dd6408]
imul ecx, dword [0x141dd640c]
imul ecx, ecx, 0x8f8b520
add ecx, 0xacb6c3e0
cmp ecx, 0xf9b43b47
ja 0x1400cea80
test rax, rax
je 0x1400ceafb
cmp qword [rsi + 0x10], 0x11
jb 0x1400cead8
nop dword [rax]
mov eax, dword [0x141dd6410]
mov ecx, dword [0x141dd6414]
add eax, ecx
add eax, 0xd663ee0c
xor eax, 0x5117cf3e
add eax, 0x2bc9827c
cmp eax, 0x1ce0ddbf
jb 0x1400ceab0
mov rdi, qword [rdi - 8]
mov rcx, qword [0x141dda6a0]
xor edx, edx
mov r8, rdi
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_HeapFree]
nop
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret