Function at 0x1800597a0
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 - 0x98]
sub rsp, 0x198
mov r13, rcx
xor esi, esi
mov dword [rbp + 0xe8], esi
mov rax, qword [0x1800b2cb8]
mov rdx, qword [rax + 0x38]
mov r12, qword [rdx + 0x18]
mov r15, qword [rdx + 0x20]
mov qword [rbp + 0x30], r15
lea edi, [rsi + 1]
cmp r12, r15
mov qword [rbp + 0xf8], r12
je 0x18005a67b
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], 0
xor ebx, ebx
mov rdx, qword [r12]
cmp dword [rdx + 0xc0], ebx
jle 0x180059849
nop dword [rax]
nop word [rax + rax]
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0xb8]
lea rdx, [rax + rcx*8]
lea rcx, [rbp + 0x10]
call fcn.18005a960
inc ebx
mov rdx, qword [r12]
cmp ebx, dword [rdx + 0xc0]
jl 0x180059820
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x78]
call fcn.18005a9d0
lea rcx, [rbp - 0x38]
call fcn.18005a920
mov rbx, qword [rbp + 0x10]
mov qword [rbp + 0x28], rbx
mov r14, rbx
mov qword [rbp - 0x40], rbx
cmp rbx, qword [rbp + 0x18]
je 0x180059d40
mov ecx, dword [r14]
lea r9, [rbp - 0x13]
test ecx, ecx
jns 0x1800598d0
neg ecx
nop dword [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 0x180059890
dec r9
mov byte [r9], 0x2d
jmp 0x1800598f9
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 0x1800598d0
lea r8, [rbp - 0x13]
mov rdx, r9
lea rcx, [rsp + 0x30]
call fcn.180011c50
mov rax, qword [r12]
mov rbx, qword [rax + 8]
mov ecx, 0x30
call fcn.18005e200
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x70], 0x20
mov qword [rbp - 0x68], 0x2f
movups xmm0, xmmword [str.game_character_skin_displayname_]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1800a3c40]
movups xmmword [rax + 0x10], xmm1
mov byte [rax + 0x20], 0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x180059950
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.18000a720
xor ebx, ebx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
mov r8, rdi
lea rdx, [0x1800a3c54]
lea rcx, [rsp + 0x60]
call fcn.18000a720
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x38], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x48], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
lea r9, [rsp + 0x30]
lea r8, [rbp + 0x38]
lea rcx, [rbp - 0x10]
call fcn.18000ea90
mov rdx, qword [rbp + 0x50]
cmp rdx, 0x10
jb 0x180059a14
inc rdx
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059a0f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a859
call fcn.18005e1f8
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x180059a51
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059a4c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a859
call fcn.18005e1f8
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x180059a9f
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059a9a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a859
call fcn.18005e1f8
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x180059aec
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059ae7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a859
call fcn.18005e1f8
cmp dword [r14], 0
jle 0x180059b4e
mov rax, qword [0x1800b2cb8]
mov rdx, qword [rax + 0x58]
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 0x10
cmovae rcx, qword [rbp - 0x10]
or esi, 1
mov dword [rbp + 0xe8], esi
call rdx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180059b30
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18000cd00
lea rax, [rsp + 0x60]
jmp 0x180059b89
or esi, 2
mov dword [rbp + 0xe8], esi
mov rax, qword [r12]
mov rdx, qword [rax + 8]
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], rbx
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180059b72
lea rcx, [rbp - 0x80]
call fcn.18000cd00
lea rax, [rbp - 0x80]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
test sil, 2
je 0x180059bf1
and esi, 0xfffffffd
mov dword [rbp + 0xe8], esi
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x180059bf1
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059bec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
call fcn.18005e1f8
test sil, 1
je 0x180059c3d
and esi, 0xfffffffe
mov dword [rbp + 0xe8], esi
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x180059c3d
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059c38
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
call fcn.18005e1f8
lea rdx, [rbp - 0x10]
mov rbx, qword [rbp - 0x10]
mov rdi, qword [rbp + 8]
cmp rdi, 0x10
cmovae rdx, rbx
lea rcx, [rbp - 0x60]
mov r15, qword [rbp - 0x48]
cmp r15, 0x10
setae r12b
mov r14, qword [rbp - 0x60]
cmovae rcx, r14
mov rsi, qword [rbp - 0x50]
cmp rsi, qword [rbp]
jne 0x180059da9
mov r8, rsi
call fcn.180061460
test eax, eax
jne 0x180059da9
test r12b, r12b
je 0x180059cc5
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x180059cb5
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
mov rcx, r14
call fcn.18005e1f8
mov rdi, qword [rbp + 8]
mov rbx, qword [rbp - 0x10]
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
cmp rdi, 0x10
jb 0x180059d10
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180059d08
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
mov rcx, rbx
call fcn.18005e1f8
mov r12, qword [rbp + 0xf8]
mov r14, qword [rbp - 0x40]
add r14, 4
mov qword [rbp - 0x40], r14
cmp r14, qword [rbp + 0x18]
mov edi, 1
mov esi, dword [rbp + 0xe8]
jne 0x180059880
mov rbx, qword [rbp + 0x28]
mov r15, qword [rbp + 0x30]
mov r8, qword [rbp - 0x38]
mov r8, qword [r8 + 8]
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x38]
call fcn.18005b3c0
mov edx, 0x48
mov rcx, qword [rbp - 0x38]
call fcn.18005e1f8
test rbx, rbx
je 0x180059da0
mov rdx, qword [rbp + 0x20]
sub rdx, rbx
and rdx, 0xfffffffffffffffc
mov rax, rbx
cmp rdx, 0x1000
jb 0x180059d98
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a877
mov rcx, rbx
call fcn.18005e1f8
add r12, 8
jmp 0x1800597e5
mov r13, qword [rbp - 0x38]
mov rbx, qword [r13 + 8]
mov r15, r13
cmp byte [rbx + 0x19], 0
jne 0x180059e19
nop word [rax + rax]
lea rcx, [rbx + 0x20]
lea rdx, [rbp - 0x60]
test r12b, r12b
cmovne rdx, r14
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x180059ddd
mov rcx, qword [rcx]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call fcn.180061460
test eax, eax
je 0x180059df6
jns 0x180059e01
mov al, 0xff
jmp 0x180059e03
cmp rdi, rsi
jae 0x180059dff
mov al, 0xff
jmp 0x180059e03
jbe 0x180059e0d
mov al, 1
test al, al
jns 0x180059e0d
mov rbx, qword [rbx + 0x10]
jmp 0x180059e13
mov r15, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x180059dc0
cmp byte [r15 + 0x19], 0
jne 0x180059e67
lea rdx, [r15 + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x180059e32
mov rdx, qword [rdx]
lea rcx, [rbp - 0x60]
test r12b, r12b
cmovne rcx, r14
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call fcn.180061460
test eax, eax
je 0x180059e56
jns 0x180059e61
mov al, 0xff
jmp 0x180059e63
cmp rsi, rbx
jae 0x180059e5f
mov al, 0xff
jmp 0x180059e63
jbe 0x180059e6a
mov al, 1
test al, al
jns 0x180059e6a
mov r15, r13
cmp r15, r13
jne 0x180059e92
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x80]
lea rcx, [rbp - 0x38]
call fcn.18005aa10
mov rcx, qword [rax]
mov dword [rcx + 0x40], 1
jmp 0x18005a0ab
mov r8d, dword [r15 + 0x40]
lea r9, [rbp - 0x13]
test r8d, r8d
jns 0x180059ee0
neg r8d
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 0x180059ea2
dec r9
mov byte [r9], 0x2d
jmp 0x180059f0a
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 0x180059ee0
lea r8, [rbp - 0x13]
mov rdx, r9
lea rcx, [rsp + 0x60]
call fcn.180011c50
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
sub rax, r8
cmp rax, 8
jb 0x180059fbc
lea rax, [r8 + 8]
mov qword [rsp + 0x70], rax
lea rbx, [rsp + 0x60]
cmp rcx, 0x10
cmovae rbx, qword [rsp + 0x60]
lea rax, [0x1800a3c68]
lea rsi, str._Chroma
cmp rax, rbx
jbe 0x180059f7a
lea rax, [rbx + r8]
cmp rsi, rax
ja 0x180059f7a
cmp rbx, rsi
ja 0x180059f72
xor edi, edi
jmp 0x180059f7f
mov rdi, rbx
sub rdi, rsi
jmp 0x180059f7f
mov edi, 8
inc r8
lea rcx, [rbx + 8]
mov rdx, rbx
call fcn.180060990
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.180060990
mov r8d, 8
sub r8, rdi
lea rdx, [rsi + 8]
add rdx, rdi
lea rcx, [rbx + rdi]
call fcn.180060990
lea rax, [rsp + 0x60]
jmp 0x180059fe0
mov qword [rsp + 0x28], 8
lea rax, str._Chroma
mov qword [rsp + 0x20], rax
mov edx, 8
lea rcx, [rsp + 0x60]
call fcn.1800156e0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x68], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rbp + 0x58]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm1
lea rcx, [rbp - 0x60]
call fcn.18000a720
mov rdx, qword [rbp + 0x70]
cmp rdx, 0x10
jb 0x18005a06a
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a065
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a85f
call fcn.18005e1f8
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18005a0a7
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a0a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a85f
call fcn.18005e1f8
inc dword [r15 + 0x40]
mov r12, qword [rbp + 0xf8]
mov rax, qword [r12]
mov r8, qword [rax + 8]
movabs rdx, 0xcbf29ce484222325
movabs r12, 0x100000001b3
nop
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, r12
test cl, cl
jne 0x18005a0d0
mov r12, qword [rbp + 0xf8]
mov qword [rbp + 0xf0], rdx
lea rdx, [rbp + 0xf0]
mov r13, qword [rbp + 0xe0]
mov rcx, r13
call fcn.180054130
mov rsi, rax
mov rcx, qword [r12]
mov r15, qword [rcx + 8]
mov qword [rsp + 0x30], r15
xor eax, eax
mov qword [rsp + 0x38], rax
mov rdi, qword [rbp - 0x50]
lea r14, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae r14, qword [rbp - 0x60]
movabs rcx, 0x7fffffffffffffff
cmp rdi, rcx
ja 0x18005a871
cmp rdi, 0x10
jae 0x18005a165
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], 0xf
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x38], xmm0
jmp 0x18005a1fa
mov rbx, rdi
or rbx, 0xf
cmp rbx, rcx
jbe 0x18005a184
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18005a1ab
cmp rbx, 0x16
mov ecx, 0x16
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18005a1cd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18005a865
mov rcx, rax
call fcn.18005e200
mov rcx, rax
test rax, rax
je 0x18005a86b
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x18005a1d7
test rcx, rcx
je 0x18005a1d7
call fcn.18005e200
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.180060990
movups xmm0, xmmword [rsp + 0x38]
mov r14, qword [rbp - 0x40]
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x18005a233
mov qword [rdx], r15
movups xmmword [rdx + 8], xmm0
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rdx + 0x18], xmm0
mov eax, 0xf
mov byte [rsp + 0x38], 0
mov dword [rdx + 0x28], ecx
add qword [rsi + 8], 0x30
jmp 0x18005a245
lea r8, [rsp + 0x30]
mov rcx, rsi
call fcn.18005b050
mov rax, qword [rsp + 0x50]
cmp rax, 0x10
jb 0x18005a27e
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a279
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
call fcn.18005e1f8
mov eax, dword [r14]
cmp eax, 7
jne 0x18005a52e
movabs rax, 0x2f2959b508f215d2
cmp qword [rbp + 0xf0], rax
jne 0x18005a5e8
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxAir
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Air_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxDark
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Dark_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxFire
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Fire_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxIce
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Ice_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxMagma
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Magma_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxMystic
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Mystic_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxNature
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Nature_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxStorm
mov qword [rsp + 0x30], rax
lea rdx, str.Elementalist_Storm_Lux
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.LuxWater
lea rdx, str.Elementalist_Water_Lux
jmp 0x18005a5bb
cmp eax, 6
jne 0x18005a5e8
movabs rax, 0xecc3c7c77aebb7ea
cmp qword [rbp + 0xf0], rax
jne 0x18005a5e8
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.SonaDJGenre02
mov qword [rsp + 0x30], rax
lea rdx, str.DJ_Sona_2
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
lea rdx, [rbp + 0xf0]
mov rcx, r13
call fcn.180054130
mov rbx, rax
lea rax, str.SonaDJGenre03
lea rdx, str.DJ_Sona_3
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x38]
call fcn.180008bf0
mov ecx, dword [r14]
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18005a8c0
lea rcx, [rsp + 0x30]
call fcn.180019c00
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x18005a623
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a61e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
call fcn.18005e1f8
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x180059d1b
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a671
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a86b
call fcn.18005e1f8
jmp 0x180059d1b
mov dword [rbp + 0xe8], edi
lea r14, [0x1800a3e0a]
lea rsi, str.game_character_skin_displayname_SightWard_
nop
lea r9, [rbp - 0x13]
nop dword [rax]
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul edi
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub dil, cl
add dil, 0x30
mov byte [r9], dil
mov edi, edx
test edx, edx
jne 0x18005a6a0
lea r8, [rbp - 0x13]
mov rdx, r9
lea rcx, [rsp + 0x60]
call fcn.180011c50
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
sub rax, r8
cmp rax, 0x2a
jb 0x18005a768
lea rax, [r8 + 0x2a]
mov qword [rsp + 0x70], rax
lea rbx, [rsp + 0x60]
cmp rcx, 0x10
cmovae rbx, qword [rsp + 0x60]
cmp r14, rbx
jbe 0x18005a726
lea rax, [rbx + r8]
cmp rsi, rax
ja 0x18005a726
cmp rbx, rsi
ja 0x18005a71e
xor edi, edi
jmp 0x18005a72b
mov rdi, rbx
sub rdi, rsi
jmp 0x18005a72b
mov edi, 0x2a
inc r8
lea rcx, [rbx + 0x2a]
mov rdx, rbx
call fcn.180060990
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.180060990
mov r8d, 0x2a
sub r8, rdi
lea rdx, [rsi + 0x2a]
add rdx, rdi
lea rcx, [rbx + rdi]
call fcn.180060990
lea rax, [rsp + 0x60]
jmp 0x18005a785
mov qword [rsp + 0x28], 0x2a
mov qword [rsp + 0x20], rsi
mov edx, 0x2a
lea rcx, [rsp + 0x60]
call fcn.1800156e0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.180008aa0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18005a7ce
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005a7c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005a853
call fcn.18005e1f8
mov rax, qword [0x1800b2cb8]
mov rdx, qword [rax + 0x58]
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0x10
cmovae rcx, qword [rbp - 0x80]
call rdx
mov qword [rbp + 0xf0], rax
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18005a980
test al, al
jne 0x18005a835
lea rcx, [r13 + 0x10]
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xe8]
call fcn.18005a880
lea rcx, [rbp - 0x80]
call fcn.180008a40
mov eax, dword [rbp + 0xe8]
inc eax
mov dword [rbp + 0xe8], eax
mov edi, eax
jmp 0x18005a690
lea rcx, [rbp - 0x80]
call fcn.180008a40
nop
add rsp, 0x198
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18006d3cc
int3
call fcn.18006d3cc
int3
call fcn.18006d3cc
int3
call fcn.180001290
int3
call fcn.18006d3cc
int3
call fcn.180001330
int3
call fcn.18006d3cc
int3