Function at 0x1800026e0
Capabilities:
Check mutex on windows
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc0
movaps xmmword [rsp + 0xb0], xmm6
mov r14, rcx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitialize]
xorps xmm0, xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
movabs rax, 0x49bbe9478ba14118
mov qword [rsp + 0x28], rax
mov ecx, 0xce
call fcn.1800035ec
mov rsi, rax
mov eax, dword [0x180018a2c]
mov ecx, dword [0x180018a28]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
jne 0x1800024f2
or cl, al
xor cl, 1
jne 0x1800024f2
nop word cs:[rax + rax]
jmp 0x1800024f0
xor edi, edi
lea rcx, [0x180016100]
nop dword [rax + rax]
movzx edx, byte [rdi + rcx]
mov rax, rdi
xor rax, 0xfffffffffffffff9
and rax, rdi
movzx ebx, byte [rsp + rax + 0x28]
mov eax, ebx
not al
and al, 0x76
and bl, 0x89
or bl, al
mov eax, edx
not al
and al, 0x76
and dl, 0x89
or dl, al
xor dl, bl
mov byte [rsi + rdi], dl
mov eax, edi
and eax, 1
mov rbp, rdi
xor rbp, 1
or rbp, rax
movzx eax, byte [rbp + rcx]
mov rdx, rbp
xor rdx, 0xfffffffffffffff8
and rdx, rbp
movzx ebx, byte [rsp + rdx + 0x28]
mov edx, ebx
not dl
and dl, 0x70
and bl, 0x8f
or bl, dl
mov edx, eax
not dl
and dl, 0x70
and al, 0x8f
or al, dl
xor al, bl
mov byte [rsi + rbp], al
add rdi, 2
cmp rdi, 0xce
jne 0x180002500
mov qword [rsp + 0x70], rsi
lea rbx, [rsi + 0x5d]
xor ecx, ecx
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
test rax, rax
je 0x1800026c1
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp ebp, 0xb7
je 0x1800026c1
xorps xmm6, xmm6
movups xmmword [rbx], xmm6
xor ecx, ecx
call fcn.180003c68
mov ecx, eax
call fcn.180003cc8
mov dword [rsp + 0x20], 0x5c3a00
test r14, r14
je 0x1800025df
mov byte [rsp + 0x20], 0x43
lea rcx, [rsi + 0xd]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
movups xmmword [rsi + 0xd], xmm6
lea rcx, [fcn.180002020]
mov qword [rsp + 0x30], rcx
mov rdx, rsi
add rdx, 0x1d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x38], rax
movups xmmword [rsi + 0x1d], xmm6
mov qword [rsi + 0x2d], 0
mov dword [rsp + 0x24], 0
mov edx, 0x100
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
movups xmmword [rax], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x40], xmm6
movups xmmword [rax + 0x50], xmm6
movups xmmword [rax + 0x60], xmm6
movups xmmword [rax + 0x70], xmm6
movups xmmword [rax + 0x80], xmm6
movups xmmword [rax + 0x90], xmm6
movups xmmword [rax + 0xa0], xmm6
movups xmmword [rax + 0xb0], xmm6
movups xmmword [rax + 0xc0], xmm6
movups xmmword [rax + 0xd0], xmm6
movups xmmword [rax + 0xe0], xmm6
movups xmmword [rax + 0xf0], xmm6
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x24]
mov qword [rsp + 0x68], rax
lea rsi, [rsp + 0x30]
mov rcx, rsi
call fcn.180002020
mov rcx, rsi
call qword [rsp + 0x30]
mov rcx, rsi
call qword [rsp + 0x30]
mov rcx, rsi
call qword [rsp + 0x30]
xor eax, eax
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
cmp edx, 1
jne 0x1800026ea
jmp 0x180002440
mov eax, 1
ret