Function at 0x18000a290
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x1800a1030]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rbx, rcx
mov edx, dword [0x1800a1d34]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x1800a6d9c], edx
jle 0x18000a491
lea rcx, [0x1800a6d9c]
call fcn.180069b20
cmp dword [0x1800a6d9c], 0xffffffff
jne 0x18000a491
mov dword [rbp - 0x40], 0x31
mov eax, dword [rbp - 0x40]
xor al, 0x78
mov byte [rbp - 0x3c], al
mov eax, dword [rbp - 0x40]
inc al
xor al, 0x78
mov byte [rbp - 0x3b], al
mov eax, dword [rbp - 0x40]
add al, 2
xor al, 0x78
mov byte [rbp - 0x3a], al
mov eax, dword [rbp - 0x40]
add al, 3
xor al, 0x3f
mov byte [rbp - 0x39], al
mov eax, dword [rbp - 0x40]
add al, 4
xor al, 0x3f
mov byte [rbp - 0x38], al
mov eax, dword [rbp - 0x40]
add al, 5
xor al, 0x3f
mov byte [rbp - 0x37], al
mov eax, dword [rbp - 0x40]
add al, 6
xor al, 0x3f
mov byte [rbp - 0x36], al
mov eax, dword [rbp - 0x40]
add al, 7
xor al, 0x78
mov byte [rbp - 0x35], al
mov eax, dword [rbp - 0x40]
add al, 8
xor al, 0x78
mov byte [rbp - 0x34], al
mov eax, dword [rbp - 0x40]
add al, 9
xor al, 0x78
mov byte [rbp - 0x33], al
mov eax, dword [rbp - 0x40]
add al, 0xa
xor al, 0x78
mov byte [rbp - 0x32], al
mov eax, dword [rbp - 0x40]
add al, 0xb
xor al, 0x78
mov byte [rbp - 0x31], al
mov eax, dword [rbp - 0x40]
add al, 0xc
xor al, 0x78
mov byte [rbp - 0x30], al
xor eax, eax
mov byte [rbp - 0x2f], al
movzx eax, byte [rbp - 0x3c]
xor eax, eax
mov r8d, eax
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rbp + r8 - 0x3c]
mov edx, dword [rbp - 0x40]
add dl, r8b
xor dl, cl
mov byte [rbp + r8 - 0x3c], dl
inc r8
cmp r8, 0xd
jb 0x18000a390
mov byte [rbp - 0x2f], al
mov dword [rbp - 0x28], 0x57
mov ecx, dword [rbp - 0x28]
xor cl, 0x48
mov byte [rbp - 0x24], cl
mov ecx, dword [rbp - 0x28]
inc cl
xor cl, 0x8d
mov byte [rbp - 0x23], cl
mov ecx, dword [rbp - 0x28]
add cl, 2
xor cl, 5
mov byte [rbp - 0x22], cl
mov ecx, dword [rbp - 0x28]
add cl, 3
mov byte [rbp - 0x21], cl
mov ecx, dword [rbp - 0x28]
add cl, 4
mov byte [rbp - 0x20], cl
mov ecx, dword [rbp - 0x28]
add cl, 5
mov byte [rbp - 0x1f], cl
mov ecx, dword [rbp - 0x28]
add cl, 6
mov byte [rbp - 0x1e], cl
mov ecx, dword [rbp - 0x28]
add cl, 7
xor cl, 0x45
mov byte [rbp - 0x1d], cl
mov ecx, dword [rbp - 0x28]
add cl, 8
xor cl, 0x33
mov byte [rbp - 0x1c], cl
mov ecx, dword [rbp - 0x28]
add cl, 9
xor cl, 0xed
mov byte [rbp - 0x1b], cl
mov ecx, dword [rbp - 0x28]
add cl, 0xa
xor cl, 0x48
mov byte [rbp - 0x1a], cl
mov ecx, dword [rbp - 0x28]
add cl, 0xb
xor cl, 0x89
mov byte [rbp - 0x19], cl
mov ecx, dword [rbp - 0x28]
add cl, 0xc
xor cl, 7
mov byte [rbp - 0x18], cl
xor ecx, ecx
mov byte [rbp - 0x17], cl
movzx ecx, byte [rbp - 0x24]
nop dword [rax + rax]
movzx edx, byte [rbp + rax - 0x24]
mov r8d, dword [rbp - 0x28]
add r8b, al
xor r8b, dl
mov byte [rbp + rax - 0x24], r8b
inc rax
cmp rax, 0xd
jb 0x18000a450
mov byte [rbp - 0x17], 0
lea rdx, [rbp - 0x3c]
lea rcx, [rbp - 0x24]
call fcn.180049e50
mov qword [0x1800a6da0], rax
lea rcx, [0x1800a6d9c]
call fcn.180069ac0
mov rax, qword [0x1800a6da0]
cmp qword [rbx], rax
sete al
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.180069970
mov rbx, qword [rsp + 0x70]
add rsp, 0x60
pop rbp
ret