Function at 0x140078aa0
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
mov dword [rax + 0x18], r8d
mov byte [rax + 0x10], dl
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
mov r14, r9
mov r15d, r8d
mov r12, rcx
mov r10, qword [0x14025f8e0]
mov rax, qword [r10 + 0x3ed0]
mov byte [rax + 0xb8], 1
mov rbx, qword [r10 + 0x3ed0]
cmp byte [rbx + 0xbb], 0
jne 0x14007917c
mov rsi, qword [0x14025f8e0]
xor r8d, r8d
mov rdx, rcx
mov rcx, rbx
call fcn.1400408d0
mov edi, eax
mov dword [rbp - 0x61], edi
movss xmm0, dword [0x14012fd24]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, r12
lea rcx, [rbp - 0x39]
call fcn.14003c340
movss xmm1, dword [r14 + 4]
xorps xmm6, xmm6
ucomiss xmm1, xmm6
jp 0x140078b63
jne 0x140078b63
movss xmm1, dword [rbp - 0x35]
movss xmm0, dword [r14]
ucomiss xmm0, xmm6
jp 0x140078b74
jne 0x140078b74
movss xmm0, dword [rbp - 0x39]
movss dword [rbp - 0x49], xmm0
movss dword [rbp - 0x45], xmm1
movss xmm7, dword [rbx + 0x100]
movss xmm8, dword [rbx + 0x104]
addss xmm8, dword [rbx + 0x138]
xorps xmm1, xmm1
lea rcx, [rbp - 0x49]
call fcn.140043910
mov r12d, r15d
shr r12d, 1
and r12b, 1
lea rcx, [rbx + 0x230]
je 0x140078bc5
movss xmm7, dword [rbx + 0x228]
movss xmm1, dword [rcx]
jmp 0x140078bcd
movss xmm1, dword [rbx + 0x220]
movss xmm0, dword [r14]
ucomiss xmm0, xmm6
jp 0x140078bd9
je 0x140078be3
mov rdx, rcx
bt r15d, 0x18
jae 0x140078c0c
subss xmm1, xmm7
movss xmm4, dword [rbp - 0x39]
comiss xmm4, xmm1
jb 0x140078bff
movss dword [rbp - 0x49], xmm4
lea rdx, [rbx + 0x230]
jmp 0x140078c11
movaps xmm4, xmm1
movss dword [rbp - 0x49], xmm1
mov rdx, rcx
jmp 0x140078c11
movss xmm4, dword [rbp - 0x49]
movaps xmm9, xmm8
addss xmm9, dword [rbp - 0x45]
addss xmm4, xmm7
movss dword [rbp - 0x71], xmm7
movss dword [rbp - 0x6d], xmm8
movss dword [rbp - 0x69], xmm4
movss dword [rbp - 0x65], xmm9
movss xmm10, dword [0x14012fc40]
bt r15d, 0x1a
jb 0x140078cb7
test r12b, r12b
je 0x140078c4f
xorps xmm5, xmm5
jmp 0x140078c57
movss xmm5, dword [rsi + 0x381c]
movss xmm3, dword [rsi + 0x3820]
movaps xmm0, xmm5
mulss xmm0, xmm10
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movaps xmm1, xmm3
mulss xmm1, xmm10
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm7, xmm2
movss dword [rbp - 0x71], xmm7
subss xmm8, xmm0
movss dword [rbp - 0x6d], xmm8
subss xmm5, xmm2
addss xmm5, xmm4
movss dword [rbp - 0x69], xmm5
subss xmm3, xmm0
addss xmm3, xmm9
movss dword [rbp - 0x65], xmm3
mov rdx, rcx
movss xmm7, dword [rbx + 0x238]
movss xmm8, dword [rbx + 0x240]
test r12b, r12b
je 0x140078ce1
mov eax, dword [rbx + 0x228]
mov dword [rbx + 0x238], eax
mov eax, dword [rdx]
mov dword [rbx + 0x240], eax
mov eax, r15d
shr eax, 3
and al, 1
movzx r14d, al
mov dword [rbp - 0x31], r14d
mov r9d, r14d
shl r9d, 2
xor r8d, r8d
mov edx, edi
lea rcx, [rbp - 0x71]
call fcn.140043570
test r12b, r12b
je 0x140078d1c
movss dword [rbx + 0x238], xmm7
movss dword [rbx + 0x240], xmm8
test al, al
je 0x14007917c
mov r13d, dword [rsi + 0x4750]
shr r13d, 2
and r13b, 1
test r14b, r14b
je 0x140078d44
test r13b, r13b
jne 0x140078d44
mov cl, 1
call fcn.14003b5a0
test r12b, r12b
je 0x140078d69
cmp qword [rbx + 0x1a8], 0
je 0x140078d5a
call fcn.1400641a0
jmp 0x140078d69
cmp qword [rsi + 0x4b30], 0
je 0x140078d69
call fcn.140064730
mov ecx, r15d
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
bts edx, 0x14
bt r15d, 0x1b
cmovae edx, ecx
mov ecx, edx
or ecx, 0x10
bt r15d, 0x16
cmovae ecx, edx
mov edx, ecx
bts edx, 7
bt r15d, 0x17
cmovae edx, ecx
mov ecx, edx
or ecx, 0x120
test r15b, 4
cmove ecx, edx
mov edx, r15d
and edx, 0x10
mov dword [rbp - 0x41], edx
movzx eax, byte [rbp + 0x6f]
mov byte [rbp - 0x77], al
mov eax, ecx
bts eax, 0xc
test edx, edx
cmove eax, ecx
mov dword [rsp + 0x20], eax
lea r9, [rbp - 0x79]
lea r8, [rbp - 0x78]
mov edx, edi
lea rcx, [rbp - 0x71]
call fcn.14006dc40
movzx r14d, al
mov byte [rbp - 0x79], al
bt r15d, 0x15
jae 0x140078e16
mov edx, dword [rsi + 0x48d0]
test edx, edx
je 0x140078e16
mov ecx, dword [rsi + 0x474c]
cmp dword [rsi + 0x48d4], ecx
jne 0x140078e16
cmp edx, edi
jne 0x140078e16
mov r14b, 1
mov byte [rbp - 0x79], r14b
mov byte [rbp + 0x6f], r14b
jmp 0x140078e2e
test al, al
jne 0x140078e2e
cmp byte [rbp - 0x78], al
je 0x140078ebb
bt r15d, 0x19
jae 0x140078ebb
cmp byte [rsi + 0x48ef], 0
jne 0x140078eaf
cmp qword [rsi + 0x48b0], rbx
jne 0x140078eaf
mov edx, dword [rbx + 0x158]
cmp dword [rsi + 0x48e8], edx
jne 0x140078eaf
movss xmm3, dword [rbx + 0x110]
movss xmm0, dword [rbx + 0x114]
movss xmm4, dword [rbp - 0x65]
subss xmm4, xmm0
movss xmm2, dword [rbp - 0x69]
subss xmm2, xmm3
movss xmm1, dword [rbp - 0x6d]
subss xmm1, xmm0
movss xmm0, dword [rbp - 0x71]
subss xmm0, xmm3
movss dword [rbp - 0x59], xmm0
movss dword [rbp - 0x55], xmm1
movss dword [rbp - 0x51], xmm2
movss dword [rbp - 0x4d], xmm4
lea r9, [rbp - 0x59]
mov r8d, dword [rsi + 0x474c]
mov ecx, edi
call fcn.14004e0e0
mov byte [rsi + 0x48ee], 1
test r14b, r14b
je 0x140078ebb
mov ecx, edi
call fcn.140044020
cmp dword [rbp - 0x41], 0
je 0x140078ec6
call fcn.14004dd30
movzx eax, byte [rbp + 0x6f]
cmp al, byte [rbp - 0x77]
je 0x140078ed6
or dword [rsi + 0x4774], 8
mov ecx, dword [0x14025fdb4]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x14025fae0], eax
jg 0x1400791b2
nop dword [rax]
movzx r14d, dil
movabs rax, 0xcbf29ce484222325
xor r14, rax
movabs rcx, 0x100000001b3
imul r14, rcx
movzx eax, byte [rbp - 0x60]
xor r14, rax
imul r14, rcx
movzx eax, byte [rbp - 0x5f]
xor r14, rax
imul r14, rcx
movzx eax, byte [rbp - 0x5e]
xor r14, rax
imul r14, rcx
mov rax, r14
and rax, qword [0x14025fad0]
add rax, rax
mov rdx, qword [0x14025fab8]
mov rcx, qword [rdx + rax*8 + 8]
xor r15d, r15d
mov r8, qword [0x14025faa8]
cmp rcx, r8
je 0x140078f81
mov rax, qword [rdx + rax*8]
cmp edi, dword [rcx + 0x10]
je 0x140078f84
cmp rcx, rax
je 0x140078f81
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x140078f71
jmp 0x140078f84
mov rcx, r15
mov rax, r8
test rcx, rcx
cmovne rax, rcx
cmp rax, r8
jne 0x140078ff8
mov dword [rbp - 0x41], edi
mov dword [rbp - 0x3d], r15d
lea r8, [rbp - 0x41]
lea rdx, [rbp - 0x59]
lea rcx, [0x14025faa0]
call fcn.14006ca50
and r14, qword [0x14025fad0]
add r14, r14
mov rdx, qword [0x14025fab8]
mov rcx, qword [rdx + r14*8 + 8]
mov rax, qword [0x14025faa8]
cmp rcx, rax
je 0x140078ff1
mov rdx, qword [rdx + r14*8]
cmp edi, dword [rcx + 0x10]
je 0x140078fee
nop dword [rax]
cmp rcx, rdx
je 0x140078ff1
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x140078fe0
mov r15, rcx
test r15, r15
cmovne rax, r15
movss xmm1, dword [0x140135fc0]
movzx edi, byte [rbp + 0x6f]
test dil, dil
je 0x14007900e
movaps xmm6, xmm1
jmp 0x14007901c
cmp byte [rbp - 0x78], 0
je 0x14007901c
movss xmm6, dword [0x140135fb8]
subss xmm6, dword [rax + 0x14]
mulss xmm6, xmm1
addss xmm6, dword [rax + 0x14]
movss dword [rax + 0x14], xmm6
call fcn.1400412e0
movss xmm2, dword [rax]
movss xmm0, dword [0x14025e6d8]
movss dword [rbp - 0x59], xmm0
movss xmm1, dword [0x14025e6dc]
movss dword [rbp - 0x55], xmm1
movss xmm0, dword [0x14025e6e0]
movss dword [rbp - 0x51], xmm0
mulss xmm2, dword [0x14025e6e4]
mulss xmm2, xmm6
movss dword [rbp - 0x4d], xmm2
lea rcx, [rbp - 0x59]
call fcn.14003d350
movss xmm0, dword [0x14012fcc8]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
mov r8d, eax
mov rdx, qword [rbp - 0x69]
mov rcx, qword [rbp - 0x71]
call fcn.14004a7e0
test r12b, r12b
je 0x1400790bf
cmp qword [rbx + 0x1a8], 0
je 0x1400790b0
call fcn.1400640d0
jmp 0x1400790bf
cmp qword [rsi + 0x4b30], 0
je 0x1400790bf
call fcn.140064660
movss xmm0, dword [0x14012fc50]
test dil, dil
jne 0x1400790d0
movaps xmm0, xmm10
mov dword [rbp - 0x59], 0x3f800000
mov dword [rbp - 0x55], 0x3f800000
mov dword [rbp - 0x51], 0x3f800000
movss dword [rbp - 0x4d], xmm0
lea rdx, [rbp - 0x59]
xor ecx, ecx
call fcn.140049b90
movss xmm2, dword [rbp - 0x71]
addss xmm2, dword [0x14012fccc]
movss xmm1, dword [rbp - 0x65]
addss xmm1, dword [rbp - 0x6d]
mulss xmm1, xmm10
movss xmm0, dword [rbp - 0x35]
mulss xmm0, xmm10
subss xmm1, xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rbp + 0x67]
unpcklps xmm2, xmm1
movq rcx, xmm2
call fcn.14004b1b0
mov ecx, 1
call fcn.140049480
movzx edi, byte [rbp - 0x79]
test dil, dil
je 0x140079166
test dword [rbx + 0x14], 0x4000000
je 0x140079166
test byte [rbp + 0x77], 1
jne 0x140079166
test byte [rsi + 0x4770], 0x20
jne 0x140079166
call fcn.14003d060
cmp byte [rbp - 0x31], 0
je 0x140079176
test r13b, r13b
jne 0x140079176
call fcn.14003e9e0
movzx eax, dil
jmp 0x14007917e
xor al, al
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x14025fae0]
call fcn.14012a940
cmp dword [0x14025fae0], 0xffffffff
jne 0x140078f00
lea rcx, [0x14025faa0]
call fcn.14006cdd0
lea rcx, [0x14012c960]
call fcn.14012a880
nop
lea rcx, [0x14025fae0]
call fcn.14012a8d4
jmp 0x140078f00