Function at 0x14005de40
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x130
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x140089480]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov r15d, r8d
mov qword [rbp - 0x38], rdx
mov rdi, rcx
mov qword [rbp - 0x60], rcx
mov r14, qword [0x14008a2f8]
mov rax, qword [r14 + 0x3ec8]
mov byte [rax + 0xb8], 1
mov rbx, qword [r14 + 0x3ec8]
mov qword [rsp + 0x48], rbx
mov eax, dword [r14 + 0x47a0]
mov dword [rsp + 0x74], eax
xor r12d, r12d
mov dword [r14 + 0x47a0], r12d
cmp byte [rbx + 0xbb], r12b
jne 0x14005e396
xor r8d, r8d
mov rdx, rcx
mov rcx, rbx
call fcn.14002dcc0
mov esi, eax
mov dword [rsp + 0x5c], esi
call fcn.14002e920
movaps xmm6, xmm0
subss xmm6, dword [0x140074638]
movss xmm8, dword [0x140074670]
movss dword [rsp + 0x20], xmm8
mov r9b, 1
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 0x68]
call fcn.140029a30
movss xmm3, dword [rbp - 0x64]
movaps xmm1, xmm3
addss xmm1, dword [0x14007463c]
movss xmm2, dword [rbx + 0x104]
movaps xmm5, xmm2
addss xmm5, xmm1
movss xmm0, dword [rbx + 0x100]
movaps xmm4, xmm0
addss xmm4, xmm6
addss xmm3, dword [0x140074620]
addss xmm2, xmm3
xorps xmm9, xmm9
addss xmm0, xmm9
movss dword [rbp - 0x78], xmm0
movss dword [rbp - 0x74], xmm2
movss dword [rbp - 0x70], xmm4
movss dword [rbp - 0x6c], xmm5
movss xmm0, dword [rbx + 0x100]
movss dword [rbp - 0x58], xmm0
movss xmm1, dword [rbx + 0x104]
movss dword [rbp - 0x54], xmm1
movss dword [rbp - 0x50], xmm4
movss dword [rbp - 0x4c], xmm5
xor r9d, r9d
lea r8, [rbp - 0x78]
mov edx, esi
lea rcx, [rbp - 0x58]
call fcn.140030c20
movss xmm2, dword [rbp - 0x4c]
subss xmm2, dword [rbp - 0x54]
movss xmm0, dword [rbp - 0x50]
subss xmm0, dword [rbp - 0x58]
movss dword [rbp - 0x48], xmm0
movss dword [rbp - 0x44], xmm2
movss xmm1, dword [r14 + 0x3834]
lea rcx, [rbp - 0x48]
call fcn.140030fc0
mov dword [rsp + 0x20], r12d
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x40]
mov edx, esi
lea rcx, [rbp - 0x78]
call fcn.14005e6a0
movzx ebx, al
mov r8d, esi
xor edx, edx
lea rcx, str.ComboPopup
call fcn.14002efa0
mov edi, eax
mov dword [rbp - 0x48], eax
xor edx, edx
mov ecx, eax
call fcn.140030aa0
movzx r12d, al
test bl, bl
je 0x14005e025
test al, al
jne 0x14005e025
xor edx, edx
mov ecx, edi
call fcn.140036230
mov r12b, 1
mov ecx, dword [0x14008a504]
mov rax, qword gs:[0x58]
mov edx, 8
mov rax, qword [rax + rcx*8]
mov r13d, 8
movss xmm6, dword [0x1400745c0]
mov eax, dword [rdx + rax]
cmp dword [0x14008a400], eax
jg 0x14005e5fe
xor ebx, ebx
movzx edi, sil
movabs rax, 0xcbf29ce484222325
xor rdi, rax
movabs rcx, 0x100000001b3
imul rdi, rcx
movzx eax, byte [rsp + 0x5d]
xor rdi, rax
imul rdi, rcx
movzx eax, byte [rsp + 0x5e]
xor rdi, rax
imul rdi, rcx
movzx eax, byte [rsp + 0x5f]
xor rdi, rax
imul rdi, rcx
mov rcx, rdi
and rcx, qword [0x14008a3f0]
add rcx, rcx
mov r8, qword [0x14008a3d8]
mov rax, qword [r8 + rcx*8 + 8]
mov rdx, qword [0x14008a3c8]
cmp rax, rdx
je 0x14005e0e0
mov rcx, qword [r8 + rcx*8]
cmp esi, dword [rax + 0x10]
je 0x14005e0e3
nop dword [rax]
cmp rax, rcx
je 0x14005e0e0
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14005e0d0
jmp 0x14005e0e3
mov rax, rbx
mov rbx, rdx
test rax, rax
cmovne rbx, rax
cmp rbx, rdx
jne 0x14005e159
mov dword [rsp + 0x5c], esi
mov dword [rsp + 0x60], 0
lea r8, [rsp + 0x5c]
lea rdx, [rsp + 0x78]
lea rcx, [0x14008a3c0]
call fcn.140021480
and rdi, qword [0x14008a3f0]
add rdi, rdi
mov rcx, qword [0x14008a3d8]
mov rax, qword [rcx + rdi*8 + 8]
mov rbx, qword [0x14008a3c8]
cmp rax, rbx
je 0x14005e150
mov rcx, qword [rcx + rdi*8]
cmp esi, dword [rax + 0x10]
je 0x14005e152
nop
cmp rax, rcx
je 0x14005e150
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14005e140
jmp 0x14005e152
xor eax, eax
test rax, rax
cmovne rbx, rax
test r12b, r12b
je 0x14005e163
movaps xmm1, xmm6
jmp 0x14005e167
movaps xmm1, xmm9
subss xmm1, dword [rbx + 0x14]
mulss xmm1, dword [0x14007a84c]
addss xmm1, dword [rbx + 0x14]
movss dword [rbx + 0x14], xmm1
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsi + 0x298]
cmp byte [rsp + 0x40], 0
jne 0x14005e1a9
test r12b, r12b
jne 0x14005e1a9
movaps xmm0, xmmword [0x14007a0f0]
movups xmmword [rsp + 0x48], xmm0
lea rcx, [rsp + 0x48]
jmp 0x14005e1ba
movaps xmm0, xmmword [0x14007a8e0]
movups xmmword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x5c]
call fcn.14002aaa0
mov dword [rsp + 0x28], 0
movss xmm7, dword [0x1400745d8]
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x78]
mov rcx, rdi
call fcn.1400436f0
mov rdi, qword [rsi + 0x298]
mov dword [rsp + 0x48], 0x3f800000
mov dword [rsp + 0x4c], 0x3f800000
mov dword [rsp + 0x50], 0x3f800000
movss xmm0, dword [r14 + 0x37f4]
mulss xmm0, dword [0x14007a850]
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.14002aaa0
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x78]
mov rcx, rdi
call fcn.1400435e0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x58]
call fcn.140038730
mov qword [rsp + 0x5c], 0
movss dword [rsp + 0x20], xmm8
mov r9b, 1
xor r8d, r8d
mov rdi, qword [rbp - 0x38]
mov rdx, rdi
lea rcx, [rbp - 0x38]
call fcn.140029a30
movss xmm2, dword [rax + 4]
movss xmm0, dword [rbp - 0x70]
subss xmm0, dword [0x140074630]
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [0x14007a8b8]
subss xmm1, xmm2
movss xmm0, dword [rbp - 0x6c]
subss xmm0, xmm1
movss dword [rbp - 0x5c], xmm0
movss xmm1, dword [rbp - 0x78]
addss xmm1, dword [0x140074620]
movss dword [rsp + 0x48], xmm1
movss xmm0, dword [rbp - 0x74]
movss xmm8, dword [0x1400745f8]
addss xmm0, xmm8
movss dword [rsp + 0x4c], xmm0
xor ecx, ecx
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x5c]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov r8, rdi
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x48]
call fcn.1400389f0
test r12b, r12b
je 0x14005e319
movaps xmm1, xmm6
jmp 0x14005e321
movss xmm1, dword [0x140074844]
xor ecx, ecx
call fcn.14002dac0
movss xmm2, dword [rbp - 0x70]
subss xmm2, dword [0x140074628]
movss xmm1, dword [rbp - 0x74]
addss xmm1, dword [0x140074848]
movss xmm0, dword [0x140074624]
movss dword [rsp + 0x20], xmm0
mov r9d, 3
mov r8d, eax
unpcklps xmm2, xmm1
movq rdx, xmm2
mov rcx, qword [rsi + 0x298]
call fcn.1400495e0
test r12b, r12b
je 0x14005e396
mov eax, dword [rsp + 0x74]
mov dword [r14 + 0x47a0], eax
xor edx, edx
mov ecx, dword [rbp - 0x48]
call fcn.140030aa0
test al, al
jne 0x14005e3d3
mov dword [r14 + 0x47a0], 0
xor al, al
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.14006d680
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movss xmm4, dword [rbp - 0x70]
subss xmm4, dword [rbp - 0x78]
test byte [r14 + 0x47a0], 0x10
je 0x14005e3ff
movss xmm0, dword [r14 + 0x47dc]
maxss xmm0, xmm4
movss dword [r14 + 0x47dc], xmm0
jmp 0x14005e46d
mov eax, r15d
or r15d, 4
test al, 0x1e
cmovne r15d, eax
mov eax, 0xffffffff
test r15b, 4
jne 0x14005e432
test r15b, 2
je 0x14005e423
lea r13d, [rax + 5]
jmp 0x14005e432
test r15b, 8
mov ecx, 0x14
cmovne eax, ecx
mov r13d, eax
mov ecx, r13d
call fcn.14005eff0
mulss xmm0, dword [rbx + 0x14]
mov dword [rsp + 0x48], 0x7f7fffff
movss dword [rsp + 0x4c], xmm0
movss dword [rbp - 0x60], xmm4
mov dword [rbp - 0x5c], 0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x60]
call fcn.14003b250
mov r9d, dword [r14 + 0x4880]
lea r8, str.Combo__02d
mov edx, 0x10
lea rcx, [rbp - 0x28]
call fcn.14002eca0
lea rcx, [rbp - 0x28]
call fcn.14002d4c0
mov rdi, rax
test rax, rax
je 0x14005e55d
cmp byte [rax + 0xb7], 0
je 0x14005e55d
mov rdx, rax
lea rcx, [rbp - 0x38]
call fcn.140029ee0
test r15b, 1
mov ecx, 3
mov eax, 0
cmovne ecx, eax
mov dword [rdi + 0xd4], ecx
mov rdx, rdi
lea rcx, [rbp - 0x48]
call fcn.14002e2d0
movss xmm0, dword [rbp - 0x78]
movss dword [rsp + 0x48], xmm0
movss xmm1, dword [rbp - 0x6c]
movss dword [rsp + 0x4c], xmm1
mov dword [rsp + 0x30], 1
lea rax, [rbp - 0x78]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
lea r9, [rdi + 0xd4]
lea r8, [rbp - 0x38]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x60]
call fcn.14002cd90
mov qword [rsp + 0x48], 0
movss xmm0, dword [rbp - 0x60]
addss xmm0, xmm9
movss dword [rsp + 0x6c], xmm0
movss xmm0, dword [rbp - 0x5c]
addss xmm0, xmm8
movss dword [rsp + 0x70], xmm0
lea r8, [rsp + 0x48]
xor edx, edx
lea rcx, [rsp + 0x6c]
call fcn.14003b1e0
mov qword [rsp + 0x48], 0
lea rdx, [rsp + 0x48]
mov ecx, 2
call fcn.140037170
movaps xmm1, xmm7
mov ecx, 9
call fcn.140037200
movaps xmm1, xmm6
mov ecx, 0xa
call fcn.140037200
movaps xmm0, xmmword [0x14007a8d0]
movups xmmword [rbp - 0x38], xmm0
lea rdx, [rbp - 0x38]
mov ecx, 5
call fcn.140037050
movaps xmm1, xmm6
mov ecx, 2
call fcn.14002dac0
mov edx, eax
mov ecx, 4
call fcn.1400370b0
xor edx, edx
mov r8d, 0x400014f
lea rcx, [rbp - 0x28]
call fcn.140026270
movzx ebx, al
mov ecx, 3
call fcn.1400369a0
mov ecx, 2
call fcn.140036940
test bl, bl
jne 0x14005e5f7
call fcn.14002c8c0
jmp 0x14005e396
mov al, 1
jmp 0x14005e398
lea rcx, [0x14008a400]
call fcn.14006d920
cmp dword [0x14008a400], 0xffffffff
jne 0x14005e05a
mov ecx, 0x18
call fcn.14006d280
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x14008a3c8], rax
xor ebx, ebx
mov qword [0x14008a3d8], rbx
xorps xmm0, xmm0
movdqa xmmword [0x14008a3e0], xmm0
mov qword [0x14008a3f0], 7
mov qword [0x14008a3f8], r13
mov dword [0x14008a3c0], 0x3f800000
mov r8, rax
lea edx, [rbx + 0x10]
lea rcx, [0x14008a3d8]
call fcn.140021c80
nop
lea rcx, [0x1400703f0]
call fcn.14006d4f4
nop
lea rcx, [0x14008a400]
call fcn.14006d8b4
jmp 0x14005e05c