Function at 0x100b9310
Capabilities:
Hash data with crc32

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xf0
mov eax, dword [0x10356534]
xor eax, ebp
mov dword [esp + 0xe8], eax
test byte [ecx + 8], 0x42
jne 0x100b9347
mov esi, ecx
cmp byte [ecx + 0x90], 0
jg 0x100b9347
cmp byte [esi + 0x91], 0
jle 0x100b9361
xor ebx, ebx
mov ecx, dword [esp + 0xe8]
xor ecx, ebp
call fcn.100f6c33
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp byte [esi + 0x7b], 0
je 0x100b9347
mov edi, edx
mov eax, dword [0x10357698]
movzx ebx, byte [eax + 0xb3]
movss xmm0, dword [esi + 0x3c]
addss xmm0, dword [0x10154df4]
mov dword [esp + 4], eax
movss xmm1, dword [eax + 0x18e0]
movss xmm2, dword [0x101569c4]
mulss xmm2, xmm1
addss xmm2, xmm0
mulss xmm1, dword [0x1015c630]
movaps xmm0, xmm2
cmpless xmm0, xmm1
movaps xmm3, xmm0
andnps xmm3, xmm2
andps xmm0, xmm1
orps xmm0, xmm3
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10156134]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
movsd xmm0, qword [0x10153fe0]
movsd qword [esi + 0x134], xmm0
push str.RESIZE
call fcn.100bafa0
add esp, 4
cmp dword [ebp + 0xc], 0
mov dword [esp + 0x40], esi
mov byte [esp + 0xb], bl
jle 0x100b98f7
mov dword [esp + 0x70], edi
xorps xmm3, xmm3
test bl, bl
je 0x100b9417
movss xmm3, dword [0x101560a0]
movaps xmm0, xmmword [esp + 0x60]
shufps xmm0, xmm0, 0
movaps xmm1, xmmword [0x101540d0]
movaps xmmword [esp + 0x80], xmm0
xorps xmm1, xmm0
movaps xmmword [esp + 0xb0], xmm1
shufps xmm3, xmm3, 0
movaps xmm5, xmmword [0x1015c4f0]
mov dword [esp + 0xc], 0
mov edi, 0x1015c124
xor ebx, ebx
movaps xmm4, xmm5
movaps xmmword [esp + 0x30], xmm3
jmp 0x100b9577
xor eax, eax
test dl, dl
sete al
xor eax, 0x1f
test cl, cl
mov ecx, 0x20
cmovne eax, ecx
mov edx, dword [0x10357698]
shl eax, 4
movss xmm0, dword [edx + eax + 0x15dc]
movss xmm6, dword [0x10154df4]
movaps xmm1, xmm6
minss xmm1, xmm0
xorps xmm2, xmm2
cmpltss xmm0, xmm2
andnps xmm0, xmm1
movss xmm1, dword [edx + eax + 0x15e0]
movss xmm7, dword [0x101566c0]
mulss xmm0, xmm7
movaps xmm3, xmm4
movaps xmm4, xmm5
movss xmm5, dword [0x10154044]
addss xmm0, xmm5
cvttss2si ecx, xmm0
movaps xmm0, xmm6
minss xmm0, xmm1
cmpltss xmm1, xmm2
andnps xmm1, xmm0
mulss xmm1, xmm7
addss xmm1, xmm5
cvttss2si esi, xmm1
movss xmm1, dword [edx + eax + 0x15e4]
movaps xmm0, xmm6
minss xmm0, xmm1
cmpltss xmm1, xmm2
andnps xmm1, xmm0
movss xmm0, dword [edx + eax + 0x15e8]
mulss xmm0, dword [edx + 0x1520]
mulss xmm1, xmm7
addss xmm1, xmm5
cvttss2si eax, xmm1
movaps xmm1, xmm6
minss xmm1, xmm0
cmpltss xmm0, xmm2
andnps xmm0, xmm1
mulss xmm0, xmm7
addss xmm0, xmm5
movaps xmm5, xmm4
movaps xmm4, xmm3
movaps xmm3, xmmword [esp + 0x30]
cvttss2si edx, xmm0
shl esi, 8
or esi, ecx
shl eax, 0x10
or eax, esi
mov esi, dword [esp + 0x40]
shl edx, 0x18
or edx, eax
mov eax, dword [ebp + 0x10]
mov dword [eax + ebx*4], edx
inc ebx
add edi, 0x18
cmp dword [ebp + 0xc], ebx
je 0x100b9909
movsd xmm6, qword [edi - 8]
movsd xmm0, qword [edi]
movaps xmm1, xmm0
mulps xmm1, xmmword [esp + 0x80]
movaps xmm7, xmm3
movaps xmmword [esp + 0xa0], xmm0
mulps xmm7, xmm0
movsd xmm0, qword [esi + 0xc]
movsd xmm2, qword [esi + 0x14]
addps xmm2, xmm0
subps xmm2, xmm0
movaps xmmword [esp + 0x50], xmm6
mulps xmm2, xmm6
addps xmm2, xmm0
movlhps xmm2, xmm2
movaps xmmword [esp + 0x90], xmm7
movaps xmm0, xmm7
movlhps xmm0, xmm1
movaps xmm1, xmm2
subps xmm1, xmm0
addps xmm0, xmm2
movaps xmm2, xmm0
movsd xmm2, xmm1
movupd xmmword [esp + 0xd0], xmm2
movaps xmm2, xmm0
unpckhpd xmm2, xmm0
ucomiss xmm1, xmm2
jbe 0x100b95fc
movss dword [esp + 0xd0], xmm2
movss dword [esp + 0xd8], xmm1
shufps xmm1, xmm1, 0x55
shufps xmm0, xmm0, 0xff
ucomiss xmm1, xmm0
jbe 0x100b961b
movss dword [esp + 0xd4], xmm0
movss dword [esp + 0xdc], xmm1
mov eax, ebx
shr eax, 8
mov ecx, dword [esi + 0xbc]
mov edx, dword [esi + 0xc4]
mov ecx, dword [edx + ecx*4 - 4]
not ecx
mov edx, ebx
xor edx, ecx
shr ecx, 8
movzx edx, dl
xor ecx, dword [edx*4 + 0x1015bd1c]
mov edx, ecx
xor ecx, eax
mov esi, ebx
shr esi, 0x10
shr edx, 8
movzx eax, cl
xor edx, dword [eax*4 + 0x1015bd1c]
mov eax, edx
xor edx, esi
mov ecx, ebx
shr ecx, 0x18
shr eax, 8
movzx edx, dl
xor eax, dword [edx*4 + 0x1015bd1c]
movzx edx, al
xor edx, ecx
shr eax, 8
xor eax, dword [edx*4 + 0x1015bd1c]
not eax
mov ecx, dword [0x10357698]
cmp dword [ecx + 0x1a50], eax
jne 0x100b9694
mov dword [ecx + 0x1a54], eax
movaps xmmword [esp + 0x10], xmm5
movaps xmmword [esp + 0x20], xmm4
cmp dword [ecx + 0x1a8c], eax
jne 0x100b96ad
mov byte [ecx + 0x1a90], 1
push 0x40800
lea ecx, [esp + 0xd2]
push ecx
lea ecx, [esp + 0xd7]
push ecx
push eax
lea eax, [esp + 0xe0]
push eax
call fcn.100d61d0
add esp, 0x14
movzx eax, byte [esp + 0xce]
movzx ecx, byte [esp + 0xcf]
or cl, al
mov esi, dword [esp + 0x40]
je 0x100b9701
mov ecx, ebx
and ecx, 1
mov edx, 6
sub edx, ecx
mov ecx, dword [esp + 4]
mov dword [ecx + 0x1e0c], edx
test al, al
movaps xmm4, xmmword [esp + 0x20]
movaps xmm5, xmmword [esp + 0x10]
je 0x100b98c5
mov eax, dword [esp + 4]
cmp byte [eax + 0x3e5], 0
je 0x100b97d0
test ebx, ebx
jne 0x100b97d0
mov eax, dword [esp + 0x70]
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
lea ecx, [esp + 0xe0]
mov edx, esi
call fcn.100b61e0
mov eax, dword [0x10357698]
cmp dword [eax + 0x1a50], 0
movsd xmm5, qword [esp + 0xe0]
setne byte [eax + 0x1a5c]
je 0x100b9778
mov dword [eax + 0x1a58], 0
mov word [eax + 0x1a5f], 0
mov dword [eax + 0x1a50], 0
mov word [eax + 0x1a5d], 0
mov dword [eax + 0x1a80], 0
mov byte [eax + 0x1a61], 0
xorps xmm0, xmm0
movlps qword [eax + 0x1a64], xmm0
mov dword [eax + 0x1a74], 0
mov dword [eax + 0x1a70], 0
mov al, 1
mov dword [esp + 0xc], eax
movaps xmm4, xmmword [esp + 0x20]
jmp 0x100b98c5
movaps xmm1, xmmword [esp + 0xa0]
mulps xmm1, xmmword [esp + 0xb0]
movaps xmm0, xmmword [esp + 0x90]
subps xmm1, xmm0
movaps xmm3, xmmword [esp + 0x50]
mulps xmm1, xmm3
addps xmm1, xmm0
movsd xmm4, qword [eax + 0xe8]
movsd xmm0, qword [eax + 0x1a78]
subps xmm4, xmm0
addps xmm4, xmm1
movaps xmm0, xmm3
cmpeqps xmm0, xmmword [0x10153fd0]
movaps xmm5, xmm3
cmpeqps xmm5, xmmword [0x10153fb0]
movaps xmmword [esp + 0x10], xmm5
mov eax, dword [ebp + 0x14]
movsd xmm1, qword [eax]
movsd xmm2, qword [eax + 8]
andps xmm1, xmm0
andnps xmm0, xmmword [0x1015c470]
orps xmm0, xmm1
andps xmm2, xmm5
movaps xmm1, xmm5
andnps xmm1, xmmword [0x1015c4f0]
orps xmm1, xmm2
movaps xmm2, xmm4
minps xmm1, xmm4
cmpltps xmm2, xmm0
andps xmm0, xmm2
andnps xmm2, xmm1
movsd xmm1, qword [esi + 0x14]
orps xmm2, xmm0
movsd xmm0, qword [esi + 0xc]
addps xmm1, xmm0
subps xmm0, xmm2
mulps xmm0, xmm3
addps xmm0, xmm2
movaps xmmword [esp + 0x20], xmm0
subps xmm2, xmm1
mulps xmm2, xmm3
addps xmm2, xmm1
subps xmm2, xmm0
movaps xmm1, xmm2
movaps xmm0, xmm2
movaps xmmword [esp + 0x50], xmm2
shufps xmm1, xmm2, 0x55
lea ecx, [esp + 0xe0]
mov edx, esi
call fcn.100b61e0
movaps xmm4, xmmword [esp + 0x20]
movsd xmm5, qword [esp + 0xe0]
movaps xmm0, xmm5
subps xmm0, xmmword [esp + 0x50]
andps xmm0, xmmword [esp + 0x10]
subps xmm4, xmm0
movaps xmm3, xmmword [esp + 0x30]
movzx ecx, byte [esp + 0xce]
movzx edx, byte [esp + 0xcf]
test ebx, ebx
je 0x100b9470
test cl, cl
jne 0x100b9470
test dl, dl
je 0x100b956a
jmp 0x100b9470
movaps xmm4, xmmword [0x1015c4f0]
mov dword [esp + 0xc], 0
movaps xmm5, xmm4
cmp byte [esp + 0xb], 0
je 0x100b9da7
movaps xmm0, xmmword [0x1015c6e0]
movaps xmm2, xmmword [esp + 0x60]
movss xmm0, xmm2
movaps xmmword [esp + 0x50], xmm0
movaps xmm0, xmmword [0x1015c6f0]
unpcklps xmm0, xmm2
movaps xmmword [esp + 0xa0], xmm0
movaps xmm0, xmmword [0x1015c700]
unpcklps xmm0, xmm2
movaps xmmword [esp + 0x90], xmm0
movss xmm0, dword [0x101560a0]
movaps xmm1, xmm2
unpcklps xmm1, xmm0
movss xmm3, dword [0x10156148]
movaps xmm6, xmm2
unpcklps xmm6, xmm3
movlhps xmm6, xmm1
movaps xmmword [esp + 0x70], xmm6
unpcklps xmm0, xmm2
unpcklps xmm3, xmm2
movlhps xmm3, xmm0
movaps xmmword [esp + 0x80], xmm3
mov edi, 0xffffffff
jmp 0x100b9a35
movss xmm1, dword [0x10155ff4]
movaps xmm2, xmmword [0x1015c750]
unpcklps xmm2, xmm1
movlhps xmm0, xmm5
shufps xmm0, xmm5, 0xe2
xorps xmm1, xmm1
movaps xmm3, xmmword [0x1015c470]
movsd xmm4, qword [esi + 0x14]
movaps xmm6, xmm1
cmpeqps xmm6, xmmword [0x10153fb0]
movaps xmmword [esp + 0x10], xmm6
minps xmm2, xmm0
cmpltps xmm0, xmm3
andps xmm3, xmm0
andnps xmm0, xmm2
orps xmm0, xmm3
movaps xmm2, xmm5
subps xmm2, xmm0
mulps xmm2, xmm1
addps xmm2, xmm0
movaps xmmword [esp + 0x20], xmm2
addps xmm4, xmm5
subps xmm0, xmm4
mulps xmm0, xmm1
addps xmm0, xmm4
subps xmm0, xmm2
movaps xmmword [esp + 0x30], xmm0
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
lea ecx, [esp + 0xe0]
mov edx, esi
call fcn.100b61e0
movaps xmm4, xmmword [esp + 0x20]
movsd xmm5, qword [esp + 0xe0]
movaps xmm0, xmm5
subps xmm0, xmmword [esp + 0x30]
andps xmm0, xmmword [esp + 0x10]
subps xmm4, xmm0
cmp edi, 3
jae 0x100b9dab
mov eax, edi
inc edi
cmp edi, 3
ja case.default.0x100b9a4a
movsd xmm0, qword [esi + 0xc]
movsd xmm1, qword [esi + 0x14]
addps xmm1, xmm0
jmp dword [edi*4 + 0x1015c7a4]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0x55
addss xmm2, dword [0x101560a0]
subss xmm1, dword [esp + 0x60]
addps xmm0, xmmword [esp + 0x50]
movlps qword [esp + 0xd0], xmm0
movss dword [esp + 0xd8], xmm1
movss dword [esp + 0xdc], xmm2
jmp 0x100b9b16
xorps xmm0, xmm0
movaps xmmword [esp + 0xd0], xmm0
jmp 0x100b9b16
movaps xmm2, xmm1
movaps xmm6, xmmword [esp + 0x90]
addps xmm2, xmm6
movaps xmm3, xmm1
subps xmm3, xmm6
shufps xmm3, xmm2, 1
shufps xmm0, xmm1, 1
shufps xmm0, xmm1, 0xe2
addps xmm0, xmmword [esp + 0xa0]
shufps xmm0, xmm3, 0x24
movups xmmword [esp + 0xd0], xmm0
jmp 0x100b9b16
shufps xmm0, xmm1, 0x10
shufps xmm0, xmm1, 0x48
movaps xmm1, xmm0
movaps xmm2, xmmword [esp + 0x70]
addps xmm1, xmm2
subps xmm0, xmm2
shufps xmm0, xmm1, 0x32
shufps xmm1, xmm0, 0x84
jmp 0x100b9b0e
shufps xmm1, xmm0, 1
shufps xmm0, xmm1, 0x24
movaps xmm1, xmm0
movaps xmm2, xmmword [esp + 0x80]
addps xmm1, xmm2
subps xmm0, xmm2
shufps xmm0, xmm1, 0x23
shufps xmm1, xmm0, 0x24
movups xmmword [esp + 0xd0], xmm1
mov dword [esp + 0x30], eax
lea edx, [eax + 5]
mov esi, edx
shr esi, 8
mov ecx, edx
mov ebx, dword [esp + 0x40]
mov eax, dword [ebx + 0xbc]
mov ebx, dword [ebx + 0xc4]
mov ebx, dword [ebx + eax*4 - 4]
mov eax, edx
not ebx
xor edx, ebx
shr ebx, 8
movzx edx, dl
xor ebx, dword [edx*4 + 0x1015bd1c]
mov edx, ebx
xor ebx, esi
shr ecx, 0x10
shr edx, 8
movzx esi, bl
xor edx, dword [esi*4 + 0x1015bd1c]
mov ebx, edx
xor edx, ecx
shr eax, 0x18
shr ebx, 8
movzx ecx, dl
xor ebx, dword [ecx*4 + 0x1015bd1c]
movzx ecx, bl
xor ecx, eax
mov eax, ebx
shr eax, 8
xor eax, dword [ecx*4 + 0x1015bd1c]
not eax
mov ecx, dword [0x10357698]
cmp dword [ecx + 0x1a50], eax
jne 0x100b9b9a
mov dword [ecx + 0x1a54], eax
movaps xmmword [esp + 0x10], xmm5
movaps xmmword [esp + 0x20], xmm4
cmp dword [ecx + 0x1a8c], eax
jne 0x100b9bb3
mov byte [ecx + 0x1a90], 1
push 0x800
lea ecx, [esp + 0xd2]
push ecx
lea ecx, [esp + 0xd7]
push ecx
push eax
lea eax, [esp + 0xe0]
push eax
call fcn.100d61d0
add esp, 0x14
cmp byte [esp + 0xcf], 0
mov esi, dword [esp + 0x40]
mov ebx, dword [esp + 0xc]
je 0x100b9c40
mov eax, dword [esp + 4]
movss xmm0, dword [eax + 0x1a48]
ucomiss xmm0, dword [0x101569c0]
movzx eax, byte [esp + 0xce]
movaps xmm4, xmmword [esp + 0x20]
movaps xmm5, xmmword [esp + 0x10]
ja 0x100b9c1a
test al, al
je 0x100b9a2c
mov ecx, edi
and ecx, 1
add ecx, 3
mov edx, dword [esp + 4]
mov dword [edx + 0x1e0c], ecx
test al, al
jne 0x100b9c6a
jmp 0x100b9a2c
cmp byte [esp + 0xce], 0
movaps xmm4, xmmword [esp + 0x20]
movaps xmm5, xmmword [esp + 0x10]
je 0x100b9a2c
mov eax, edi
and eax, 1
add eax, 3
mov ecx, dword [esp + 4]
mov dword [ecx + 0x1e0c], eax
mov eax, dword [ebp + 8]
mov dword [eax], edi
movsd xmm5, qword [esi + 0xc]
mov ecx, dword [esp + 0x30]
cmp ecx, 0xffffffff
je 0x100b9ce0
cmp edi, 1
je 0x100b9d0a
cmp edi, 3
mov eax, dword [esp + 4]
je 0x100b9d53
cmp edi, 2
jne 0x100b9d8a
movss xmm0, dword [eax + 0xec]
subss xmm0, dword [eax + 0x1a7c]
addss xmm0, dword [0x101560a0]
movlhps xmm0, xmm5
shufps xmm0, xmm5, 0xe2
mov eax, dword [ebp + 0x14]
movss xmm1, dword [eax + 4]
movaps xmm3, xmmword [0x1015c720]
unpcklps xmm3, xmm1
movaps xmm2, xmmword [0x1015c4f0]
movaps xmm1, xmmword [0x1015c730]
jmp 0x100b99af
mov eax, dword [esp + 4]
movss xmm0, dword [eax + 0xec]
subss xmm0, dword [eax + 0x1a7c]
addss xmm0, dword [0x101560a0]
cmp ecx, 0xffffffff
je 0x100b9d9a
jmp 0x100b998c
mov eax, dword [esp + 4]
movss xmm1, dword [eax + 0xe8]
subss xmm1, dword [eax + 0x1a78]
addss xmm1, dword [0x101560a0]
movaps xmm0, xmm5
movss xmm0, xmm1
mov eax, dword [ebp + 0x14]
movss xmm1, dword [eax]
movaps xmm3, xmmword [0x1015c740]
movss xmm3, xmm1
movaps xmm2, xmmword [0x1015c4f0]
movss xmm1, dword [0x10154df4]
jmp 0x100b99af
movss xmm1, dword [eax + 0xe8]
subss xmm1, dword [eax + 0x1a78]
addss xmm1, dword [0x101560a0]
movaps xmm0, xmm5
movss xmm0, xmm1
mov eax, dword [ebp + 0x14]
movss xmm1, dword [eax + 8]
movaps xmm2, xmmword [0x1015c710]
movss xmm2, xmm1
jmp 0x100b99a5
movaps xmm0, xmm5
shufps xmm0, xmm5, 0x55
cmp ecx, 0xffffffff
jne 0x100b998c
mov eax, dword [ebp + 0x14]
movss xmm1, dword [eax + 0xc]
jmp 0x100b9994
mov ebx, dword [esp + 0xc]
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x1a18]
dec dword [eax + 0xbc]
movsd xmm0, qword [0x1015a160]
movsd qword [esi + 0x134], xmm0
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x1c58]
test eax, eax
je 0x100b9f7b
cmp dword [eax + 0x334], esi
jne 0x100b9f7b
mov edi, dword [esp + 4]
mov eax, dword [edi + 0x1b80]
xorps xmm2, xmm2
cmp eax, 3
movaps xmmword [esp + 0x20], xmm4
jne 0x100b9e49
cmp byte [edi + 0x101], 0
je 0x100b9e89
sub esp, 0x14
movaps xmm0, xmmword [0x10154000]
movups xmmword [esp + 4], xmm0
lea eax, [esp + 0xe4]
mov dword [esp], eax
movaps xmmword [esp + 0x24], xmm5
call fcn.100bd520
movaps xmm5, xmmword [esp + 0x24]
movaps xmm4, xmmword [esp + 0x34]
add esp, 0x14
movsd xmm2, qword [esp + 0xd0]
mov eax, dword [edi + 0x1b80]
cmp eax, 4
jne 0x100b9e8c
sub esp, 0x14
movaps xmm0, xmmword [0x10156bd0]
movups xmmword [esp + 4], xmm0
lea eax, [esp + 0xe4]
mov dword [esp], eax
movaps xmmword [esp + 0x24], xmm5
call fcn.100bd520
movaps xmm5, xmmword [esp + 0x24]
movaps xmm4, xmmword [esp + 0x34]
add esp, 0x14
movsd xmm2, qword [esp + 0xd0]
jmp 0x100b9e8c
xorps xmm2, xmm2
xorps xmm0, xmm0
ucomiss xmm2, xmm0
jne 0x100b9ea8
jp 0x100b9ea8
movaps xmm1, xmm2
shufps xmm1, xmm2, 0x55
ucomiss xmm1, xmm0
jne 0x100b9ea8
jnp 0x100b9f7b
mov eax, dword [esp + 4]
movss xmm0, dword [eax + 0x18]
movss xmm1, dword [eax + 0xa8]
mulss xmm0, dword [0x1015c760]
minss xmm1, dword [eax + 0xac]
mulss xmm1, xmm0
cvttps2dq xmm0, xmm1
cvtdq2ps xmm0, xmm0
shufps xmm0, xmm0, 0
mulps xmm2, xmm0
mov eax, dword [ebp + 0x14]
movsd xmm0, qword [eax]
movsd xmm1, qword [esi + 0xc]
subps xmm0, xmm1
movsd xmm1, qword [esi + 0x14]
subps xmm0, xmm1
movaps xmm1, xmm0
cmpleps xmm1, xmm2
unpcklps xmm1, xmm1
movmskpd eax, xmm1
test al, 2
jne 0x100b9f0d
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
jmp 0x100b9f14
movaps xmm1, xmm2
shufps xmm1, xmm2, 0x55
movaps xmmword [esp + 0x40], xmm1
test al, 1
jne 0x100b9f20
movaps xmm2, xmm0
movaps xmmword [esp + 0x10], xmm2
mov eax, dword [esp + 4]
mov byte [eax + 0x1c6c], 0
mov byte [eax + 0x1ba3], 1
push 0x3f800000
push 0x20
call fcn.100a72f0
add esp, 8
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
movaps xmm1, xmmword [esp + 0x40]
addss xmm1, dword [esi + 0x20]
movaps xmm0, xmmword [esp + 0x10]
addss xmm0, dword [esi + 0x1c]
lea ecx, [esp + 0xd0]
mov edx, esi
call fcn.100b61e0
movsd xmm5, qword [esp + 0xd0]
movaps xmm4, xmmword [esp + 0x20]
ucomiss xmm5, dword [0x10155ff4]
jne 0x100b9f86
jnp 0x100b9fae
movlps qword [esi + 0x1c], xmm5
test byte [esi + 9], 1
jne 0x100b9fae
mov eax, dword [0x10357698]
xorps xmm0, xmm0
ucomiss xmm0, dword [eax + 0x2e20]
jb 0x100b9fae
movss xmm0, dword [eax + 0x1c]
movss dword [eax + 0x2e20], xmm0
ucomiss xmm4, dword [0x10155ff4]
jne 0x100b9fb9
jnp 0x100b9fe8
cvttps2dq xmm0, xmm4
cvtdq2ps xmm0, xmm0
movlps qword [esi + 0xc], xmm0
test byte [esi + 9], 1
jne 0x100b9fe8
mov eax, dword [0x10357698]
xorps xmm0, xmm0
ucomiss xmm0, dword [eax + 0x2e20]
jb 0x100b9fe8
movss xmm0, dword [eax + 0x1c]
movss dword [eax + 0x2e20], xmm0
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x20]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x14], eax
and bl, 1
jmp 0x100b9349