Function at 0x100ba130
Capabilities:
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x90
mov dword [esp], edx
mov edi, ecx
mov eax, dword [0x10356534]
xor eax, esp
mov dword [esp + 0x8c], eax
mov ebx, dword [0x10357698]
mov eax, dword [ecx + 8]
mov dword [esp + 8], eax
test al, 0x20
jne 0x100ba16a
cmp dword [ebx + 0x1544], 0xffffffff
setne al
jmp 0x100ba16c
xor eax, eax
mov ecx, dword [edi + 0x1a4]
mov dword [esp + 0x2c], ecx
or ecx, 0x10
mov dword [edi + 0x1a4], ecx
movsd xmm0, qword [0x10153fe0]
movsd qword [edi + 0x134], xmm0
movss xmm7, dword [ebx + 0x1558]
movss xmm0, dword [ebx + 0x18e0]
xorps xmm1, xmm1
movlps qword [esp + 0x84], xmm1
movlps qword [esp + 0x7c], xmm1
movaps xmm6, xmm7
cmp dword [esp + 0xa8], 0
je 0x100ba1e6
movaps xmm6, xmm7
addss xmm6, xmm0
mov edx, dword [esp]
mov ecx, dword [edx + 4]
movss xmm1, dword [edx + 8]
subss xmm1, xmm6
subss xmm1, xmm7
movss dword [esp + 0x84], xmm1
mov dword [esp + 0x88], ecx
test al, al
mov dword [esp + 4], ebx
je 0x100ba2ed
mov eax, dword [ebx + 0x1544]
test eax, eax
je 0x100ba227
cmp eax, 1
jne 0x100ba24a
addss xmm6, xmm0
mov ecx, dword [esp]
mov eax, dword [ecx + 4]
movss xmm0, dword [ecx + 8]
subss xmm0, xmm6
subss xmm0, xmm7
movss dword [esp + 0x7c], xmm0
mov dword [esp + 0x80], eax
jmp 0x100ba24a
mov ecx, dword [esp]
mov eax, dword [ecx + 4]
movss xmm1, dword [ecx]
addss xmm1, xmm7
subss xmm1, xmm7
movss dword [esp + 0x7c], xmm1
mov dword [esp + 0x80], eax
addss xmm7, xmm0
mov eax, dword [edi + 0xbc]
mov ecx, dword [edi + 0xc4]
mov ecx, dword [ecx + eax*4 - 4]
not ecx
mov bl, 0x23
mov edx, 0x1019b4a0
mov eax, ecx
jmp 0x100ba289
movzx esi, bl
movzx ebp, al
shr eax, 8
xor ebp, esi
xor eax, dword [ebp*4 + 0x1015bd1c]
inc edx
mov bl, bh
test bh, bh
je 0x100ba2a0
mov bh, byte [edx - 1]
cmp bl, 0x23
jne 0x100ba270
cmp bh, 0x23
jne 0x100ba270
cmp byte [edx], 0x23
cmove eax, ecx
mov bh, 0x23
jmp 0x100ba270
not eax
mov ebx, dword [esp + 4]
cmp dword [ebx + 0x1a50], eax
jne 0x100ba2b4
mov dword [ebx + 0x1a54], eax
movups xmmword [esp + 0xc], xmm7
movups xmmword [esp + 0x1c], xmm6
cmp dword [ebx + 0x1a8c], eax
jne 0x100ba2cd
mov byte [ebx + 0x1a90], 1
lea ecx, [esp + 0x7c]
push ecx
push eax
call fcn.100d6ea0
add esp, 8
test al, al
je 0x100ba2e3
mov byte [edi + 0x7e], 1
movups xmm6, xmmword [esp + 0x1c]
movups xmm7, xmmword [esp + 0xc]
cmp dword [esp + 0xa8], 0
movups xmmword [esp + 0x1c], xmm6
movups xmmword [esp + 0xc], xmm7
je 0x100ba3b2
mov eax, dword [edi + 0xbc]
mov ecx, dword [edi + 0xc4]
mov ecx, dword [ecx + eax*4 - 4]
not ecx
mov bl, 0x23
mov edx, 0x1019b4aa
mov eax, ecx
jmp 0x100ba349
movzx esi, bl
movzx ebp, al
shr eax, 8
xor ebp, esi
xor eax, dword [ebp*4 + 0x1015bd1c]
inc edx
mov bl, bh
test bh, bh
je 0x100ba360
mov bh, byte [edx - 1]
cmp bl, 0x23
jne 0x100ba330
cmp bh, 0x23
jne 0x100ba330
cmp byte [edx], 0x23
cmove eax, ecx
mov bh, 0x23
jmp 0x100ba330
not eax
mov ecx, dword [0x10357698]
cmp dword [ecx + 0x1a50], eax
jne 0x100ba376
mov dword [ecx + 0x1a54], eax
cmp dword [ecx + 0x1a8c], eax
mov ebx, dword [esp + 4]
jne 0x100ba389
mov byte [ecx + 0x1a90], 1
lea ecx, [esp + 0x84]
push ecx
push eax
call fcn.100d6c90
add esp, 8
test al, al
movups xmm6, xmmword [esp + 0x1c]
movups xmm7, xmmword [esp + 0xc]
je 0x100ba3b2
mov eax, dword [esp + 0xa8]
mov byte [eax], 0
mov ebp, dword [esp + 0xa4]
movsd xmm0, qword [0x1015a160]
movsd qword [edi + 0x134], xmm0
mov eax, dword [esp + 0x2c]
mov dword [edi + 0x1a4], eax
xorps xmm3, xmm3
test dword [esp + 8], 0x100000
je 0x100ba452
mov eax, dword [0x10357698]
movss xmm0, dword [eax + 0x18e0]
mov ecx, dword [eax + 0x18dc]
sub esp, 0x1c
movss dword [esp + 4], xmm0
lea eax, [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x1019c6f0
mov dword [esp + 0xc], 0xbf800000
mov dword [esp + 8], 0x7f7fffff
call fcn.100ce910
movups xmm7, xmmword [esp + 0xc]
movups xmm6, xmmword [esp + 0x1c]
movss xmm0, dword [esp + 0x64]
addss xmm0, dword [0x1015afd0]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm3, xmm0
mov eax, dword [0x10357698]
cmp ebp, 0xffffffff
mov esi, dword [esp]
movups xmmword [esp + 0x2c], xmm3
je 0x100ba48a
mov edx, ebp
jmp 0x100ba47c
cmp byte [edx + 1], 0x23
je 0x100ba499
inc edx
cmp edx, 0xffffffff
je 0x100ba494
movzx ecx, byte [edx]
cmp ecx, 0x23
je 0x100ba470
test ecx, ecx
jne 0x100ba476
jmp 0x100ba499
movss xmm1, dword [eax + 0x18e0]
jmp 0x100ba50f
mov edx, 0xffffffff
movss xmm1, dword [eax + 0x18e0]
cmp edx, ebp
je 0x100ba50f
mov ecx, dword [eax + 0x18dc]
sub esp, 0x1c
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebp
movss dword [esp + 4], xmm1
lea eax, [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0xbf800000
mov dword [esp + 8], 0x7f7fffff
call fcn.100ce910
movups xmm3, xmmword [esp + 0x2c]
movups xmm7, xmmword [esp + 0xc]
movups xmm6, xmmword [esp + 0x1c]
movss xmm0, dword [esp + 0x64]
movss xmm1, dword [esp + 0x68]
addss xmm0, dword [0x1015afd0]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
jmp 0x100ba512
xorps xmm0, xmm0
xorps xmm2, xmm2
addss xmm2, xmm1
addss xmm0, xmm3
movss dword [esp + 0x74], xmm0
movss dword [esp + 0x78], xmm2
movss xmm1, dword [ebx + 0x1558]
ucomiss xmm7, xmm1
jbe 0x100ba53e
addss xmm7, dword [ebx + 0x1570]
ucomiss xmm6, xmm1
jbe 0x100ba54b
addss xmm6, dword [ebx + 0x1570]
movss xmm2, dword [ebx + 0x153c]
xorps xmm1, xmm1
ucomiss xmm2, xmm1
jbe 0x100ba601
movss xmm1, dword [0x10154df4]
ucomiss xmm1, xmm2
jbe 0x100ba601
addss xmm2, dword [0x10154dd0]
andps xmm2, xmmword [0x10154d90]
addss xmm2, xmm2
movaps xmm3, xmm1
subss xmm3, xmm2
minss xmm1, xmm3
xorps xmm2, xmm2
cmpltss xmm3, xmm2
andnps xmm3, xmm1
movss xmm1, dword [esi]
movss xmm2, dword [esi + 8]
movaps xmm4, xmm2
subss xmm4, xmm1
subss xmm4, xmm7
subss xmm4, xmm6
subss xmm4, xmm0
movaps xmm0, xmm6
cmpless xmm0, xmm7
movaps xmm5, xmm0
andps xmm5, xmm7
andnps xmm0, xmm6
orps xmm0, xmm5
minss xmm0, xmm4
mulss xmm0, xmm3
movaps xmm3, xmm0
cmpless xmm3, xmm7
movaps xmm4, xmm3
andnps xmm4, xmm0
andps xmm3, xmm7
orps xmm3, xmm4
movaps xmm4, xmm0
cmpless xmm4, xmm6
movaps xmm5, xmm4
andnps xmm5, xmm0
andps xmm4, xmm6
orps xmm4, xmm5
movaps xmm6, xmm4
movaps xmm7, xmm3
jmp 0x100ba60a
movss xmm1, dword [esi]
movss xmm2, dword [esi + 8]
addss xmm1, xmm7
subss xmm2, xmm6
movss xmm0, dword [esi + 4]
movss xmm3, dword [esi + 0xc]
movss dword [esp + 0x64], xmm1
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x6c], xmm2
movss dword [esp + 0x70], xmm3
addss xmm2, dword [ebx + 0x1570]
movss dword [esp + 0x54], xmm1
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x5c], xmm2
movss dword [esp + 0x60], xmm3
cmp ebp, 0xffffffff
je 0x100ba6e3
lea ecx, [ebx + 0x153c]
mov esi, ebp
jmp 0x100ba67c
cmp byte [esi + 1], 0x23
je 0x100ba68f
inc esi
cmp esi, 0xffffffff
je 0x100ba68a
movzx edx, byte [esi]
cmp edx, 0x23
je 0x100ba670
test edx, edx
jne 0x100ba676
jmp 0x100ba68f
mov esi, 0xffffffff
cmp esi, ebp
je 0x100ba6e3
mov ebx, dword [0x10357698]
mov edx, dword [ebx + 0x1a18]
mov eax, ebp
lea ebp, [esp + 0x54]
lea edi, [esp + 0x64]
push ebp
mov ebp, eax
push ecx
lea eax, [esp + 0x7c]
push eax
push esi
push ebp
lea eax, [esp + 0x80]
push eax
push edi
push dword [edx + 0x290]
call fcn.100a7f00
add esp, 0x20
cmp byte [ebx + 0x2e48], 0
mov ebx, dword [esp + 4]
je 0x100ba6e3
push esi
push ebp
push edi
call fcn.100a7bd0
add esp, 0xc
test dword [esp + 8], 0x100000
je 0x100ba842
movss xmm0, dword [0x10156168]
subss xmm0, dword [esp + 0x2c]
movss xmm3, dword [esp + 0x64]
movss xmm2, dword [esp + 0x74]
movss xmm1, dword [ebx + 0x18e0]
mulss xmm1, dword [0x1015c764]
cvttps2dq xmm1, xmm1
cvtdq2ps xmm4, xmm1
movsd xmm1, qword [esp + 0x6c]
movaps xmm6, xmm1
subss xmm6, xmm3
subss xmm6, xmm2
mulss xmm6, dword [ebx + 0x153c]
movss xmm5, dword [esp + 0x68]
unpcklps xmm0, xmm5
movss xmm5, dword [ebx + 0x1540]
mov dword [esp + 0x4c], 0
movss dword [esp + 0x50], xmm5
addss xmm6, xmm3
movaps xmm5, xmm6
cmpless xmm5, xmm3
movaps xmm7, xmm5
andnps xmm7, xmm6
andps xmm5, xmm3
orps xmm5, xmm7
addss xmm5, xmm2
movq xmm2, xmm4
xorps xmm3, xmm3
shufps xmm2, xmm3, 0xe2
addps xmm1, xmm2
movlps qword [esp + 0x44], xmm1
movss xmm3, xmm5
addps xmm3, xmm0
addps xmm3, xmm2
movlps qword [esp + 0x3c], xmm3
mov esi, 0x1019c6f0
cmp esi, 0xffffffff
je 0x100ba842
xor eax, eax
mov ecx, 0x1019c6f0
not ecx
jmp 0x100ba7cf
cmp byte [eax + 0x1019c6f1], 0x23
je 0x100ba7ec
inc esi
inc eax
cmp ecx, eax
je 0x100ba7e7
movzx edx, byte [eax + 0x1019c6f0]
cmp edx, 0x23
je 0x100ba7c0
test edx, edx
jne 0x100ba7c9
lea esi, [eax + 0x1019c6f0]
jmp 0x100ba7ec
mov esi, 0xffffffff
cmp esi, 0x1019c6f0
je 0x100ba842
mov ebx, dword [0x10357698]
mov eax, dword [ebx + 0x1a18]
lea ecx, [esp + 0x54]
lea edx, [esp + 0x4c]
lea ebp, [esp + 0x44]
lea edi, [esp + 0x3c]
push ecx
push edx
push 0
push esi
push 0x1019c6f0
push ebp
push edi
push dword [eax + 0x290]
call fcn.100a7f00
add esp, 0x20
cmp byte [ebx + 0x2e48], 0
je 0x100ba842
push esi
push 0x1019c6f0
push edi
call fcn.100a7bd0
add esp, 0xc
mov ecx, dword [esp + 0x8c]
xor ecx, esp
call fcn.100f6c33
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret