Function at 0x100be440
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x24
push ebx
push esi
mov esi, dword [0x1013a848]
push edi
mov byte [esi + 0x357], 0
mov dword [esi + 0x1df8], 0
mov dword [esi + 0x1dfc], 0
mov bh, byte [esi + 8]
and bh, 1
test byte [esi + 8], 2
mov byte [esp + 0xf], bh
je 0x100be525
test byte [esi + 0xc], 1
je 0x100be525
cmp dword [esi + 0x1d28], 3
lea ecx, [esi + 0x1d28]
mov bl, 1
mov dword [esp + 0x10], ecx
xorps xmm1, xmm1
je 0x100be534
movss xmm0, dword [esi + 0x300]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x308]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x304]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x30c]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x310]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x314]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x318]
comiss xmm0, xmm1
ja 0x100be519
movss xmm0, dword [esi + 0x31c]
lea ecx, [esi + 0x1d28]
comiss xmm0, xmm1
mov dword [esp + 0x10], ecx
jbe 0x100be534
mov dword [esi + 0x1d28], 3
jmp 0x100be52a
xor bl, bl
xorps xmm1, xmm1
lea ecx, [esi + 0x1d28]
mov dword [esp + 0x10], ecx
test bh, bh
je 0x100be668
mov eax, dword [esi + 0x64]
test eax, eax
js 0x100be55e
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be55e
mov dword [esi + 0x300], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x68]
test eax, eax
js 0x100be580
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be580
mov dword [esi + 0x308], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x6c]
test eax, eax
js 0x100be5a2
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be5a2
mov dword [esi + 0x304], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x38]
test eax, eax
js 0x100be5c4
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be5c4
mov dword [esi + 0x344], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x3c]
test eax, eax
js 0x100be5e6
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be5e6
mov dword [esi + 0x348], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x40]
test eax, eax
js 0x100be608
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be608
mov dword [esi + 0x34c], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x44]
test eax, eax
js 0x100be62a
mov al, byte [eax + esi + 0x100]
test al, al
je 0x100be62a
mov dword [esi + 0x350], 0x3f800000
mov dword [ecx], 2
mov al, byte [esi + 0xfc]
test al, al
je 0x100be63e
mov dword [esi + 0x338], 0x3f800000
cmp byte [esi + 0xfd], 0
je 0x100be651
mov dword [esi + 0x33c], 0x3f800000
cmp byte [esi + 0xfe], 0
je 0x100be668
test al, al
jne 0x100be668
mov dword [esi + 0x340], 0x3f800000
movups xmm0, xmmword [esi + 0x1458]
mov eax, dword [esi + 0x14a8]
lea ecx, [esi + 0x1458]
movss xmm2, dword [0x1012af44]
movups xmmword [esi + 0x14ac], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [esi + 0x14bc], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [esi + 0x14cc], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [esi + 0x14dc], xmm0
movups xmm0, xmmword [ecx + 0x40]
movups xmmword [esi + 0x14ec], xmm0
mov dword [esi + 0x14fc], eax
mov eax, 0x15
movss xmm0, dword [ecx - 0x1158]
comiss xmm0, xmm1
jbe 0x100be6e3
movss xmm0, dword [ecx]
comiss xmm1, xmm0
jbe 0x100be6dc
movaps xmm0, xmm1
jmp 0x100be6e6
addss xmm0, dword [esi + 0x18]
jmp 0x100be6e6
movaps xmm0, xmm2
movss dword [ecx], xmm0
add ecx, 4
sub eax, 1
jne 0x100be6c1
mov eax, dword [esi + 0x1d50]
test eax, eax
je 0x100be759
mov edx, dword [esi + 0x1cf8]
test edx, edx
je 0x100be759
mov ecx, dword [esi + 0x1d40]
mov dword [esi + 0x1cfc], eax
mov dword [esi + 0x1d40], ecx
mov dword [esi + 0x1d00], 0
mov dword [edx + ecx*4 + 0x330], eax
add ecx, ecx
mov eax, dword [esi + 0x1cf8]
movups xmm0, xmmword [esi + 0x1d54]
movups xmmword [eax + ecx*8 + 0x338], xmm0
cmp byte [esi + 0x1d4e], 0
je 0x100be759
mov word [esi + 0x1d49], 1
mov byte [esi + 0x1d4b], 1
cmp byte [esi + 0x1d64], 0
mov word [esi + 0x1d4d], 0
mov dword [esi + 0x1d50], 0
mov dword [esi + 0x1d18], 0
je 0x100be784
call fcn.100bf390
cmp dword [esi + 0x1d6c], 2
jne 0x100be7b0
cmp dword [esi + 0x1d84], 0
jne 0x100be7a6
cmp dword [esi + 0x1dd4], 0
jne 0x100be7a6
mov byte [esi + 0x1d4a], 0
mov dword [esi + 0x1d6c], 0
cmp byte [esi + 0x1d49], 0
je 0x100be831
cmp byte [esi + 0x1d48], 0
je 0x100be831
test byte [esi + 8], 4
je 0x100be82a
test byte [esi + 0xc], 4
je 0x100be82a
cmp byte [esi + 0x1d4a], 0
jne 0x100be82a
cmp byte [esi + 0x1d4b], 0
je 0x100be82a
cmp dword [esi + 0x1cf8], 0
je 0x100be82a
call fcn.100be170
movss dword [esp + 0x24], xmm1
movaps xmm1, xmm0
movss dword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x24]
movss dword [esi + 0x380], xmm1
movss dword [esi + 0x384], xmm0
movss dword [esi + 0xe4], xmm1
movss dword [esi + 0xe8], xmm0
mov byte [esi + 0x357], 1
mov byte [esi + 0x1d49], 0
mov ecx, dword [esi + 0x1cf8]
mov byte [esi + 0x1d48], 0
mov dword [esi + 0x1d14], 0
test ecx, ecx
je 0x100be877
mov eax, ecx
nop
cmp dword [eax + 0x320], eax
je 0x100be86d
test dword [eax + 8], 0x14000000
jne 0x100be86d
mov eax, dword [eax + 0x31c]
test eax, eax
jne 0x100be850
jmp 0x100be877
cmp eax, ecx
je 0x100be877
mov dword [eax + 0x32c], ecx
mov eax, dword [esi + 0x1cf8]
test eax, eax
je 0x100be89d
cmp dword [eax + 0x32c], 0
je 0x100be89d
cmp dword [esi + 0x1d40], 0
jne 0x100be89d
mov dword [eax + 0x32c], 0
call fcn.100bfec0
test bh, bh
jne 0x100be8aa
test bl, bl
je 0x100be91f
mov eax, dword [esi + 0x1cf8]
test eax, eax
je 0x100be91f
test dword [eax + 8], 0x40000
jne 0x100be91f
mov byte [esi + 0x359], 1
cmp dword [esi + 0x1cfc], 0
je 0x100be926
cmp byte [esi + 0x1d4a], 0
jne 0x100be926
mov al, 1
mov edx, 1
mov byte [esi + 0x35a], al
mov ecx, edx
call fcn.100be2c0
xorps xmm5, xmm5
comiss xmm0, xmm5
jbe 0x100bea9f
cmp dword [esi + 0x1bc8], 0
je 0x100be933
mov ebx, dword [0x1013a848]
mov eax, dword [ebx + 0x1be0]
shr eax, 1
test dl, al
jne 0x100beaa5
call fcn.100b2930
jmp 0x100beaa5
mov byte [esi + 0x359], 0
cmp dword [esi + 0x1e00], 0
jne 0x100be8d6
xor al, al
jmp 0x100be8d8
mov edi, dword [esi + 0x1cf8]
test edi, edi
je 0x100bea2b
cmp edi, dword [edi + 0x320]
je 0x100bea2b
test dword [edi + 8], 0x4000000
jne 0x100bea2b
mov ebx, dword [edi + 0x31c]
test ebx, ebx
je 0x100bea2b
movss xmm0, dword [edi + 0xc]
mov ecx, ebx
movss dword [esp + 0x18], xmm0
movss xmm0, dword [edi + 0x10]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [edi + 0x14]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [edi + 0x18]
movss dword [esp + 0x20], xmm0
call fcn.100bb2d0
movss xmm5, dword [esp + 0x1c]
movss xmm4, dword [esp + 0x18]
movaps xmm2, xmm5
addss xmm2, dword [esp + 0x20]
subss xmm5, dword [ebx + 0x10]
mov ecx, dword [edi + 0x54]
movaps xmm3, xmm4
addss xmm3, dword [esp + 0x14]
subss xmm4, dword [ebx + 0xc]
subss xmm2, dword [ebx + 0x10]
movss dword [esp + 0x24], xmm5
xorps xmm5, xmm5
subss xmm3, dword [ebx + 0xc]
mov ebx, dword [0x1013a848]
movss dword [esp + 0x20], xmm4
movss dword [esp + 0x2c], xmm2
mov eax, dword [ebx + 0x1cf8]
mov dword [ebx + 0x1cfc], ecx
mov dword [ebx + 0x1d40], 0
mov dword [ebx + 0x1d00], 0
mov dword [eax + 0x330], ecx
mov eax, dword [ebx + 0x1cf8]
movss dword [esp + 0x28], xmm3
movups xmm0, xmmword [esp + 0x20]
movups xmmword [eax + 0x338], xmm0
jmp 0x100beaa5
mov edx, dword [esi + 0x1cd4]
test edx, edx
jle 0x100bea5a
mov eax, dword [esi + 0x1cdc]
lea ecx, [edx + edx*8]
mov eax, dword [eax + ecx*4 - 0x20]
test dword [eax + 8], 0x8000000
jne 0x100bea9f
lea ecx, [edx - 1]
mov dl, 1
call fcn.100bcee0
xorps xmm5, xmm5
jmp 0x100bea9f
cmp dword [esi + 0x1d40], 0
je 0x100bea6c
xor ecx, ecx
call fcn.100bdfe0
jmp 0x100bea9f
test edi, edi
je 0x100bea8b
mov eax, dword [edi + 8]
test eax, 0x4000000
jne 0x100bea81
test eax, 0x1000000
jne 0x100bea8b
mov dword [edi + 0x330], 0
mov dword [esi + 0x1d00], 0
mov dword [esi + 0x1cfc], 0
mov ebx, dword [0x1013a848]
mov edi, dword [esi + 0x1cfc]
mov dword [esi + 0x1d10], 0
mov dword [esi + 0x1d0c], 0
mov dword [esi + 0x1d08], 0
mov dword [esi + 0x1d04], 0
test edi, edi
je 0x100beb96
cmp byte [esi + 0x1d4a], 0
jne 0x100beb96
cmp dword [esi + 0x1e00], 0
jne 0x100beb96
mov eax, dword [esi + 0x1cf8]
test eax, eax
je 0x100beb96
test dword [eax + 8], 0x40000
jne 0x100beb96
movss xmm0, dword [ebx + 0x300]
comiss xmm0, xmm5
seta al
mov byte [esp + 0xe], al
test al, al
je 0x100beb3b
mov edx, 1
xor ecx, ecx
call fcn.100be2c0
comiss xmm0, xmm5
jbe 0x100beb3b
mov cl, dl
jmp 0x100beb3d
xor cl, cl
mov eax, dword [esi + 0x1bc8]
test eax, eax
jne 0x100beb53
test cl, cl
je 0x100beb57
mov dword [esi + 0x1d04], edi
jmp 0x100beb57
cmp eax, edi
jne 0x100beb96
cmp byte [esp + 0xe], 0
je 0x100beb64
mov dword [esi + 0x1d08], edi
test eax, eax
je 0x100beb6c
cmp eax, edi
jne 0x100beb96
test cl, cl
je 0x100beb76
mov dword [esi + 0x1d0c], edi
test eax, eax
je 0x100beb7e
cmp eax, edi
jne 0x100beb96
mov edx, 1
lea ecx, [edx + 1]
call fcn.100be2c0
comiss xmm0, xmm5
jbe 0x100beb96
mov dword [esi + 0x1d10], edi
mov ecx, dword [esi + 0x1cf8]
test ecx, ecx
je 0x100bebb0
test dword [ecx + 8], 0x40000
je 0x100bebb0
mov byte [esi + 0x1d4a], 1
mov eax, dword [esi + 0x1d24]
mov byte [esi + 0x1d64], 0
test eax, eax
je 0x100bebd9
mov dword [esi + 0x1d10], eax
mov dword [esi + 0x1d0c], eax
mov dword [esi + 0x1d08], eax
mov dword [esi + 0x1d04], eax
cmp dword [esi + 0x1d6c], 0
mov dword [esi + 0x1d24], 0
jne 0x100bed1f
or edi, 0xffffffff
mov dword [esi + 0x1d74], 0xffffffff
mov dword [esi + 0x1d68], 0
test ecx, ecx
je 0x100bed17
or edi, edi
cmp dword [esi + 0x1e00], 0
jne 0x100bed17
or edi, 0xffffffff
test dword [ecx + 8], 0x40000
jne 0x100bed17
or edi, edi
test byte [ebx + 0x1bdc], 1
jne 0x100bec67
mov edx, 3
lea ecx, [edx + 1]
call fcn.100be2c0
comiss xmm5, xmm0
jb 0x100bec5b
lea ecx, [edx + 0xe]
or edi, 0xffffffff
call fcn.100be2c0
comiss xmm0, xmm5
jbe 0x100bec67
mov dword [esi + 0x1d74], 0
xor edi, edi
mov eax, dword [ebx + 0x1bdc]
shr eax, 1
test al, 1
jne 0x100beca1
mov edx, 3
lea ecx, [edx + 2]
call fcn.100be2c0
comiss xmm5, xmm0
jb 0x100bec92
lea ecx, [edx + 0xf]
call fcn.100be2c0
comiss xmm0, xmm5
jbe 0x100beca1
mov dword [esi + 0x1d74], 1
mov edi, 1
mov eax, dword [ebx + 0x1bdc]
shr eax, 2
test al, 1
jne 0x100becdc
mov edx, 3
lea ecx, [edx + 3]
call fcn.100be2c0
comiss xmm5, xmm0
jb 0x100beccd
lea ecx, [edx + 0x10]
call fcn.100be2c0
comiss xmm0, xmm5
jbe 0x100becdc
mov dword [esi + 0x1d74], 2
mov edi, 2
mov eax, dword [ebx + 0x1bdc]
shr eax, 3
test al, 1
jne 0x100bed17
mov edx, 3
lea ecx, [edx + 4]
call fcn.100be2c0
comiss xmm5, xmm0
jb 0x100bed08
lea ecx, [edx + 0x11]
call fcn.100be2c0
comiss xmm0, xmm5
jbe 0x100bed17
mov dword [esi + 0x1d74], 3
mov edi, 3
mov dword [esi + 0x1d7c], edi
jmp 0x100bed29
mov dword [esi + 0x1d6c], 2
xor al, al
xorps xmm0, xmm0
movss dword [esp + 0x18], xmm0
cmp byte [esp + 0xf], al
je 0x100bed4e
call fcn.100bf5c0
mov al, byte [esi + 0x1d64]
xorps xmm5, xmm5
movss dword [esp + 0x18], xmm0
mov ecx, dword [esi + 0x1d74]
cmp ecx, 0xffffffff
je 0x100bed74
mov byte [esi + 0x1d64], 1
mov eax, dword [esi + 0x37c]
mov dword [esi + 0x1d70], eax
mov dword [esi + 0x1d78], ecx
jmp 0x100bed78
test al, al
je 0x100bed9b
cmp dword [esi + 0x1cfc], 0
jne 0x100bed9b
mov word [esi + 0x1d4d], 0x101
mov dword [esi + 0x1d50], 0
mov byte [esi + 0x1d4a], 0
cmp byte [ebx + 0x1d64], 0
jne 0x100bedb1
cmp byte [ebx + 0x1d4d], 0
jne 0x100bedb1
xor al, al
jmp 0x100bedb3
mov al, 1
movss xmm4, dword [0x1012b2a0]
movss xmm1, dword [0x1012acd8]
mov byte [ebx + 0x1d4c], al
mov edi, dword [esi + 0x1cf8]
test edi, edi
je 0x100befa4
test dword [edi + 8], 0x40000
jne 0x100befa4
cmp dword [esi + 0x1e00], 0
jne 0x100befa4
movss xmm0, dword [ebx + 0x1934]
mov eax, dword [edi + 0x31c]
mulss xmm0, dword [edi + 0x280]
test eax, eax
je 0x100bee13
mulss xmm0, dword [eax + 0x280]
cmp dword [edi + 0x144], 0
mulss xmm0, dword [0x1012ae38]
mulss xmm0, dword [esi + 0x18]
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [esp + 0x14], xmm2
jne 0x100beed4
cmp byte [edi + 0x151], 0
je 0x100beed4
cmp byte [esi + 0x1d64], 0
je 0x100beed4
mov eax, dword [esi + 0x1d74]
test eax, eax
je 0x100bee72
movaps xmm1, xmm2
xorps xmm1, xmm4
cmp eax, 1
jne 0x100bee9e
movaps xmm0, xmm2
jmp 0x100bee7b
movaps xmm0, xmm2
xorps xmm0, xmm4
movaps xmm1, xmm0
addss xmm0, dword [edi + 0x58]
mov dword [edi + 0x70], 0
mov dword [edi + 0x78], 0
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x68], xmm0
mov eax, dword [esi + 0x1d74]
cmp eax, 2
je 0x100beeb1
cmp eax, 3
jne 0x100beed4
movaps xmm1, xmm2
addss xmm1, dword [edi + 0x5c]
mov dword [edi + 0x74], 0
mov dword [edi + 0x7c], 0
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x6c], xmm0
xor edx, edx
lea ecx, [edx + 9]
call fcn.100be2c0
lea ecx, [edx + 8]
movaps xmm7, xmm0
call fcn.100be2c0
lea ecx, [edx + 0xb]
subss xmm7, xmm0
call fcn.100be2c0
lea ecx, [edx + 0xa]
movaps xmm6, xmm0
call fcn.100be2c0
movss xmm1, dword [ebx + 0x338]
subss xmm6, xmm0
comiss xmm1, xmm5
jbe 0x100bef21
mulss xmm7, dword [0x1012ac74]
mulss xmm6, dword [0x1012ac74]
movss xmm0, dword [ebx + 0x33c]
comiss xmm0, xmm5
jbe 0x100bef3e
mulss xmm7, dword [0x1012adc0]
mulss xmm6, dword [0x1012adc0]
movss xmm1, dword [esp + 0x14]
ucomiss xmm7, xmm5
lahf
test ah, 0x44
jnp 0x100bef74
cmp byte [edi + 0x88], dl
je 0x100bef74
mulss xmm7, xmm1
mov dword [edi + 0x70], edx
mov dword [edi + 0x78], edx
addss xmm7, dword [edi + 0x58]
cvttss2si eax, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x68], xmm0
movss xmm4, dword [0x1012b2a0]
ucomiss xmm6, xmm5
lahf
test ah, 0x44
jnp 0x100befa4
mulss xmm6, xmm1
mov dword [edi + 0x74], edx
mov dword [edi + 0x7c], edx
addss xmm6, dword [edi + 0x5c]
cvttss2si eax, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x6c], xmm0
mov dword [esi + 0x1d80], 0
mov dword [esi + 0x1d88], 0
mov dword [esi + 0x1d84], 0
mov dword [esi + 0x1d94], 0x7f7fffff
mov dword [esi + 0x1d90], 0x7f7fffff
mov dword [esi + 0x1d8c], 0x7f7fffff
mov dword [esi + 0x1d98], 0
mov dword [esi + 0x1d9c], 0
mov dword [esi + 0x1da0], 0
mov dword [esi + 0x1da4], 0
mov dword [esi + 0x1da8], 0
mov dword [esi + 0x1db0], 0
mov dword [esi + 0x1dac], 0
mov dword [esi + 0x1dbc], 0x7f7fffff
mov dword [esi + 0x1db8], 0x7f7fffff
mov dword [esi + 0x1db4], 0x7f7fffff
mov dword [esi + 0x1dc0], 0
mov dword [esi + 0x1dc4], 0
mov dword [esi + 0x1dc8], 0
mov dword [esi + 0x1dcc], 0
mov dword [esi + 0x1dd0], 0
mov dword [esi + 0x1dd8], 0
mov dword [esi + 0x1dd4], 0
mov dword [esi + 0x1de4], 0x7f7fffff
mov dword [esi + 0x1de0], 0x7f7fffff
mov dword [esi + 0x1ddc], 0x7f7fffff
mov dword [esi + 0x1de8], 0
mov dword [esi + 0x1dec], 0
mov dword [esi + 0x1df0], 0
mov dword [esi + 0x1df4], 0
cmp byte [esi + 0x1d64], 0
je 0x100bf260
mov eax, dword [esp + 0x10]
cmp dword [eax], 3
jne 0x100bf260
mov ecx, dword [esi + 0x1d40]
test ecx, ecx
jne 0x100bf260
mov eax, dword [esi + 0x1cf8]
movss xmm3, dword [0x1012ad2c]
movss xmm2, dword [eax + 0x1f4]
subss xmm2, dword [eax + 0xc]
movss xmm6, dword [eax + 0x1fc]
movss xmm7, dword [eax + 0x200]
movss xmm1, dword [eax + 0x1f8]
subss xmm6, dword [eax + 0xc]
subss xmm7, dword [eax + 0x10]
subss xmm1, dword [eax + 0x10]
movss xmm5, dword [eax + 0x338]
subss xmm2, xmm3
addss xmm6, xmm3
addss xmm7, xmm3
subss xmm1, xmm3
comiss xmm5, xmm2
jb 0x100bf17a
movss xmm0, dword [eax + 0x33c]
comiss xmm0, xmm1
jb 0x100bf17a
comiss xmm6, dword [eax + 0x340]
jb 0x100bf17a
comiss xmm7, dword [eax + 0x344]
jae 0x100bf260
movss xmm3, dword [ebx + 0x1934]
mov edx, dword [eax + 0x31c]
mulss xmm3, dword [eax + 0x280]
test edx, edx
je 0x100bf19c
mulss xmm3, dword [edx + 0x280]
mulss xmm3, dword [0x1012acd8]
movaps xmm0, xmm7
add ecx, ecx
subss xmm0, xmm1
minss xmm0, xmm3
xorps xmm0, xmm4
movaps xmm4, xmm6
subss xmm4, xmm2
subss xmm1, xmm0
minss xmm4, xmm3
movss xmm3, dword [eax + ecx*8 + 0x33c]
comiss xmm1, xmm3
xorps xmm4, xmmword [0x1012b2a0]
subss xmm2, xmm4
addss xmm4, xmm6
movaps xmm6, xmm0
addss xmm6, xmm7
jbe 0x100bf1ec
movaps xmm3, xmm1
jmp 0x100bf1f0
minss xmm3, xmm6
comiss xmm2, xmm5
jbe 0x100bf1fa
movaps xmm5, xmm2
jmp 0x100bf1fe
minss xmm5, xmm4
movss dword [eax + ecx*8 + 0x338], xmm5
movss dword [eax + ecx*8 + 0x33c], xmm3
movss xmm0, dword [eax + ecx*8 + 0x344]
comiss xmm1, xmm0
ja 0x100bf225
movaps xmm1, xmm0
minss xmm1, xmm6
movss xmm0, dword [eax + ecx*8 + 0x340]
comiss xmm2, xmm0
ja 0x100bf23a
movaps xmm2, xmm0
minss xmm2, xmm4
movss dword [eax + ecx*8 + 0x340], xmm2
movss dword [eax + ecx*8 + 0x344], xmm1
mov dword [esi + 0x1d00], 0
mov dword [esi + 0x1cfc], 0
mov eax, dword [esi + 0x1cf8]
test eax, eax
je 0x100bf2b3
mov ecx, dword [esi + 0x1d40]
add ecx, ecx
movss xmm0, dword [eax + ecx*8 + 0x338]
comiss xmm0, dword [eax + ecx*8 + 0x340]
ja 0x100bf2b3
movss xmm0, dword [eax + ecx*8 + 0x33c]
comiss xmm0, dword [eax + ecx*8 + 0x344]
ja 0x100bf2b3
movups xmm0, xmmword [eax + ecx*8 + 0x338]
lea ecx, [esp + 0x20]
movups xmmword [esp + 0x20], xmm0
movups xmm0, xmmword [ecx]
movups xmmword [esp + 0x20], xmm0
jmp 0x100bf2cb
lea ecx, [esp + 0x20]
xorps xmm0, xmm0
movups xmmword [esp + 0x20], xmm0
movups xmm0, xmmword [ecx]
movups xmmword [esp + 0x20], xmm0
test eax, eax
je 0x100bf311
movss xmm4, dword [esp + 0x28]
movss xmm3, dword [esp + 0x2c]
movss xmm1, dword [esp + 0x20]
movss xmm0, dword [esp + 0x24]
addss xmm4, dword [eax + 0xc]
addss xmm3, dword [eax + 0x10]
addss xmm1, dword [eax + 0xc]
addss xmm0, dword [eax + 0x10]
movss dword [esp + 0x28], xmm4
movss dword [esp + 0x2c], xmm3
movss dword [esp + 0x20], xmm1
movss dword [esp + 0x24], xmm0
jmp 0x100bf319
xorps xmm0, xmm0
movups xmmword [esp + 0x20], xmm0
movss xmm1, dword [esp + 0x18]
lea eax, [esp + 0x20]
movups xmm0, xmmword [eax]
pop edi
movups xmmword [esi + 0x1d2c], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esi + 0x1d30]
addss xmm1, dword [esi + 0x1d38]
movss dword [esi + 0x1d30], xmm0
movss dword [esi + 0x1d38], xmm1
movss xmm0, dword [esi + 0x1d2c]
addss xmm0, dword [0x1012ad2c]
mov dword [esi + 0x1d3c], 0
minss xmm0, dword [esi + 0x1d34]
movss dword [esi + 0x1d2c], xmm0
movss dword [esi + 0x1d34], xmm0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret