Function at 0x1800c3c90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rbx, rcx
xor esi, esi
mov r10d, esi
mov r14, 0xffffffffffffffff
mov r9, r14
nop dword [rax + rax]
inc r9
cmp byte [rcx + r9], sil
jne 0x18008bfd0
add r9, rbx
cmp rbx, r9
je 0x18008c026
mov r11, rbx
nop dword [rax]
nop dword [rax + rax]
movzx r8d, byte [r11]
lea edx, [r8 - 0x41]
movzx eax, r8b
or al, 0x20
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, r10d
imul r10d, eax, 0x401
mov eax, r10d
shr eax, 6
xor r10d, eax
inc r11
cmp r11, r9
jne 0x18008bff0
lea eax, [r10 + r10*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul edi, ecx, 0x8001
call fcn.180025b40
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], edi
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 0x57de404e
inc dword [rax + 8]
call fcn.180025b40
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
inc dword [rax + 8]
movabs rcx, 0xc27009422fcca88d
call fcn.1800259e0
call fcn.180025b40
mov rcx, qword [rax]
mov r12d, dword [rcx]
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], rsi
mov qword [rbp - 0x10], rsi
mov r8, r14
nop dword [rax]
inc r8
cmp byte [rbx + r8], sil
jne 0x18008c0b0
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.180024740
lea rax, [rbp - 0x28]
mov qword [rbp - 0x30], rax
mov r15d, dword [rbp - 0x30]
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
mov r8d, 0xd
lea rdx, str.SERVICE_SPEND
lea rcx, [rbp - 0x50]
call fcn.180024740
nop
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x28]
call fcn.18008bdd0
movzx edi, al
lea rcx, [rbp - 0x50]
call fcn.180004060
test dil, dil
je 0x18008c11d
mov r15d, 0x2005d9a9
jmp 0x18008c168
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
mov r8d, 0xc
lea rdx, str.SERVICE_EARN
lea rcx, [rbp - 0x50]
call fcn.180024740
nop
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x28]
call fcn.18008bdd0
movzx edi, al
lea rcx, [rbp - 0x50]
call fcn.180004060
nop
test dil, dil
je 0x18008c168
mov r15d, 0x562592bb
lea rcx, [rbp - 0x28]
call fcn.180004060
mov r9d, esi
inc r14
cmp byte [rbx + r14], r9b
jne 0x18008c174
add r14, rbx
cmp rbx, r14
je 0x18008c1c6
nop word [rax + rax]
movzx r8d, byte [rbx]
lea edx, [r8 - 0x41]
movzx eax, r8b
or al, 0x20
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
inc rbx
cmp rbx, r14
jne 0x18008c190
lea ecx, [r9 + r9*8]
mov dword [rbp - 0x50], 0x57de404e
mov eax, ecx
shr eax, 0xb
xor eax, ecx
imul eax, eax, 0x8001
mov dword [rbp - 0x4c], eax
mov dword [rbp - 0x48], r15d
mov dword [rbp - 0x44], r12d
mov dword [rbp - 0x40], 1
lea r10, [0x18012ac8f]
lea r9, str.shop_controller
nop
movzx r8d, byte [r9]
lea edx, [r8 - 0x41]
movzx eax, r8b
or al, 0x20
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, esi
imul esi, eax, 0x401
mov eax, esi
shr eax, 6
xor esi, eax
inc r9
cmp r9, r10
jne 0x18008c200
lea eax, [rsi + rsi*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul r9d, ecx, 0x8001
mov rax, qword [0x1801ee2a8]
mov rcx, qword [rax + 0x28]
mov rdx, qword [rcx]
movzx eax, word [rcx + 8]
lea r8, [rdx + rax*8]
cmp rdx, r8
je 0x18008c2bc
nop
mov rcx, qword [rdx]
test rcx, rcx
je 0x18008c274
cmp dword [rcx + 8], 0
je 0x18008c274
cmp dword [rcx + 0xc], r9d
je 0x18008c27f
add rdx, 8
cmp rdx, r8
jne 0x18008c260
jmp 0x18008c2bc
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov rbx, qword [rdi + 0x848]
mov qword [rdi + 0x848], rcx
mov byte [rdi + 0x850], 1
lea rcx, [rbp - 0x50]
call fcn.18008bc40
mov qword [rdi + 0x848], rbx
test rbx, rbx
setne al
mov byte [rdi + 0x850], al
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov rcx, qword [rcx + 0x10]
jmp 0x18008bfa0