Function at 0x6d7a70
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x71d3d5
mov eax, dword fs:[0]
push eax
sub esp, 0x3c
push ebx
push esi
push edi
mov eax, dword [0x76e964]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov edi, dword [edi + 4]
mov esi, dword [edi]
cmp esi, edi
je 0x6d7c96
nop dword [eax + eax]
movzx eax, byte [esi + 8]
lea edx, [esi + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 1]
xor ecx, eax
movzx eax, byte [edx + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, ebx
push eax
push edx
lea eax, [ebp - 0x40]
push eax
call fcn.006c0cd0
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x6d7b0a
cmp ecx, dword [ebx + 4]
je 0x6d7b0a
mov eax, dword [esi + 0xc]
add dword [ecx + 0xc], eax
jmp 0x6d7c8c
mov edx, dword [esi + 8]
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x34], eax
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 0x18], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
mov dword [ebp - 0x38], edx
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, ebx
push eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.006c0cd0
cmp dword [ebp - 0x20], 0
jne 0x6d7c8c
cmp dword [ebx + 8], 0xfffffff
je 0x6d7ca8
lea eax, [ebx + 4]
mov dword [ebp - 0x30], eax
push 0x10
mov dword [ebp - 4], 0
mov dword [ebp - 0x2c], 0
call fcn.006dd216
mov ecx, eax
add esp, 4
mov eax, dword [ebp - 0x18]
lea edx, [ecx + 8]
mov dword [edx], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov dword [edx + 4], eax
mov eax, dword [ebx + 8]
inc eax
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x562020]
mov eax, dword [ebx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x562020]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ebx]
seta al
test al, al
je 0x6d7c2c
mov ecx, ebx
call fcn.006d8ac0
push dword [ebp - 0x1c]
lea eax, [ebp - 0x48]
mov ecx, ebx
push dword [ebp - 0x28]
push eax
call fcn.006c0cd0
mov ecx, dword [ebp - 0x10]
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], eax
jmp 0x6d7c2f
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + 4]
inc dword [ebx + 8]
mov dword [ecx + 4], eax
mov dword [ecx], edx
mov dword [eax], ecx
mov dword [edx + 4], ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x18]
and eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], edx
mov edx, dword [ebx + 0xc]
mov dword [ebp - 0x2c], 0
mov ecx, dword [edx + eax*8]
cmp ecx, dword [ebx + 4]
mov ecx, dword [ebp - 0x10]
jne 0x6d7c65
mov dword [edx + eax*8], ecx
jmp 0x6d7c81
mov ecx, dword [edx + eax*8]
cmp ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
jne 0x6d7c75
mov dword [edx + eax*8], ecx
jmp 0x6d7c85
mov ecx, dword [ebp - 0x18]
cmp dword [edx + eax*8 + 4], ecx
mov ecx, dword [ebp - 0x10]
jne 0x6d7c85
mov dword [edx + eax*8 + 4], ecx
mov dword [ebp - 4], 0xffffffff
mov esi, dword [esi]
cmp esi, edi
jne 0x6d7ab0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x579544
call fcn.006de82a
int3