Function at 0x10092560
Capabilities:
Hash data with crc32

Disassembly:
sub esp, 0x24
push ebx
mov ebx, dword [0x1013a848]
push ebp
push esi
push edi
mov ebp, dword [ebx + 0x1ecc]
cmp byte [ebp + 0x215], 0
jne 0x10092589
mov ecx, ebp
call fcn.1008ec80
mov ebx, dword [0x1013a848]
mov eax, dword [ebx + 0x1b94]
movss xmm1, dword [ebx + 0x1930]
mov edi, dword [ebx + 0x1ecc]
movss dword [esp + 0x18], xmm1
movss xmm0, dword [eax + 0xd0]
movss dword [esp + 0x1c], xmm0
test edi, edi
je 0x100926c5
mov edi, dword [edi + 0x54]
xor esi, esi
test edi, edi
jle 0x100926c5
nop word [eax + eax]
mov edx, dword [ebx + 0x1ecc]
test edx, edx
je 0x100926bc
mov dword [esp + 0x14], edi
cmp esi, dword [edx + 0x54]
jne 0x100925fc
movsx eax, byte [edx + 0x200]
xor ecx, ecx
cmp eax, esi
mov eax, 0x800000
cmove ecx, eax
jmp 0x10092605
mov eax, dword [edx + 0xc]
imul ecx, esi, 0x68
mov ecx, dword [ecx + eax]
test ecx, 0x100000
je 0x100926bc
cmp byte [edx + 0x215], 0
jne 0x1009262c
movsx eax, byte [edx + 0x1ff]
cmp esi, eax
jl 0x1009262c
mov eax, 0x101191a5
jmp 0x1009264b
mov eax, dword [edx + 0xc]
imul ecx, esi, 0x68
movzx eax, word [ecx + eax + 0x50]
cmp ax, 0xffff
jne 0x10092644
mov eax, 0x101191a5
jmp 0x1009264b
cwde
add eax, dword [edx + 0x1c0]
movss xmm0, dword [ebx + 0x1930]
mov edi, dword [esp + 0x14]
test eax, eax
je 0x100926ae
movss xmm3, dword [0x1012af10]
movaps xmm2, xmm0
push 0
push 0
push eax
push ecx
mov ecx, dword [ebx + 0x192c]
lea eax, [esp + 0x30]
mov dword [esp], 0xbf800000
push eax
call fcn.100c80a0
movss xmm0, dword [esp + 0x20]
addss xmm0, dword [0x1012ad24]
movss xmm1, dword [esp + 0x18]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x24]
comiss xmm1, xmm0
jae 0x100926bc
movaps xmm1, xmm0
movss dword [esp + 0x18], xmm1
inc esi
cmp esi, edi
jl 0x100925d0
movss xmm0, dword [ebx + 0x1574]
mov ecx, 1
addss xmm0, xmm0
addss xmm0, xmm1
movss dword [esp + 0x18], xmm0
call fcn.10090640
cmp byte [ebp + 0x223], 0
jne 0x100927fe
mov ecx, dword [0x1013a848]
mov ebx, dword [ecx + 0x1ecc]
test ebx, ebx
je 0x100927a8
mov ebx, dword [ebx + 0x54]
xor edi, edi
test ebx, ebx
jle 0x100927aa
mov ecx, edi
call fcn.10090e10
test al, al
je 0x10092797
mov eax, dword [0x1013a848]
mov edx, dword [eax + 0x1ecc]
test edx, edx
jne 0x10092731
xor esi, esi
jmp 0x1009276d
cmp byte [edx + 0x215], 0
jne 0x1009274c
movsx eax, byte [edx + 0x1ff]
cmp edi, eax
jl 0x1009274c
mov esi, 0x101191a5
jmp 0x1009276d
mov eax, dword [edx + 0xc]
imul ecx, edi, 0x68
movzx eax, word [ecx + eax + 0x50]
cmp ax, 0xffff
jne 0x10092764
mov esi, 0x101191a5
jmp 0x1009276d
movsx esi, ax
add esi, dword [edx + 0x1c0]
movsx ecx, word [ebp + 0x60]
imul ecx, dword [ebp + 0x54]
add ecx, edi
call fcn.100bba70
mov ecx, esi
call fcn.10092810
mov ecx, dword [0x1013a848]
mov eax, dword [ecx + 0x1b94]
dec dword [eax + 0xc0]
jmp 0x1009279d
mov ecx, dword [0x1013a848]
inc edi
cmp edi, ebx
jl 0x10092713
jmp 0x100927aa
xor ebx, ebx
cmp byte [ecx + 0x3e3], 0
movss xmm1, dword [ecx + 0xe8]
je 0x100927fe
mov eax, dword [ecx + 0x1ecc]
test eax, eax
jne 0x100927ca
or eax, 0xffffffff
jmp 0x100927d1
movsx eax, byte [eax + 0x200]
cmp eax, ebx
jne 0x100927fe
movss xmm2, dword [esp + 0x1c]
comiss xmm1, xmm2
jb 0x100927fe
movss xmm0, dword [esp + 0x18]
addss xmm0, xmm2
comiss xmm0, xmm1
jbe 0x100927fe
or ecx, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
jmp fcn.10093380
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret