Function at 0x1009cd20
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov ecx, dword [0x10167324]
push ebx
mov ebx, ecx
mov dword [ebp - 8], ecx
push esi
push edi
mov dword [ebp - 0xc], ebx
mov eax, dword [ebx + 0x4ae8]
mov edi, dword [eax]
test edi, edi
je 0x1009cd4c
mov eax, dword [ebx + 0x3fe0]
mov dword [edi + 0x50], eax
cmp dword [ebx + 0x4af0], edi
je 0x1009cd92
test edi, edi
je 0x1009cd82
mov eax, dword [edi + 0x28]
mov dword [ebx + 0x4aec], eax
mov eax, dword [ebx + 0x3920]
mov dword [ebx + 0x4af0], edi
test eax, eax
je 0x1009cd92
push edi
call eax
mov ecx, dword [0x10167324]
add esp, 4
mov dword [ebp - 8], ecx
jmp 0x1009cd92
mov dword [ebx + 0x4aec], 0x3f800000
mov dword [ebx + 0x4af0], edi
movss xmm1, dword [ebx + 0x3a24]
xorps xmm5, xmm5
subss xmm1, dword [ebx + 0x3994]
movss xmm0, dword [ebx + 0x3a20]
or edx, 0xffffffff
movss dword [ebx + 0x4a64], xmm0
mov esi, 0x10126b4d
mov al, 0x23
maxss xmm1, xmm5
movss dword [ebx + 0x4a68], xmm1
or ebx, 0xffffffff
movss xmm4, dword [ecx + 0x3994]
addss xmm4, xmm4
addss xmm4, dword [ecx + 0x3dcc]
cmp al, 0x23
jne 0x1009cdf0
cmp byte [esi], al
jne 0x1009cdf0
cmp byte [esi + 1], al
cmove edx, ebx
movzx ecx, dl
movzx eax, al
xor ecx, eax
shr edx, 8
mov al, byte [esi]
inc esi
xor edx, dword [ecx*4 + 0x10129e08]
test al, al
jne 0x1009cde2
mov esi, dword [ebp - 8]
not edx
push edx
lea ecx, [esi + 0x404c]
call fcn.10004850
mov ecx, eax
test edi, edi
jne 0x1009ce28
mov eax, dword [esi + 0x4ae8]
mov edi, dword [eax]
mov ebx, dword [ebp - 0xc]
test ecx, ecx
je 0x1009ce3d
cmp word [ecx + 0xec], 0
jne 0x1009cedd
movss xmm1, dword [edi + 0xf4]
movss xmm0, dword [edi + 0x10]
movaps xmm3, xmm1
addss xmm3, dword [edi + 8]
movss xmm2, dword [edi + 0xf8]
subss xmm0, xmm1
addss xmm2, dword [edi + 0xc]
addss xmm0, dword [edi + 0xfc]
or dword [esi + 0x49e4], 3
movss dword [esi + 0x49f8], xmm3
movss dword [esi + 0x49fc], xmm2
mov dword [esi + 0x4a00], 0
maxss xmm5, xmm0
mov dword [esi + 0x4a04], 0
mov dword [esi + 0x49e8], 1
mov byte [esi + 0x4a20], 1
movss dword [esi + 0x4a0c], xmm4
mov dword [esi + 0x49ec], 1
addss xmm5, xmm3
subss xmm5, xmm3
movss dword [esi + 0x4a08], xmm5
addss xmm4, dword [edi + 0xf8]
movss dword [edi + 0xf8], xmm4
mov eax, dword [edi]
lea ecx, [esi + 0x4a7c]
or dword [esi + 0x49e4], 0x100
mov dword [esi + 0x4a40], eax
lea eax, [ebp - 0x18]
movss xmm0, dword [esi + 0x3964]
push eax
mov dword [ebp - 0x18], 3
movss dword [ebp - 0x14], xmm0
call fcn.10035700
mov dword [esi + 0x3964], 0
lea eax, [ebp - 0x18]
mov esi, dword [0x10167324]
push eax
mov dword [ebp - 0x18], 5
movss xmm1, dword [esi + 0x396c]
lea ecx, [esi + 0x4a7c]
movss xmm0, dword [esi + 0x3970]
movss dword [ebp - 0x14], xmm1
movss dword [ebp - 0x10], xmm0
call fcn.10035700
push 0x20050f
xor edx, edx
mov dword [esi + 0x396c], 0
mov ecx, str.MainMenuBar
mov dword [esi + 0x3970], 0
call fcn.10010630
add esp, 4
mov byte [ebp - 1], al
mov ecx, 2
call fcn.10006060
mov dword [ebx + 0x4a64], 0
mov dword [ebx + 0x4a68], 0
mov bl, byte [ebp - 1]
test bl, bl
je 0x1009cfb0
call fcn.1009c790
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.10013850
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret