Function at 0x180058170
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 rax, qword [0x1800adcd8]
xor esi, esi
mov r13, rcx
mov dword [rbp + 0x158], esi
mov rdx, qword [rax + 0x38]
lea r15d, [rsi + 1]
mov r12, qword [rdx + 0x18]
mov rax, qword [rdx + 0x20]
mov qword [rbp + 0x168], r12
mov qword [rbp - 0x18], rax
cmp r12, rax
je 0x1800593b7
nop word [rax + rax]
mov rdx, qword [r12]
xor r9d, r9d
xorps xmm0, xmm0
mov qword [rbp - 0x20], r9
xor ebx, ebx
mov qword [rsp + 0x70], r9
movdqu xmmword [rsp + 0x60], xmm0
mov r14, qword [rsp + 0x68]
cmp dword [rdx + 0xf0], ebx
jbe 0x18005824e
nop dword [rax + rax]
mov rax, qword [rdx + 0xe8]
lea rcx, [rbx + rbx*2]
lea r8, [rax + rcx*8]
cmp r14, r9
je 0x180058225
mov eax, dword [r8]
mov dword [r14], eax
add r14, 4
mov qword [rsp + 0x68], r14
jmp 0x18005823c
mov rdx, r14
lea rcx, [rsp + 0x60]
call fcn.1800501e0
mov r9, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov rdx, qword [r12]
inc ebx
cmp ebx, dword [rdx + 0xf0]
jb 0x180058200
mov qword [rbp - 0x20], r9
mov rbx, qword [rsp + 0x60]
mov r8, r14
sub r8, rbx
mov qword [rbp - 0x28], r14
sar r8, 2
xor r9d, r9d
mov rdx, r14
mov qword [rbp + 0xf8], rbx
mov rcx, rbx
mov byte [rsp + 0x20], 0
call fcn.1800596f0
mov ecx, 0x48
mov qword [rbp - 0x58], 0
mov qword [rbp - 0x50], 0
call fcn.18005c8c4
mov qword [rbp - 0x60], rbx
mov rdi, rbx
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp - 0x58], rax
cmp rbx, r14
je 0x180059346
nop word [rax + rax]
mov ecx, dword [rdi]
lea r9, [rsp + 0x75]
test ecx, ecx
jns 0x180058310
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 0x1800582d0
dec r9
mov byte [r9], 0x2d
jmp 0x180058339
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 0x180058310
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rsp + 0x30]
call fcn.1800105e0
mov rax, qword [r12]
xor r14d, r14d
mov rbx, qword [rax + 8]
lea ecx, [r14 + 0x30]
mov qword [rbp + 0x40], r14
call fcn.18005c8c4
movups xmm0, xmmword [str.game_character_skin_displayname_]
mov qword [rbp + 0x38], rax
mov r8, 0xffffffffffffffff
mov qword [rbp + 0x48], 0x20
mov qword [rbp + 0x50], 0x2f
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x18009d3a8]
movups xmmword [rax + 0x10], xmm1
mov byte [rax + 0x20], r14b
inc r8
cmp byte [rbx + r8], r14b
jne 0x180058397
mov rdx, rbx
lea rcx, [rbp + 0x38]
call fcn.180009f80
mov qword [rbp + 0x28], r14
lea rdx, [0x18009d390]
mov qword [rbp + 0x30], r14
lea rcx, [rbp + 0x18]
xorps xmm0, xmm0
mov r8, r15
movups xmmword [rbp + 0x18], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x18], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x28], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
call fcn.180009f80
lea r9, [rsp + 0x30]
lea r8, [rbp + 0x98]
lea rcx, [rbp - 8]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x98], xmm0
movups xmmword [rbp + 0xa8], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
call fcn.18000d950
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x180058466
mov rcx, qword [rbp + 0x98]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058461
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059651
call fcn.18005c8bc
mov rdx, qword [rbp + 0x30]
cmp rdx, 0x10
jb 0x1800584a1
mov rcx, qword [rbp + 0x18]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005849c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059651
call fcn.18005c8bc
mov rdx, qword [rbp + 0x50]
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], 0xf
mov byte [rbp + 0x18], r14b
cmp rdx, 0x10
jb 0x1800584ec
mov rcx, qword [rbp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800584e7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059651
call fcn.18005c8bc
mov rdx, qword [rsp + 0x48]
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x50], 0xf
mov byte [rbp + 0x38], r14b
cmp rdx, 0x10
jb 0x180058539
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058534
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059651
call fcn.18005c8bc
cmp dword [rdi], r14d
jle 0x1800585b0
mov rax, qword [0x1800adcd8]
lea rcx, [rbp - 8]
cmp qword [rbp + 0x10], 0x10
cmovae rcx, qword [rbp - 8]
or esi, 1
mov rdx, qword [rax + 0x58]
mov dword [rbp + 0x158], esi
call rdx
xorps xmm0, xmm0
mov qword [rbp + 0xe8], r14
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xf0], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x180058581
mov rdx, rax
lea rcx, [rbp + 0xd8]
call fcn.18000bee0
lea rax, [rbp + 0xd8]
lea rcx, [rbp + 0xe8]
lea rdx, [rbp + 0xf0]
jmp 0x18005860a
mov rax, qword [r12]
or esi, 2
xorps xmm0, xmm0
mov dword [rbp + 0x158], esi
movups xmmword [rbp + 0xb8], xmm0
mov qword [rbp + 0xc8], r14
mov r8, 0xffffffffffffffff
mov rdx, qword [rax + 8]
mov qword [rbp + 0xd0], r14
inc r8
cmp byte [rdx + r8], r14b
jne 0x1800585e0
lea rcx, [rbp + 0xb8]
call fcn.18000bee0
lea rax, [rbp + 0xb8]
lea rcx, [rbp + 0xc8]
lea rdx, [rbp + 0xd0]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm1
mov qword [rcx], r14
mov qword [rdx], 0xf
mov byte [rax], r14b
test sil, 2
je 0x180058676
mov rdx, qword [rbp + 0xd0]
and esi, 0xfffffffd
mov dword [rbp + 0x158], esi
cmp rdx, 0x10
jb 0x180058676
mov rcx, qword [rbp + 0xb8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058671
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005967b
call fcn.18005c8bc
test sil, 1
je 0x1800586c6
mov rdx, qword [rbp + 0xf0]
and esi, 0xfffffffe
mov dword [rbp + 0x158], esi
cmp rdx, 0x10
jb 0x1800586c6
mov rcx, qword [rbp + 0xd8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800586c1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005967b
call fcn.18005c8bc
mov rdi, qword [rbp + 0x10]
lea rdx, [rbp - 8]
mov rbx, qword [rbp - 8]
lea rcx, [rbp - 0x80]
mov r13, qword [rbp - 0x68]
cmp rdi, 0x10
mov r12, qword [rbp - 0x80]
mov r14, qword [rbp - 0x70]
cmovae rdx, rbx
cmp r13, 0x10
cmovae rcx, r12
cmp r14, qword [rbp + 8]
jne 0x1800587ae
mov r8, r14
call fcn.18005f860
test eax, eax
jne 0x1800587ae
cmp r13, 0x10
jb 0x18005874c
lea rdx, [r13 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x18005873c
mov r12, qword [r12 - 8]
add rdx, 0x27
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005967b
mov rcx, r12
call fcn.18005c8bc
mov rdi, qword [rbp + 0x10]
mov rbx, qword [rbp - 8]
mov qword [rbp - 0x70], 0
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
cmp rdi, 0x10
jb 0x180058797
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18005878f
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005967b
mov rcx, rbx
call fcn.18005c8bc
mov rdi, qword [rbp - 0x60]
mov r12, qword [rbp + 0x168]
mov r13, qword [rbp + 0x150]
jmp 0x180059329
mov rsi, qword [rbp - 0x58]
mov qword [rsp + 0x60], rsi
mov r15, rsi
mov rdi, qword [rsi + 8]
cmp byte [rdi + 0x19], 0
jne 0x180058814
mov rbx, rdi
nop word [rax + rax]
mov rsi, qword [rbx + 0x30]
lea rcx, [rbx + 0x20]
cmp r13, 0x10
lea rdx, [rbp - 0x80]
cmovae rdx, r12
cmp qword [rcx + 0x18], 0x10
jb 0x1800587ee
mov rcx, qword [rcx]
cmp r14, rsi
mov r8, rsi
cmovb r8, r14
call fcn.18005f860
test eax, eax
je 0x180058850
js 0x180058855
mov r15, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1800587d0
mov rsi, qword [rsp + 0x60]
cmp byte [r15 + 0x19], 0
jne 0x180058860
cmp qword [r15 + 0x38], 0x10
lea rdx, [r15 + 0x20]
mov rbx, qword [rdx + 0x10]
jb 0x18005882d
mov rdx, qword [rdx]
cmp r13, 0x10
lea rcx, [rbp - 0x80]
mov r8, r14
cmovae rcx, r12
cmp rbx, r14
cmovb r8, rbx
call fcn.18005f860
test eax, eax
je 0x18005885b
jns 0x180058863
jmp 0x180058860
cmp rsi, r14
jae 0x180058803
mov rbx, qword [rbx + 0x10]
jmp 0x180058809
cmp r14, rbx
jae 0x180058863
mov r15, rsi
cmp r15, rsi
jne 0x1800589a4
cmp byte [rdi + 0x19], 0
mov qword [rbp - 0x48], rdi
mov dword [rbp - 0x40], 0
jne 0x1800588d7
mov r15d, 1
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rdi + 0x30]
lea rcx, [rdi + 0x20]
cmp r13, 0x10
mov qword [rbp - 0x48], rdi
lea rdx, [rbp - 0x80]
cmovae rdx, r12
cmp qword [rcx + 0x18], 0x10
jb 0x1800588b2
mov rcx, qword [rcx]
cmp r14, rbx
mov r8, rbx
cmovb r8, r14
call fcn.18005f860
test eax, eax
je 0x180058916
js 0x18005891b
mov rsi, rdi
mov dword [rbp - 0x40], r15d
mov rdi, qword [rdi]
cmp byte [rdi + 0x19], 0
je 0x180058890
cmp byte [rsi + 0x19], 0
jne 0x18005892d
cmp qword [rsi + 0x38], 0x10
lea rdx, [rsi + 0x20]
mov rbx, qword [rdx + 0x10]
jb 0x1800588ef
mov rdx, qword [rdx]
cmp r13, 0x10
lea rcx, [rbp - 0x80]
mov r8, r14
cmovae rcx, r12
cmp rbx, r14
cmovb r8, rbx
call fcn.18005f860
test eax, eax
je 0x180058928
jns 0x180058995
jmp 0x18005892d
cmp rbx, r14
jae 0x1800588c7
mov rdi, qword [rdi + 0x10]
mov dword [rbp - 0x40], 0
jmp 0x1800588d1
cmp r14, rbx
jae 0x180058995
movabs rax, 0x38e38e38e38e38e
cmp qword [rbp - 0x50], rax
je 0x180059657
mov ecx, 0x48
call fcn.18005c8c4
lea rdx, [rbp - 0x80]
mov rdi, rax
lea rcx, [rax + 0x20]
call fcn.1800085e0
mov rax, qword [rsp + 0x60]
lea rdx, [rsp + 0x60]
movups xmm0, xmmword [rbp - 0x48]
mov dword [rdi + 0x40], 0
lea rcx, [rbp - 0x58]
mov qword [rdi], rax
mov r8, rdi
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov word [rdi + 0x18], 0
movaps xmmword [rsp + 0x60], xmm0
call fcn.18000d5b0
mov rsi, rax
mov r15d, 1
mov dword [rsi + 0x40], r15d
jmp 0x180058bd7
mov r8d, dword [r15 + 0x40]
lea r9, [rsp + 0x75]
test r8d, r8d
jns 0x180058a00
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 0x1800589c0
dec r9
mov byte [r9], 0x2d
jmp 0x180058a2a
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 0x180058a00
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rbp + 0x58]
call fcn.1800105e0
mov rcx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x68]
mov rax, rcx
sub rax, r8
cmp rax, 8
jb 0x180058ad6
lea rax, [r8 + 8]
cmp rcx, 0x10
lea rbx, [rbp + 0x58]
mov qword [rbp + 0x68], rax
cmovae rbx, qword [rbp + 0x58]
lea rax, [0x18009d3c8]
lea rsi, str._Chroma
cmp rax, rbx
jbe 0x180058a95
lea rax, [rbx + r8]
cmp rsi, rax
ja 0x180058a95
cmp rbx, rsi
ja 0x180058a8d
xor edi, edi
jmp 0x180058a9a
mov rdi, rbx
sub rdi, rsi
jmp 0x180058a9a
mov edi, 8
inc r8
lea rcx, [rbx + 8]
mov rdx, rbx
call fcn.18005ec40
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.18005ec40
mov r8d, 8
lea rdx, [rsi + 8]
sub r8, rdi
lea rcx, [rbx + rdi]
add rdx, rdi
call fcn.18005ec40
lea rax, [rbp + 0x58]
jmp 0x180058af9
lea rax, str._Chroma
mov qword [rsp + 0x28], 8
mov edx, 8
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x58]
call fcn.180014020
movups xmm0, xmmword [rax]
lea rdx, [rbp + 0x98]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x98], xmm0
movq rcx, xmm0
movq r8, xmm1
movups xmmword [rbp + 0xa8], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
movdqa xmm0, xmm1
psrldq xmm0, 8
mov byte [rax], 0
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
lea rcx, [rbp - 0x80]
call fcn.180009f80
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x180058b92
mov rcx, qword [rbp + 0x98]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058b8d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005965d
call fcn.18005c8bc
mov rdx, qword [rbp + 0x70]
cmp rdx, 0x10
jb 0x180058bcd
mov rcx, qword [rbp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058bc8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005965d
call fcn.18005c8bc
inc dword [r15 + 0x40]
mov r15d, 1
mov r12, qword [rbp + 0x168]
movabs rdx, 0xcbf29ce484222325
mov rax, qword [r12]
movabs r12, 0x100000001b3
mov r8, qword [rax + 8]
nop word [rax + rax]
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, r12
test cl, cl
jne 0x180058c00
mov r13, qword [rbp + 0x150]
mov r12, qword [rbp + 0x168]
mov rcx, r13
mov qword [rbp + 0x160], rdx
lea rdx, [rbp + 0x160]
call fcn.180052c00
mov rcx, qword [r12]
lea r14, [rbp - 0x80]
mov rdi, qword [rbp - 0x70]
mov rsi, rax
xor eax, eax
xorps xmm0, xmm0
cmp qword [rbp - 0x68], 0x10
mov r8, qword [rcx + 8]
movabs rcx, 0x7fffffffffffffff
cmovae r14, qword [rbp - 0x80]
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
movups xmmword [rsp + 0x38], xmm0
cmp rdi, rcx
ja 0x180059681
mov qword [rsp + 0x50], 0xf
cmp rdi, 0x10
jae 0x180058ca2
mov qword [rsp + 0x48], rdi
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x38], xmm0
jmp 0x180058d37
mov rbx, rdi
or rbx, 0xf
cmp rbx, rcx
jbe 0x180058cc1
movabs rax, 0x8000000000000000
mov rbx, rcx
add rax, 0x27
jmp 0x180058ce8
cmp rbx, 0x16
mov ecx, 0x16
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180058d0a
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180059663
mov rcx, rax
call fcn.18005c8c4
mov rcx, rax
test rax, rax
je 0x180059669
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180058d14
test rcx, rcx
je 0x180058d14
call fcn.18005c8c4
lea r8, [rdi + 1]
mov qword [rsp + 0x38], rax
mov rdx, r14
mov qword [rsp + 0x48], rdi
mov rcx, rax
mov qword [rsp + 0x50], rbx
call fcn.18005ec40
mov r8, qword [rsp + 0x30]
mov rdi, qword [rbp - 0x60]
mov eax, dword [rdi]
mov dword [rsp + 0x58], eax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x180058d93
mov qword [rdx], r8
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rdx + 8], xmm0
mov qword [rdx + 0x18], r14
mov qword [rdx + 0x20], r14
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rdx + 0x18], xmm1
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], r14b
mov dword [rdx + 0x28], eax
add qword [rsi + 8], 0x30
jmp 0x180058da3
lea r8, [rsp + 0x30]
mov rcx, rsi
call fcn.1800599d0
xor r14d, r14d
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x180058de0
mov rcx, qword [rsp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058ddb
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059669
call fcn.18005c8bc
mov eax, dword [rdi]
cmp eax, 7
jne 0x1800591e5
movabs rax, 0x2f2959b508f215d2
cmp qword [rbp + 0x160], rax
jne 0x18005929d
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Air_Lux
lea rax, str.LuxAir
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Dark_Lux
lea rax, str.LuxDark
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Fire_Lux
lea rax, str.LuxFire
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x180058f19
mov rcx, qword [rsp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180058f14
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005966f
call fcn.18005c8bc
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
mov qword [rsp + 0x48], r14
lea rax, str.LuxIce
mov qword [rsp + 0x50], 0xf
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
mov ecx, 0x20
movups xmmword [rsp + 0x38], xmm0
call fcn.18005c8c4
movups xmm0, xmmword [str.Elementalist_Ice_Lux]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], 0x14
mov qword [rsp + 0x50], 0x1f
movups xmmword [rax], xmm0
mov ecx, dword [0x18009d448]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
mov eax, dword [rdi]
mov dword [rsp + 0x58], eax
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x180058fdf
mov rax, qword [rsp + 0x30]
xorps xmm0, xmm0
mov qword [rdx], rax
movups xmmword [rdx + 8], xmm0
mov qword [rdx + 0x18], r14
mov qword [rdx + 0x20], r14
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rdx + 0x18], xmm1
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
mov dword [rdx + 0x28], eax
add qword [rbx + 8], 0x30
jmp 0x180058fec
lea r8, [rsp + 0x30]
mov rcx, rbx
call fcn.1800599d0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x180059029
mov rcx, qword [rsp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059024
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059675
call fcn.18005c8bc
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
mov qword [rsp + 0x48], r14
lea rax, str.LuxMagma
mov qword [rsp + 0x50], 0xf
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
mov ecx, 0x20
movups xmmword [rsp + 0x38], xmm0
call fcn.18005c8c4
movups xmm0, xmmword [str.Elementalist_Magma_Lux]
mov qword [rsp + 0x38], rax
mov ecx, 0x16
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], 0x1f
movups xmmword [rax], xmm0
mov ecx, dword [0x18009d470]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x18009d474]
mov word [rax + 0x14], cx
mov byte [rax + 0x16], 0
mov eax, dword [rdi]
mov dword [rsp + 0x58], eax
mov rcx, qword [rbx + 8]
cmp rcx, qword [rbx + 0x10]
je 0x1800590c2
lea rdx, [rsp + 0x30]
call fcn.18005a0e0
add qword [rbx + 8], 0x30
jmp 0x1800590d2
mov rdx, rcx
lea r8, [rsp + 0x30]
mov rcx, rbx
call fcn.1800599d0
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Mystic_Lux
lea rax, str.LuxMystic
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Nature_Lux
lea rax, str.LuxNature
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Storm_Lux
lea rax, str.LuxStorm
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.Elementalist_Water_Lux
lea rax, str.LuxWater
jmp 0x180059271
cmp eax, 6
jne 0x18005929d
movabs rax, 0xecc3c7c77aebb7ea
cmp qword [rbp + 0x160], rax
jne 0x18005929d
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.DJ_Sona_2
lea rax, str.SonaDJGenre02
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
lea rdx, [rbp + 0x160]
mov rcx, r13
call fcn.180052c00
mov rbx, rax
lea rdx, str.DJ_Sona_3
lea rax, str.SonaDJGenre03
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x30], rax
call fcn.1800085a0
mov ecx, dword [rdi]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x58], ecx
mov rcx, rbx
call fcn.180059690
lea rcx, [rsp + 0x30]
call fcn.180018910
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x1800592d8
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800592d3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005967b
call fcn.18005c8bc
mov rdx, qword [rbp + 0x10]
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
cmp rdx, 0x10
jb 0x180059323
mov rcx, qword [rbp - 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005931e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005967b
call fcn.18005c8bc
mov esi, dword [rbp + 0x158]
add rdi, 4
mov qword [rbp - 0x60], rdi
cmp rdi, qword [rbp - 0x28]
jne 0x1800582c0
mov rax, qword [rbp - 0x58]
mov rbx, qword [rbp + 0xf8]
mov r8, qword [rax + 8]
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x58]
call fcn.180059c50
mov rcx, qword [rbp - 0x58]
mov edx, 0x48
call fcn.18005c8bc
test rbx, rbx
je 0x1800593a2
mov rdx, qword [rbp - 0x20]
mov rax, rbx
sub rdx, rbx
and rdx, 0xfffffffffffffffc
cmp rdx, 0x1000
jb 0x18005939a
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059687
mov rcx, rbx
call fcn.18005c8bc
add r12, 8
mov qword [rbp + 0x168], r12
cmp r12, qword [rbp - 0x18]
jne 0x1800581d0
lea r12, [0x18009d582]
lea r14, str.game_character_skin_displayname_SightWard_
nop word [rax + rax]
lea r9, [rsp + 0x75]
mov r8d, r15d
nop dword [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 0x1800593e0
lea r8, [rsp + 0x75]
mov rdx, r9
lea rcx, [rbp + 0x78]
call fcn.1800105e0
mov rcx, qword [rbp + 0x90]
mov r8, qword [rbp + 0x88]
mov rax, rcx
sub rax, r8
cmp rax, 0x2a
jb 0x1800594ad
cmp rcx, 0x10
lea rbx, [rbp + 0x78]
lea rax, [r8 + 0x2a]
cmovae rbx, qword [rbp + 0x78]
mov qword [rbp + 0x88], rax
cmp r12, rbx
jbe 0x18005946c
lea rax, [rbx + r8]
cmp r14, rax
ja 0x18005946c
cmp rbx, r14
ja 0x180059464
xor edi, edi
jmp 0x180059471
mov rdi, rbx
sub rdi, r14
jmp 0x180059471
mov edi, 0x2a
inc r8
lea rcx, [rbx + 0x2a]
mov rdx, rbx
call fcn.18005ec40
mov r8, rdi
mov rdx, r14
mov rcx, rbx
call fcn.18005ec40
mov r8d, 0x2a
lea rdx, [r14 + 0x2a]
sub r8, rdi
lea rcx, [rbx + rdi]
add rdx, rdi
call fcn.18005ec40
lea rax, [rbp + 0x78]
jmp 0x1800594c9
mov qword [rsp + 0x28], 0x2a
lea rcx, [rbp + 0x78]
mov edx, 0x2a
mov qword [rsp + 0x20], r14
call fcn.180014020
xor ecx, ecx
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
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 + 0x90]
cmp rdx, 0x10
jb 0x180059535
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059530
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059645
call fcn.18005c8bc
mov rax, qword [0x1800adcd8]
lea rcx, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae rcx, qword [rbp - 0x48]
mov rdx, qword [rax + 0x58]
call rdx
mov rbx, rax
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [rax + rdx], 0
jne 0x180059560
mov rsi, qword [rbp - 0x30]
lea rcx, [rbp - 0x48]
mov rdi, qword [rbp - 0x48]
cmp rsi, 0x10
mov r8, qword [rbp - 0x38]
cmovae rcx, rdi
cmp r8, rdx
jne 0x180059592
mov rdx, rbx
call fcn.18005f860
test eax, eax
je 0x1800595fe
mov rdx, qword [r13 + 0x18]
lea rcx, [r13 + 0x10]
mov dword [rbp - 0x18], r15d
mov qword [rbp - 0x10], rbx
cmp rdx, qword [rcx + 0x10]
je 0x1800595b6
movups xmm0, xmmword [rbp - 0x18]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1800595bf
lea r8, [rbp - 0x18]
call fcn.180059d10
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x1800595f6
mov rcx, qword [rbp - 0x48]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800595f1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005964b
call fcn.18005c8bc
inc r15d
jmp 0x1800593d0
cmp rsi, 0x10
jb 0x180059631
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180059629
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005964b
mov rcx, rdi
call fcn.18005c8bc
add rsp, 0x208
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18006b89c
int3
call fcn.18006b89c
int3
call fcn.18006b89c
int3
call fcn.180001e40
int3
call fcn.18006b89c
int3
call fcn.180001290
int3
call fcn.18006b89c
int3
call fcn.18006b89c
int3
call fcn.18006b89c
int3
call fcn.18006b89c
int3
call fcn.180001330
int3
call fcn.18006b89c
int3