Function at 0x1007e520
Capabilities:
Hash data with crc32

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x50
push esi
mov esi, dword [0x10248ac8]
push edi
mov edi, ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x28], edi
mov eax, dword [esi + 0x3e58]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e58]
mov ecx, dword [esi + 0x470c]
mov dword [esi + 0x470c], 0
mov dword [ebp - 0x10], eax
cmp byte [eax + 0xaf], 0
mov dword [ebp - 0x2c], ecx
jne 0x1007e8c6
push ecx
push edi
mov ecx, eax
call fcn.10047a30
mov dword [ebp - 0xc], eax
mov ecx, edi
cmp edi, 0xffffffff
jae 0x1007e5a8
mov dl, byte [ecx]
test dl, dl
je 0x1007e5a8
cmp dl, 0x23
jne 0x1007e5a2
cmp byte [ecx + 1], dl
je 0x1007e5a8
inc ecx
cmp ecx, 0xffffffff
jb 0x1007e592
mov eax, dword [0x10248ac8]
xorps xmm3, xmm3
movss xmm2, dword [eax + 0x3bc4]
cmp edi, ecx
jne 0x1007e5c1
xorps xmm6, xmm6
jmp 0x1007e604
movss xmm3, dword [0x10234fc0]
push 0
push ecx
push edi
push ecx
lea ecx, [ebp - 0x24]
mov dword [esp], 0xbf800000
push ecx
mov ecx, dword [eax + 0x3bc0]
call fcn.1006d900
movss xmm0, dword [ebp - 0x24]
xorps xmm3, xmm3
addss xmm0, dword [0x10234d00]
movss xmm2, dword [ebp - 0x20]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [ebp - 0x18], xmm6
call fcn.10055810
comiss xmm6, xmm3
mov eax, dword [ebp - 0x10]
movss xmm4, dword [eax + 0xf0]
movss xmm7, dword [esi + 0x37c0]
movaps xmm1, xmm4
movss xmm5, dword [eax + 0xf4]
addss xmm1, xmm0
movaps xmm0, xmm7
movss dword [ebp - 0x4c], xmm4
addss xmm0, xmm7
movss dword [ebp - 0x48], xmm5
movss dword [ebp - 0x44], xmm1
addss xmm0, xmm2
addss xmm0, xmm5
movss dword [ebp - 0x40], xmm0
jbe 0x1007e665
movaps xmm2, xmm6
addss xmm2, dword [esi + 0x37d4]
jmp 0x1007e668
xorps xmm2, xmm2
addss xmm1, xmm2
movss dword [ebp - 0x3c], xmm4
addss xmm0, xmm3
movss dword [ebp - 0x38], xmm5
lea ecx, [ebp - 0x24]
movss dword [ebp - 0x34], xmm1
subss xmm1, xmm4
movss dword [ebp - 0x30], xmm0
subss xmm0, xmm5
movss dword [ebp - 0x24], xmm1
movaps xmm1, xmm7
movss dword [ebp - 0x20], xmm0
call fcn.100551f0
mov esi, dword [ebp - 0xc]
lea eax, [ebp - 0x4c]
push 0
push eax
mov edx, esi
lea ecx, [ebp - 0x3c]
call fcn.10055350
add esp, 8
test al, al
je 0x1007e8c6
push 0
lea eax, [ebp - 2]
mov edx, esi
push eax
lea eax, [ebp - 3]
push eax
lea ecx, [ebp - 0x4c]
call fcn.1007c320
mov edi, esi
mov byte [ebp - 2], al
not edi
add esp, 0xc
mov edx, edi
mov esi, 0x102205dd
mov al, 0x23
cmp al, 0x23
jne 0x1007e6f4
cmp byte [esi], al
jne 0x1007e6f4
cmp byte [esi + 1], al
cmove edx, edi
movzx ecx, dl
movzx eax, al
xor ecx, eax
shr edx, 8
mov al, byte [esi]
inc esi
xor edx, dword [ecx*4 + 0x10184ca8]
test al, al
jne 0x1007e6e6
mov edi, dword [0x10248ac8]
not edx
mov dword [ebp - 8], edx
mov esi, dword [edi + 0x47c0]
cmp dword [edi + 0x47b4], esi
jle 0x1007e757
test esi, esi
jns 0x1007e745
push 0x731
push str.D:_aFedorawareFedorawareFedorawareFedoraware_TF2includeImGuiimgui.h
push str.i___0__i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebp - 8]
add esp, 0xc
mov eax, dword [edi + 0x47bc]
lea ecx, [esi + esi*4]
cmp dword [eax + ecx*8], edx
jne 0x1007e757
mov al, 1
jmp 0x1007e759
xor al, al
cmp byte [ebp - 2], 0
mov edi, dword [ebp - 8]
mov byte [ebp - 1], al
je 0x1007e776
test al, al
jne 0x1007e776
xor edx, edx
mov ecx, edi
call fcn.10056b10
mov byte [ebp - 1], 1
movss xmm1, dword [0x10234d08]
xor ecx, ecx
cmp byte [ebp - 3], cl
setne cl
add ecx, 7
call fcn.10045950
movss xmm0, dword [ebp - 0x44]
lea ecx, [ebp - 0x4c]
movss xmm1, dword [ebp - 0x4c]
mov esi, eax
mov edx, dword [ebp - 0xc]
movss dword [ebp - 0x20], xmm0
subss xmm0, dword [0x10234bc8]
movss dword [ebp - 0x1c], xmm1
push 1
maxss xmm1, xmm0
movss dword [ebp - 8], xmm1
call fcn.10046860
movss xmm0, dword [ebp - 8]
add esp, 4
mov eax, dword [ebp - 0x14]
movss dword [ebp - 0x34], xmm0
movss xmm0, dword [ebp - 0x40]
push 0xf0
push ecx
mov ecx, dword [ebp - 0x10]
movss dword [ebp - 0xc], xmm0
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [eax + 0x37c4]
lea eax, [ebp - 0x34]
mov ecx, dword [ecx + 0x264]
movss dword [esp], xmm0
push esi
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.10068d80
push dword [ebp - 0x40]
mov esi, dword [ebp - 0x14]
push dword [ebp - 0x44]
push dword [ebp - 0x48]
movss xmm0, dword [esi + 0x37c4]
push dword [ebp - 0x4c]
call fcn.10046770
movss xmm0, dword [ebp - 0x1c]
add esp, 0x10
movss xmm1, dword [ebp - 0x48]
movss dword [esi + 0x59d8], xmm0
movss xmm0, dword [ebp - 8]
movss dword [esi + 0x59dc], xmm1
movss dword [esi + 0x59e0], xmm0
movss xmm0, dword [ebp - 0xc]
movss dword [esi + 0x59e4], xmm0
movss xmm0, dword [ebp - 0x18]
comiss xmm0, dword [0x10234bc8]
jbe 0x1007e8a0
movss xmm0, dword [ebp - 0x20]
xor edx, edx
addss xmm1, dword [esi + 0x37c0]
addss xmm0, dword [esi + 0x37d4]
mov ecx, dword [ebp - 0x28]
movss dword [ebp - 0x20], xmm1
push dword [ebp - 0x20]
movss dword [ebp - 0x24], xmm0
push dword [ebp - 0x24]
push 1
call fcn.10045de0
add esp, 0xc
cmp byte [ebp - 1], 0
je 0x1007e8c6
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x4c]
push ecx
mov ecx, edi
mov dword [esi + 0x470c], eax
call fcn.1007e8e0
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
pop edi
xor al, al
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret