Function at 0x1024a830
Capabilities:
Hash data with crc32

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x80
mov edi, ecx
mov ecx, dword [esp + 0x98]
mov ebx, dword [0x1042dd60]
mov eax, dword [edi + 8]
mov dword [esp + 0xc], eax
mov eax, dword [edi + 0x16c]
mov dword [esp + 0x38], eax
or eax, 0x10
mov dword [edi + 0x16c], eax
mov dword [edi + 0x130], 1
mov dword [edi + 0x134], 2
movss xmm5, dword [ebx + 0x1550]
movaps xmm0, xmmword [0x10357340]
xorps xmm0, xmm5
movss xmm1, dword [ebx + 0x18d0]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
movaps xmm6, xmm5
test ecx, ecx
je 0x1024a8d8
movaps xmm6, xmm1
addss xmm6, xmm5
mov eax, dword [edx + 4]
movaps xmm2, xmm0
subss xmm2, xmm6
addss xmm2, dword [edx + 8]
movss dword [esp + 0x28], xmm2
mov dword [esp + 0x2c], eax
mov dword [esp + 4], edx
test byte [esp + 0xc], 0x20
mov dword [esp + 8], ebx
jne 0x1024a9d6
mov eax, dword [ebx + 0x153c]
test eax, eax
je 0x1024a91a
cmp eax, 1
jne 0x1024a92f
addss xmm6, xmm1
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 4]
subss xmm0, xmm6
addss xmm0, dword [ecx + 8]
movss dword [esp + 0x20], xmm0
mov dword [esp + 0x24], eax
jmp 0x1024a92f
mov ecx, dword [esp + 4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
addss xmm5, xmm1
mov eax, dword [edi + 0x1c4]
mov ecx, dword [edi + 0x1cc]
mov ecx, dword [ecx + eax*4 - 4]
not ecx
mov bl, 0x23
mov edx, 0x103ab66f
mov eax, ecx
jmp 0x1024a96b
movzx esi, bl
movzx ebp, al
shr eax, 8
xor ebp, esi
xor eax, dword [ebp*4 + 0x10359ccc]
add edx, 1
mov bl, bh
test bh, bh
je 0x1024a982
mov bh, byte [edx - 1]
cmp bl, 0x23
jne 0x1024a950
cmp bh, 0x23
jne 0x1024a950
cmp byte [edx], 0x23
cmove eax, ecx
mov bh, 0x23
jmp 0x1024a950
not eax
mov ebx, dword [esp + 8]
cmp dword [ebx + 0x19f0], eax
jne 0x1024a996
mov dword [ebx + 0x19f4], eax
movss dword [esp], xmm6
movups xmmword [esp + 0x48], xmm5
cmp dword [ebx + 0x1a1c], eax
jne 0x1024a9af
mov byte [ebx + 0x1a20], 1
lea ecx, [esp + 0x20]
push ecx
push eax
call fcn.10275c60
add esp, 8
test al, al
je 0x1024a9c5
mov byte [edi + 0x7e], 1
movups xmm5, xmmword [esp + 0x48]
movss xmm6, dword [esp]
mov ecx, dword [esp + 0x98]
test ecx, ecx
movups xmmword [esp + 0x48], xmm5
movss dword [esp], xmm6
je 0x1024aa91
mov eax, dword [edi + 0x1c4]
mov ecx, dword [edi + 0x1cc]
mov ecx, dword [ecx + eax*4 - 4]
not ecx
mov bl, 0x23
mov edx, 0x103ab679
mov eax, ecx
jmp 0x1024aa2b
movzx esi, bl
movzx ebp, al
shr eax, 8
xor ebp, esi
xor eax, dword [ebp*4 + 0x10359ccc]
add edx, 1
mov bl, bh
test bh, bh
je 0x1024aa42
mov bh, byte [edx - 1]
cmp bl, 0x23
jne 0x1024aa10
cmp bh, 0x23
jne 0x1024aa10
cmp byte [edx], 0x23
cmove eax, ecx
mov bh, 0x23
jmp 0x1024aa10
not eax
mov ecx, dword [0x1042dd60]
cmp dword [ecx + 0x19f0], eax
jne 0x1024aa58
mov dword [ecx + 0x19f4], eax
cmp dword [ecx + 0x1a1c], eax
mov ebx, dword [esp + 8]
jne 0x1024aa6b
mov byte [ecx + 0x1a20], 1
lea ecx, [esp + 0x28]
push ecx
push eax
call fcn.10275a20
add esp, 8
test al, al
movups xmm5, xmmword [esp + 0x48]
movss xmm6, dword [esp]
mov eax, dword [esp + 0x98]
je 0x1024aa91
mov byte [eax], 0
mov ebp, dword [esp + 0x94]
mov dword [edi + 0x130], 0
mov dword [edi + 0x134], 1
mov eax, dword [esp + 0x38]
mov dword [edi + 0x16c], eax
xorps xmm7, xmm7
test dword [esp + 0xc], 0x100000
je 0x1024ab32
mov eax, dword [0x1042dd60]
movss xmm0, dword [eax + 0x18d0]
mov ecx, dword [eax + 0x18cc]
sub esp, 0x1c
movss dword [esp + 4], xmm0
lea eax, [esp + 0x2c]
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x103ac166
mov dword [esp + 0xc], 0xbf800000
mov dword [esp + 8], 0x7f7fffff
call fcn.1026c140
movss xmm6, dword [esp]
movups xmm5, xmmword [esp + 0x48]
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x10357560]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm7, xmm0
mov eax, dword [0x1042dd60]
cmp ebp, 0xffffffff
mov esi, dword [esp + 4]
je 0x1024ab6c
mov edx, ebp
jmp 0x1024ab5e
cmp byte [edx + 1], 0x23
je 0x1024ab7b
add edx, 1
cmp edx, 0xffffffff
je 0x1024ab76
movzx ecx, byte [edx]
cmp cl, 0x23
je 0x1024ab50
test cl, cl
jne 0x1024ab56
jmp 0x1024ab7b
movss xmm1, dword [eax + 0x18d0]
jmp 0x1024abf3
mov edx, 0xffffffff
movss xmm1, dword [eax + 0x18d0]
cmp edx, ebp
je 0x1024abf3
mov ecx, dword [eax + 0x18cc]
sub esp, 0x1c
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebp
movss dword [esp + 4], xmm1
lea eax, [esp + 0x2c]
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0xbf800000
mov dword [esp + 8], 0x7f7fffff
movups xmmword [esp + 0x54], xmm7
call fcn.1026c140
movups xmm7, xmmword [esp + 0x38]
movss xmm6, dword [esp]
movups xmm5, xmmword [esp + 0x48]
movss xmm0, dword [esp + 0x10]
movss xmm1, dword [esp + 0x14]
addss xmm0, dword [0x10357560]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
jmp 0x1024abf6
xorps xmm0, xmm0
addss xmm0, xmm7
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x34], xmm1
movss xmm1, dword [ebx + 0x1550]
ucomiss xmm5, xmm1
jbe 0x1024ac1b
addss xmm5, dword [ebx + 0x1568]
ucomiss xmm6, xmm1
jbe 0x1024ac28
addss xmm6, dword [ebx + 0x1568]
movss xmm1, dword [ebx + 0x1534]
xorps xmm2, xmm2
ucomiss xmm2, xmm1
jae 0x1024aca3
ucomiss xmm1, dword [0x103564b8]
jae 0x1024aca3
addss xmm1, dword [0x10357500]
andps xmm1, xmmword [0x10357320]
addss xmm1, xmm1
movss xmm2, dword [0x103564b8]
movaps xmm3, xmm2
subss xmm3, xmm1
minss xmm3, xmm2
xorps xmm4, xmm4
maxss xmm4, xmm3
movss xmm1, dword [esi]
movss xmm2, dword [esi + 8]
addss xmm0, xmm5
addss xmm0, xmm6
addss xmm0, xmm1
movaps xmm3, xmm2
subss xmm3, xmm0
movaps xmm0, xmm5
maxss xmm0, xmm6
minss xmm0, xmm3
mulss xmm0, xmm4
maxss xmm5, xmm0
maxss xmm6, xmm0
jmp 0x1024acac
movss xmm1, dword [esi]
movss xmm2, dword [esi + 8]
addss xmm1, xmm5
subss xmm2, xmm6
movss xmm0, dword [esi + 4]
movss xmm3, dword [esi + 0xc]
movss dword [esp + 0x10], xmm1
movss dword [esp + 0x14], xmm0
movss dword [esp + 0x18], xmm2
movss dword [esp + 0x1c], xmm3
addss xmm2, dword [ebx + 0x1568]
movss dword [esp + 0x70], xmm1
movss dword [esp + 0x74], xmm0
movss dword [esp + 0x78], xmm2
movss dword [esp + 0x7c], xmm3
cmp ebp, 0xffffffff
je 0x1024ad91
lea ecx, [ebx + 0x1534]
mov esi, ebp
jmp 0x1024ad1e
cmp byte [esi + 1], 0x23
je 0x1024ad31
add esi, 1
cmp esi, 0xffffffff
je 0x1024ad2c
movzx edx, byte [esi]
cmp dl, 0x23
je 0x1024ad10
test dl, dl
jne 0x1024ad16
jmp 0x1024ad31
mov esi, 0xffffffff
cmp esi, ebp
je 0x1024ad91
mov ebx, dword [0x1042dd60]
mov edx, dword [ebx + 0x19b4]
mov eax, ebp
lea ebp, [esp + 0x70]
lea edi, [esp + 0x10]
push ebp
mov ebp, eax
push ecx
lea eax, [esp + 0x38]
push eax
push esi
push ebp
lea eax, [esp + 0x2c]
push eax
push edi
push dword [edx + 0x27c]
movups xmmword [esp + 0x58], xmm7
call fcn.1023a050
movups xmm7, xmmword [esp + 0x58]
add esp, 0x20
cmp byte [ebx + 0x2d40], 0
mov ebx, dword [esp + 8]
je 0x1024ad91
push esi
push ebp
push edi
call fcn.10239d50
movups xmm7, xmmword [esp + 0x44]
add esp, 0xc
test dword [esp + 0xc], 0x100000
je 0x1024aec5
movss xmm1, dword [esp + 0x10]
movss xmm0, dword [esp + 0x18]
movss xmm2, dword [esp + 0x30]
movaps xmm3, xmm1
addss xmm3, xmm2
movaps xmm4, xmm0
subss xmm4, xmm3
mulss xmm4, dword [ebx + 0x1534]
addss xmm4, xmm1
maxss xmm4, xmm1
movss xmm1, dword [0x1035735c]
subss xmm1, xmm7
addss xmm1, xmm2
movss xmm2, dword [ebx + 0x18d0]
mulss xmm2, dword [0x1035a6c4]
addss xmm1, xmm4
cvttps2dq xmm2, xmm2
cvtdq2ps xmm2, xmm2
movss xmm3, dword [esp + 0x14]
addss xmm3, xmm2
movss xmm4, dword [ebx + 0x1538]
mov dword [esp + 0x68], 0
movss dword [esp + 0x6c], xmm4
addss xmm2, dword [esp + 0x1c]
movss dword [esp + 0x60], xmm0
movss dword [esp + 0x64], xmm2
movss dword [esp + 0x58], xmm1
movss dword [esp + 0x5c], xmm3
mov esi, 0x103ac166
cmp esi, 0xffffffff
je 0x1024aec5
mov eax, 0x103ac167
jmp 0x1024ae5a
test cl, cl
je 0x1024ae6f
add esi, 1
inc eax
je 0x1024ae6a
movzx ecx, byte [esi]
cmp cl, 0x23
jne 0x1024ae50
cmp byte [esi + 1], 0x23
jne 0x1024ae54
jmp 0x1024ae6f
mov esi, 0xffffffff
cmp esi, 0x103ac166
je 0x1024aec5
mov ebx, dword [0x1042dd60]
mov eax, dword [ebx + 0x19b4]
lea ecx, [esp + 0x70]
lea edx, [esp + 0x68]
lea ebp, [esp + 0x60]
lea edi, [esp + 0x58]
push ecx
push edx
push 0
push esi
push 0x103ac166
push ebp
push edi
push dword [eax + 0x27c]
call fcn.1023a050
add esp, 0x20
cmp byte [ebx + 0x2d40], 0
je 0x1024aec5
push esi
push 0x103ac166
push edi
call fcn.10239d50
add esp, 0xc
add esp, 0x80
pop esi
pop edi
pop ebx
pop ebp
ret