Function at 0x18005a350
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x108]
sub rsp, 0x208
mov r13, rcx
xor edi, edi
mov esi, edi
mov dword [rbp + 0x158], edi
mov rax, qword [0x1800b2d38]
mov rdx, qword [rax + 0x38]
mov r12, qword [rdx + 0x18]
mov qword [rbp - 0x50], r12
mov rax, qword [rdx + 0x20]
mov qword [rbp + 0xe8], rax
lea r14d, [rdi + 1]
cmp r12, rax
je 0x18005aa25
nop dword [rax + rax]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov rcx, rdi
mov qword [rbp - 0x28], rcx
mov qword [rsp + 0x70], rcx
mov rax, qword [r12]
mov r15, qword [rsp + 0x68]
cmp dword [rax + 0xc0], 0
jle 0x18005a42d
xor ebx, ebx
nop dword [rax]
mov r8, qword [rax + 0xb8]
add r8, rbx
cmp r15, rcx
je 0x18005a400
mov eax, dword [r8]
mov dword [r15], eax
add r15, 4
mov qword [rsp + 0x68], r15
jmp 0x18005a417
mov rdx, r15
lea rcx, [rsp + 0x60]
call fcn.1800524a0
mov rcx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x68]
inc edi
add rbx, 0x18
mov rax, qword [r12]
cmp edi, dword [rax + 0xc0]
jl 0x18005a3e0
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x58], r15
mov r8, r15
mov rbx, qword [rsp + 0x60]
mov qword [rbp + 0xe0], rbx
sub r8, rbx
sar r8, 2
mov byte [rsp + 0x20], 0
xor r9d, r9d
mov rdx, r15
mov rcx, rbx
call fcn.18005b8b0
xor edi, edi
mov qword [rbp - 0x68], rdi
mov qword [rbp - 0x60], rdi
lea ecx, [rdi + 0x48]
call fcn.18005e9bc
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp - 0x68], rax
mov r14, rbx
mov qword [rbp + 0x168], rbx
cmp rbx, r15
je 0x18005a9ae
mov ecx, dword [r14]
lea r9, [rsp + 0x75]
test ecx, ecx
jns 0x18005a4f0
neg ecx
nop dword [rax]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea r8d, [rax + rdx]
add r8b, r8b
sub cl, r8b
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x18005a4b0
dec r9
mov byte [r9], 0x2d
jmp 0x18005a519
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea r8d, [rax + rdx]
add r8b, r8b
sub cl, r8b
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x18005a4f0
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rsp + 0x30]
call fcn.180012210
mov rax, qword [r12]
mov rbx, qword [rax + 8]
mov qword [rbp + 0x28], rdi
mov ecx, 0x30
call fcn.18005e9bc
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x30], 0x20
mov qword [rbp + 0x38], 0x2f
movups xmm0, xmmword [str.game_character_skin_displayname_]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800a1680]
movups xmmword [rax + 0x10], xmm1
mov byte [rax + 0x20], 0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x18005a575
mov rdx, rbx
lea rcx, [rbp + 0x20]
call fcn.18000ad10
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x18], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x10], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x1800a1668]
lea rcx, [rbp]
call fcn.18000ad10
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x90], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r9, [rsp + 0x30]
lea r8, [rbp + 0x80]
lea rcx, [rbp - 0x20]
call fcn.18000ef70
mov rdx, qword [rbp + 0x98]
cmp rdx, 0xf
jbe 0x18005a648
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a643
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b666
call fcn.18005e9b4
mov rdx, qword [rbp + 0x18]
cmp rdx, 0xf
jbe 0x18005a683
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a67e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b666
call fcn.18005e9b4
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0xf
jbe 0x18005a6ce
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a6c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b666
call fcn.18005e9b4
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x18005a71b
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a716
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b666
call fcn.18005e9b4
cmp dword [r14], 0
jle 0x18005a794
mov rax, qword [0x1800b2d38]
mov rdx, qword [rax + 0x58]
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rcx, qword [rbp - 0x20]
or esi, 1
mov dword [rbp + 0x158], esi
call rdx
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], rdi
mov qword [rbp + 0xd8], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18005a764
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.18000d3f0
lea rax, [rbp + 0xc0]
lea rcx, [rbp + 0xd0]
lea rdx, [rbp + 0xd8]
jmp 0x18005a7ef
or esi, 2
mov dword [rbp + 0x158], esi
mov rax, qword [r12]
mov rdx, qword [rax + 8]
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], rdi
mov qword [rbp + 0xb8], rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x18005a7c4
lea rcx, [rbp + 0xa0]
call fcn.18000d3f0
lea rax, [rbp + 0xa0]
lea rcx, [rbp + 0xb0]
lea rdx, [rbp + 0xb8]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rcx], rdi
mov qword [rdx], 0xf
mov byte [rax], 0
test sil, 2
je 0x18005a85c
and esi, 0xfffffffd
mov dword [rbp + 0x158], esi
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x18005a85c
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a857
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
call fcn.18005e9b4
test sil, 1
je 0x18005a8ac
and esi, 0xfffffffe
mov dword [rbp + 0x158], esi
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0xf
jbe 0x18005a8ac
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a8a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
call fcn.18005e9b4
lea rdx, [rbp - 0x20]
mov rbx, qword [rbp - 0x20]
mov rdi, qword [rbp - 8]
cmp rdi, 0xf
cmova rdx, rbx
lea rcx, [rsp + 0x78]
mov r14, qword [rsp + 0x78]
mov r15, qword [rbp - 0x70]
cmp r15, 0xf
cmova rcx, r14
mov rsi, qword [rbp - 0x78]
cmp rsi, qword [rbp - 0x10]
jne 0x18005aad4
mov r8, rsi
call fcn.18008b510
test eax, eax
jne 0x18005aad4
cmp r15, 0xf
jbe 0x18005a933
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18005a923
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
mov rcx, r14
call fcn.18005e9b4
mov rdi, qword [rbp - 8]
mov rbx, qword [rbp - 0x20]
mov qword [rbp - 0x78], 0
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
cmp rdi, 0xf
jbe 0x18005a97f
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18005a977
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
mov rcx, rbx
call fcn.18005e9b4
xor edi, edi
mov r14, qword [rbp + 0x168]
add r14, 4
mov qword [rbp + 0x168], r14
cmp r14, qword [rbp - 0x58]
mov esi, dword [rbp + 0x158]
jne 0x18005a494
mov rax, qword [rbp - 0x68]
mov rbx, qword [rbp + 0xe0]
mov r8, qword [rax + 8]
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x68]
call fcn.18005c0d0
mov edx, 0x48
mov rcx, qword [rbp - 0x68]
call fcn.18005e9b4
test rbx, rbx
je 0x18005aa0a
mov rdx, qword [rbp - 0x28]
sub rdx, rbx
and rdx, 0xfffffffffffffffc
mov rax, rbx
cmp rdx, 0x1000
jb 0x18005aa02
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b684
mov rcx, rbx
call fcn.18005e9b4
add r12, 8
mov qword [rbp - 0x50], r12
cmp r12, qword [rbp + 0xe8]
jne 0x18005a3b0
mov r14d, 1
lea r12, [0x1800a185a]
lea r15, str.game_character_skin_displayname_SightWard_
mov r8d, r14d
mov dword [rbp + 0x158], r14d
lea r9, [rsp + 0x75]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18005aa42
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rbp + 0x60]
call fcn.180012210
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
mov rax, rcx
sub rax, r8
cmp rax, 0x2a
jb 0x18005b4b8
lea rax, [r8 + 0x2a]
mov qword [rbp + 0x70], rax
lea rbx, [rbp + 0x60]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0x60]
cmp r12, rbx
jbe 0x18005b477
lea rax, [rbx + r8]
cmp r15, rax
ja 0x18005b477
cmp rbx, r15
jbe 0x18005b47c
mov rdi, rbx
sub rdi, r15
jmp 0x18005b47c
mov r12, qword [rbp - 0x68]
mov rbx, qword [r12 + 8]
mov r13, r12
cmp byte [rbx + 0x19], 0
jne 0x18005ab30
nop word [rax + rax]
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x78]
cmp r15, 0xf
cmova rdx, r14
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x18005ab0f
mov rcx, qword [rcx]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call fcn.18008b510
test eax, eax
je 0x18005ab6d
js 0x18005ab72
mov r13, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x18005aaf0
cmp byte [r13 + 0x19], 0
jne 0x18005ab7d
lea rdx, [r13 + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x18005ab49
mov rdx, qword [rdx]
lea rcx, [rsp + 0x78]
cmp r15, 0xf
cmova rcx, r14
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call fcn.18008b510
test eax, eax
je 0x18005ab78
jns 0x18005ab80
jmp 0x18005ab7d
cmp rdi, rsi
jae 0x18005ab24
mov rbx, qword [rbx + 0x10]
jmp 0x18005ab2a
cmp rsi, rbx
jae 0x18005ab80
mov r13, r12
cmp r13, r12
jne 0x18005aba9
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0xf0]
lea rcx, [rbp - 0x68]
call fcn.18005b6f0
mov rcx, qword [rax]
mov dword [rcx + 0x40], 1
jmp 0x18005add2
mov r8d, dword [r13 + 0x40]
lea r9, [rsp + 0x75]
test r8d, r8d
jns 0x18005ac00
neg r8d
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18005abc0
dec r9
mov byte [r9], 0x2d
jmp 0x18005ac2a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18005ac00
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rbp + 0x40]
call fcn.180012210
mov r8, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
sub rax, r8
cmp rax, 8
jb 0x18005acd6
lea rax, [r8 + 8]
mov qword [rbp + 0x50], rax
lea rbx, [rbp + 0x40]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0x40]
lea rax, [0x1800a16a0]
lea rsi, str._Chroma
cmp rax, rbx
jbe 0x18005ac95
lea rax, [rbx + r8]
cmp rsi, rax
ja 0x18005ac95
cmp rbx, rsi
ja 0x18005ac8d
xor edi, edi
jmp 0x18005ac9a
mov rdi, rbx
sub rdi, rsi
jmp 0x18005ac9a
mov edi, 8
inc r8
lea rcx, [rbx + 8]
mov rdx, rbx
call fcn.18008aa30
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.18008aa30
mov r8d, 8
sub r8, rdi
lea rdx, [rsi + 8]
add rdx, rdi
lea rcx, [rbx + rdi]
call fcn.18008aa30
lea rax, [rbp + 0x40]
jmp 0x18005acf9
mov qword [rsp + 0x28], 8
lea rax, str._Chroma
mov qword [rsp + 0x20], rax
mov edx, 8
lea rcx, [rbp + 0x40]
call fcn.180015e30
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x90], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rbp + 0x80]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0xf
cmova rdx, rcx
movq r8, xmm1
lea rcx, [rsp + 0x78]
call fcn.18000ad10
mov rdx, qword [rbp + 0x98]
cmp rdx, 0xf
jbe 0x18005ad93
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005ad8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b66c
call fcn.18005e9b4
mov rdx, qword [rbp + 0x58]
cmp rdx, 0xf
jbe 0x18005adce
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005adc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b66c
call fcn.18005e9b4
inc dword [r13 + 0x40]
mov r12, qword [rbp - 0x50]
mov rax, qword [r12]
mov r8, qword [rax + 8]
movabs rdx, 0xcbf29ce484222325
movabs r12, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, r12
test cl, cl
jne 0x18005ae00
mov r12, qword [rbp - 0x50]
mov qword [rbp + 0x160], rdx
lea rdx, [rbp + 0x160]
mov r13, qword [rbp + 0x150]
mov rcx, r13
call fcn.180054df0
mov rsi, rax
mov rcx, qword [r12]
mov r15, qword [rcx + 8]
mov qword [rsp + 0x30], r15
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov rdi, qword [rbp - 0x78]
lea r14, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova r14, qword [rsp + 0x78]
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
ja 0x18005b67e
cmp rdi, 0xf
ja 0x18005ae95
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], 0xf
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x38], xmm0
jmp 0x18005af2e
mov rbx, rdi
or rbx, 0xf
cmp rbx, rax
jbe 0x18005aeb4
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18005aedb
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18005aefd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18005b672
mov rcx, rax
call fcn.18005e9bc
mov rcx, rax
test rax, rax
je 0x18005b678
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x18005af0b
test rcx, rcx
je 0x18005af09
call fcn.18005e9bc
jmp 0x18005af0b
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.18008aa30
movups xmm0, xmmword [rsp + 0x38]
mov r14, qword [rbp + 0x168]
mov eax, dword [r14]
mov dword [rsp + 0x58], eax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x18005af63
mov qword [rdx], r15
xor r15d, r15d
movups xmmword [rdx + 8], xmm0
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rdx + 0x18], xmm0
mov dword [rdx + 0x28], eax
add qword [rsi + 8], 0x30
jmp 0x18005afb0
lea r8, [rsp + 0x30]
mov rcx, rsi
call fcn.18005bd30
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xf
jbe 0x18005afad
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005afa8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
call fcn.18005e9b4
xor r15d, r15d
mov eax, dword [r14]
cmp eax, 7
jne 0x18005b32a
movabs rax, 0x2f2959b508f215d2
cmp qword [rbp + 0x160], rax
jne 0x18005b3e4
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxAir
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Air_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxDark
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Dark_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxFire
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Fire_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x18005b0d1
mov rax, qword [rsp + 0x30]
mov qword [rdx], rax
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rdx + 0x18], xmm1
mov dword [rdx + 0x28], ecx
add qword [rbx + 8], 0x30
jmp 0x18005b11b
lea r8, [rsp + 0x30]
mov rcx, rbx
call fcn.18005bd30
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xf
jbe 0x18005b11b
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b116
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
call fcn.18005e9b4
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rdi, rax
lea rsi, str.LuxIce
mov qword [rsp + 0x30], rsi
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov ecx, 0x20
call fcn.18005e9bc
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], 0x14
mov qword [rsp + 0x50], 0x1f
movups xmm0, xmmword [str.Elementalist_Ice_Lux]
movups xmmword [rax], xmm0
mov ecx, dword [0x1800a1720]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
mov eax, dword [r14]
mov dword [rsp + 0x58], eax
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x18005b1b7
mov qword [rbx], rsi
lea rcx, [rbx + 8]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], r15
lea rdx, [rsp + 0x38]
call fcn.18000ada0
mov eax, dword [rsp + 0x58]
mov dword [rbx + 0x28], eax
add qword [rdi + 8], 0x30
jmp 0x18005b1c7
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.18005bd30
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxMagma
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Magma_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxMystic
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Mystic_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxNature
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Nature_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxStorm
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Storm_Lux
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.LuxWater
lea rdx, str.Elementalist_Water_Lux
jmp 0x18005b3b7
cmp eax, 6
jne 0x18005b3e4
movabs rax, 0xecc3c7c77aebb7ea
cmp qword [rbp + 0x160], rax
jne 0x18005b3e4
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.SonaDJGenre02
mov qword [rsp + 0x30], rax
lea rdx, str.DJ_Sona_2
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180054df0
mov rbx, rax
lea rax, str.SonaDJGenre03
lea rdx, str.DJ_Sona_3
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x38]
call fcn.180009130
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005b690
lea rcx, [rsp + 0x30]
call fcn.18001a110
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x18005b420
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b41b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
call fcn.18005e9b4
xor edi, edi
mov qword [rbp - 0x78], rdi
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], dil
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x18005a988
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b46d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b678
call fcn.18005e9b4
jmp 0x18005a988
mov edi, 0x2a
inc r8
lea rcx, [rbx + 0x2a]
mov rdx, rbx
call fcn.18008aa30
mov r8, rdi
mov rdx, r15
mov rcx, rbx
call fcn.18008aa30
mov r8d, 0x2a
sub r8, rdi
lea rdx, [r15 + 0x2a]
add rdx, rdi
lea rcx, [rbx + rdi]
call fcn.18008aa30
lea rax, [rbp + 0x60]
jmp 0x18005b4d4
mov qword [rsp + 0x28], 0x2a
mov qword [rsp + 0x20], r15
mov edx, 0x2a
lea rcx, [rbp + 0x60]
call fcn.180015e30
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
xor ecx, ecx
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x30], rcx
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x38], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 0xf
mov byte [rax], cl
mov rdx, qword [rbp + 0x78]
cmp rdx, 0xf
jbe 0x18005b53d
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b538
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b65a
call fcn.18005e9b4
mov rax, qword [0x1800b2d38]
mov rdx, qword [rax + 0x58]
lea rcx, [rbp - 0x48]
cmp qword [rbp - 0x30], 0xf
cmova rcx, qword [rbp - 0x48]
call rdx
mov rbx, rax
mov qword [rbp + 0x160], rax
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rax + rdx], 0
jne 0x18005b570
lea rcx, [rbp - 0x48]
mov rdi, qword [rbp - 0x48]
mov rsi, qword [rbp - 0x30]
cmp rsi, 0xf
cmova rcx, rdi
mov r8, qword [rbp - 0x38]
cmp r8, rdx
jne 0x18005b5a2
mov rdx, rbx
call fcn.18008b510
test eax, eax
je 0x18005b612
lea rcx, [r13 + 0x10]
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x18005b5be
mov dword [rdx], r14d
mov qword [rdx + 8], rbx
add qword [rcx + 8], 0x10
jmp 0x18005b5d1
lea r9, [rbp + 0x160]
lea r8, [rbp + 0x158]
call fcn.18005bb90
mov rdx, qword [rbp - 0x30]
cmp rdx, 0xf
jbe 0x18005b608
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b603
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b660
call fcn.18005e9b4
inc r14d
xor edi, edi
jmp 0x18005aa33
cmp rsi, 0xf
jbe 0x18005b646
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18005b63d
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b660
mov rcx, rdi
call fcn.18005e9b4
nop
add rsp, 0x208
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18006df3c
int3
call fcn.18006df3c
int3
call fcn.18006df3c
int3
call fcn.18006df3c
int3
call fcn.180001290
int3
call fcn.18006df3c
int3
call fcn.180001330
int3
call fcn.18006df3c
int3