Function at 0x14005d140
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 [0x140087400]
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 [0x140088258]
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 0x14005d696
xor r8d, r8d
mov rdx, rcx
mov rcx, rbx
call fcn.14002cfc0
mov esi, eax
mov dword [rsp + 0x5c], esi
call fcn.14002dc20
movaps xmm6, xmm0
subss xmm6, dword [0x140073488]
movss xmm8, dword [0x1400734c0]
movss dword [rsp + 0x20], xmm8
mov r9b, 1
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 0x68]
call fcn.140028d30
movss xmm3, dword [rbp - 0x64]
movaps xmm1, xmm3
addss xmm1, dword [0x14007348c]
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 [0x140073470]
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.14002ff20
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.1400302c0
mov dword [rsp + 0x20], r12d
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x40]
mov edx, esi
lea rcx, [rbp - 0x78]
call fcn.14005d9a0
movzx ebx, al
mov r8d, esi
xor edx, edx
lea rcx, str.ComboPopup
call fcn.14002e2a0
mov edi, eax
mov dword [rbp - 0x48], eax
xor edx, edx
mov ecx, eax
call fcn.14002fda0
movzx r12d, al
test bl, bl
je 0x14005d325
test al, al
jne 0x14005d325
xor edx, edx
mov ecx, edi
call fcn.140035530
mov r12b, 1
mov ecx, dword [0x140088478]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov r13d, 8
movss xmm6, dword [0x140073408]
mov eax, dword [rdx + rax]
cmp dword [0x140088360], eax
jg 0x14005d8fe
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 [0x140088350]
add rcx, rcx
mov r8, qword [0x140088338]
mov rax, qword [r8 + rcx*8 + 8]
mov rdx, qword [0x140088328]
cmp rax, rdx
je 0x14005d3e0
mov rcx, qword [r8 + rcx*8]
cmp esi, dword [rax + 0x10]
je 0x14005d3e3
nop dword [rax]
cmp rax, rcx
je 0x14005d3e0
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14005d3d0
jmp 0x14005d3e3
mov rax, rbx
mov rbx, rdx
test rax, rax
cmovne rbx, rax
cmp rbx, rdx
jne 0x14005d459
mov dword [rsp + 0x5c], esi
mov dword [rsp + 0x60], 0
lea r8, [rsp + 0x5c]
lea rdx, [rsp + 0x78]
lea rcx, [0x140088320]
call fcn.140020780
and rdi, qword [0x140088350]
add rdi, rdi
mov rcx, qword [0x140088338]
mov rax, qword [rcx + rdi*8 + 8]
mov rbx, qword [0x140088328]
cmp rax, rbx
je 0x14005d450
mov rcx, qword [rcx + rdi*8]
cmp esi, dword [rax + 0x10]
je 0x14005d452
nop
cmp rax, rcx
je 0x14005d450
mov rax, qword [rax + 8]
cmp esi, dword [rax + 0x10]
jne 0x14005d440
jmp 0x14005d452
xor eax, eax
test rax, rax
cmovne rbx, rax
test r12b, r12b
je 0x14005d463
movaps xmm1, xmm6
jmp 0x14005d467
movaps xmm1, xmm9
subss xmm1, dword [rbx + 0x14]
mulss xmm1, dword [0x14007969c]
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 0x14005d4a9
test r12b, r12b
jne 0x14005d4a9
movaps xmm0, xmmword [0x140078f40]
movups xmmword [rsp + 0x48], xmm0
lea rcx, [rsp + 0x48]
jmp 0x14005d4ba
movaps xmm0, xmmword [0x140079730]
movups xmmword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x5c]
call fcn.140029da0
mov dword [rsp + 0x28], 0
movss xmm7, dword [0x140073420]
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x78]
mov rcx, rdi
call fcn.1400429f0
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 [0x1400796a0]
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140029da0
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.1400428e0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x58]
call fcn.140037a30
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.140028d30
movss xmm2, dword [rax + 4]
movss xmm0, dword [rbp - 0x70]
subss xmm0, dword [0x140073480]
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [0x140079708]
subss xmm1, xmm2
movss xmm0, dword [rbp - 0x6c]
subss xmm0, xmm1
movss dword [rbp - 0x5c], xmm0
movss xmm1, dword [rbp - 0x78]
addss xmm1, dword [0x140073470]
movss dword [rsp + 0x48], xmm1
movss xmm0, dword [rbp - 0x74]
movss xmm8, dword [0x140073448]
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.140037cf0
test r12b, r12b
je 0x14005d619
movaps xmm1, xmm6
jmp 0x14005d621
movss xmm1, dword [0x140073694]
xor ecx, ecx
call fcn.14002cdc0
movss xmm2, dword [rbp - 0x70]
subss xmm2, dword [0x140073478]
movss xmm1, dword [rbp - 0x74]
addss xmm1, dword [0x140073698]
movss xmm0, dword [0x140073474]
movss dword [rsp + 0x20], xmm0
mov r9d, 3
mov r8d, eax
unpcklps xmm2, xmm1
movq rdx, xmm2
mov rcx, qword [rsi + 0x298]
call fcn.1400488e0
test r12b, r12b
je 0x14005d696
mov eax, dword [rsp + 0x74]
mov dword [r14 + 0x47a0], eax
xor edx, edx
mov ecx, dword [rbp - 0x48]
call fcn.14002fda0
test al, al
jne 0x14005d6d3
mov dword [r14 + 0x47a0], 0
xor al, al
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.14006c800
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 0x14005d6ff
movss xmm0, dword [r14 + 0x47dc]
maxss xmm0, xmm4
movss dword [r14 + 0x47dc], xmm0
jmp 0x14005d76d
mov eax, r15d
or r15d, 4
test al, 0x1e
cmovne r15d, eax
mov eax, 0xffffffff
test r15b, 4
jne 0x14005d732
test r15b, 2
je 0x14005d723
lea r13d, [rax + 5]
jmp 0x14005d732
test r15b, 8
mov ecx, 0x14
cmovne eax, ecx
mov r13d, eax
mov ecx, r13d
call fcn.14005e2f0
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.14003a550
mov r9d, dword [r14 + 0x4880]
lea r8, str.Combo__02d
mov edx, 0x10
lea rcx, [rbp - 0x28]
call fcn.14002dfa0
lea rcx, [rbp - 0x28]
call fcn.14002c7c0
mov rdi, rax
test rax, rax
je 0x14005d85d
cmp byte [rax + 0xb7], 0
je 0x14005d85d
mov rdx, rax
lea rcx, [rbp - 0x38]
call fcn.1400291e0
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.14002d5d0
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.14002c090
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.14003a4e0
mov qword [rsp + 0x48], 0
lea rdx, [rsp + 0x48]
mov ecx, 2
call fcn.140036470
movaps xmm1, xmm7
mov ecx, 9
call fcn.140036500
movaps xmm1, xmm6
mov ecx, 0xa
call fcn.140036500
movaps xmm0, xmmword [0x140079720]
movups xmmword [rbp - 0x38], xmm0
lea rdx, [rbp - 0x38]
mov ecx, 5
call fcn.140036350
movaps xmm1, xmm6
mov ecx, 2
call fcn.14002cdc0
mov edx, eax
mov ecx, 4
call fcn.1400363b0
xor edx, edx
mov r8d, 0x400014f
lea rcx, [rbp - 0x28]
call fcn.140025570
movzx ebx, al
mov ecx, 3
call fcn.140035ca0
mov ecx, 2
call fcn.140035c40
test bl, bl
jne 0x14005d8f7
call fcn.14002bbc0
jmp 0x14005d696
mov al, 1
jmp 0x14005d698
lea rcx, [0x140088360]
call fcn.14006caa0
cmp dword [0x140088360], 0xffffffff
jne 0x14005d35a
mov ecx, 0x18
call fcn.14006c464
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x140088328], rax
xor ebx, ebx
mov qword [0x140088338], rbx
xorps xmm0, xmm0
movdqa xmmword [0x140088340], xmm0
mov qword [0x140088350], 7
mov qword [0x140088358], r13
mov dword [0x140088320], 0x3f800000
mov r8, rax
lea edx, [rbx + 0x10]
lea rcx, [0x140088338]
call fcn.140020f80
nop
lea rcx, [0x14006f640]
call fcn.14006c6d8
nop
lea rcx, [0x140088360]
call fcn.14006ca34
jmp 0x14005d35c