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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x38
push esi
mov esi, dword [0x43acf0]
xorps xmm1, xmm1
push edi
mov byte [esi + 0x357], 0
mov dword [esi + 0x1e00], 0
mov dword [esi + 0x1e04], 0
mov dl, byte [esi + 8]
and dl, 1
test byte [esi + 8], 2
mov byte [ebp - 2], dl
je 0x41103d
test byte [esi + 0xc], 1
je 0x41103d
cmp dword [esi + 0x1d30], 3
lea ecx, [esi + 0x1d30]
mov byte [ebp - 1], 1
je 0x411047
movss xmm0, dword [esi + 0x300]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x308]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x304]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x30c]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x310]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x314]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x318]
comiss xmm0, xmm1
ja 0x411031
movss xmm0, dword [esi + 0x31c]
lea ecx, [esi + 0x1d30]
comiss xmm0, xmm1
jbe 0x411047
mov dword [esi + 0x1d30], 3
jmp 0x411041
mov byte [ebp - 1], 0
lea ecx, [esi + 0x1d30]
test dl, dl
je 0x411192
mov eax, dword [esi + 0x64]
test eax, eax
js 0x411071
mov al, byte [esi + eax + 0x100]
test al, al
je 0x411071
mov dword [esi + 0x300], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x68]
test eax, eax
js 0x411093
mov al, byte [eax + esi + 0x100]
test al, al
je 0x411093
mov dword [esi + 0x308], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x6c]
test eax, eax
js 0x4110b5
mov al, byte [eax + esi + 0x100]
test al, al
je 0x4110b5
mov dword [esi + 0x304], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x38]
test eax, eax
js 0x4110d7
mov al, byte [eax + esi + 0x100]
test al, al
je 0x4110d7
mov dword [esi + 0x344], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x3c]
test eax, eax
js 0x4110f9
mov al, byte [eax + esi + 0x100]
test al, al
je 0x4110f9
mov dword [esi + 0x348], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x40]
test eax, eax
js 0x41111b
mov al, byte [eax + esi + 0x100]
test al, al
je 0x41111b
mov dword [esi + 0x34c], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x44]
test eax, eax
js 0x41113d
mov al, byte [eax + esi + 0x100]
test al, al
je 0x41113d
mov dword [esi + 0x350], 0x3f800000
mov dword [ecx], 2
mov al, byte [esi + 0xfc]
test al, al
je 0x411151
mov dword [esi + 0x338], 0x3f800000
cmp byte [esi + 0xfd], 0
je 0x411164
mov dword [esi + 0x33c], 0x3f800000
cmp byte [esi + 0xfe], 0
je 0x411192
test al, al
jne 0x411192
mov dword [esi + 0x340], 0x3f800000
cmp byte [esi + 0x1e1c], al
je 0x411192
cmp dword [esi + 0x1508], 0
jle 0x411192
mov byte [esi + 0x1e1c], al
movups xmm0, xmmword [esi + 0x1458]
mov eax, dword [esi + 0x14a8]
lea ecx, [esi + 0x1458]
movss xmm2, dword [0x435ac8]
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
nop dword [eax + eax]
movss xmm0, dword [ecx - 0x1158]
comiss xmm0, xmm1
jbe 0x411212
movss xmm0, dword [ecx]
comiss xmm1, xmm0
jbe 0x41120b
movaps xmm0, xmm1
jmp 0x411215
addss xmm0, dword [esi + 0x18]
jmp 0x411215
movaps xmm0, xmm2
movss dword [ecx], xmm0
add ecx, 4
sub eax, 1
jne 0x4111f0
mov eax, dword [esi + 0x1d58]
test eax, eax
je 0x411288
mov edx, dword [esi + 0x1d00]
test edx, edx
je 0x411288
mov ecx, dword [esi + 0x1d48]
mov dword [esi + 0x1d04], eax
mov dword [esi + 0x1d48], ecx
mov dword [esi + 0x1d08], 0
mov dword [edx + ecx*4 + 0x32c], eax
add ecx, ecx
mov eax, dword [esi + 0x1d00]
movups xmm0, xmmword [esi + 0x1d5c]
movups xmmword [eax + ecx*8 + 0x334], xmm0
cmp byte [esi + 0x1d56], 0
je 0x411288
mov word [esi + 0x1d51], 1
mov byte [esi + 0x1d53], 1
cmp byte [esi + 0x1d6c], 0
mov word [esi + 0x1d55], 0
mov dword [esi + 0x1d58], 0
mov dword [esi + 0x1d20], 0
je 0x4112b3
call fcn.00411f80
cmp dword [esi + 0x1d74], 2
jne 0x4112df
cmp dword [esi + 0x1d8c], 0
jne 0x4112d5
cmp dword [esi + 0x1ddc], 0
jne 0x4112d5
mov byte [esi + 0x1d52], 0
mov dword [esi + 0x1d74], 0
cmp byte [esi + 0x1d51], 0
je 0x411357
cmp byte [esi + 0x1d50], 0
je 0x411357
test byte [esi + 8], 4
je 0x411350
test byte [esi + 0xc], 4
je 0x411350
cmp byte [esi + 0x1d52], 0
jne 0x411350
cmp byte [esi + 0x1d53], 0
je 0x411350
cmp dword [esi + 0x1d00], 0
je 0x411350
lea ecx, [ebp - 0x28]
call fcn.00410c70
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [esi + 0x380], xmm0
movss dword [esi + 0x384], xmm1
movss dword [esi + 0xe4], xmm0
movss dword [esi + 0xe8], xmm1
mov byte [esi + 0x357], 1
mov byte [esi + 0x1d51], 0
mov ecx, dword [esi + 0x1d00]
mov byte [esi + 0x1d50], 0
mov dword [esi + 0x1d1c], 0
test ecx, ecx
je 0x41139b
mov eax, ecx
cmp dword [eax + 0x31c], eax
je 0x411391
test dword [eax + 8], 0x14000000
jne 0x411391
mov eax, dword [eax + 0x318]
test eax, eax
jne 0x411374
jmp 0x41139b
cmp eax, ecx
je 0x41139b
mov dword [eax + 0x328], ecx
mov eax, dword [esi + 0x1d00]
test eax, eax
je 0x4113c1
cmp dword [eax + 0x328], 0
je 0x4113c1
cmp dword [esi + 0x1d48], 0
jne 0x4113c1
mov dword [eax + 0x328], 0
call fcn.00412990
cmp byte [ebp - 2], 0
jne 0x4113d2
cmp byte [ebp - 1], 0
je 0x41144a
mov eax, dword [esi + 0x1d00]
test eax, eax
je 0x41144a
test dword [eax + 8], 0x40000
jne 0x41144a
mov byte [esi + 0x359], 1
cmp dword [esi + 0x1d04], 0
je 0x411451
cmp byte [esi + 0x1d52], 0
jne 0x411451
mov al, 1
mov edx, 1
mov byte [esi + 0x35a], al
mov ecx, edx
call fcn.00410dd0
xorps xmm5, xmm5
comiss xmm0, xmm5
jbe 0x411642
cmp dword [esi + 0x1bd4], 0
je 0x41145e
mov edi, dword [0x43acf0]
mov dword [ebp - 0xc], edi
mov eax, dword [edi + 0x1bec]
shr eax, 1
test dl, al
jne 0x41164b
call fcn.004055e0
jmp 0x41164b
mov byte [esi + 0x359], 0
cmp dword [esi + 0x1e08], 0
jne 0x4113fe
xor al, al
jmp 0x411400
cmp dword [esi + 0x1d48], 0
je 0x4114ef
mov edi, dword [0x43acf0]
mov dword [ebp - 0xc], edi
mov eax, dword [edi + 0x1d00]
mov ecx, dword [eax + 0x328]
test ecx, ecx
je 0x41148d
cmp byte [ecx + 0x8b], 0
jne 0x41148f
mov ecx, eax
mov dword [edi + 0x1d00], ecx
mov eax, dword [ecx + 0x32c]
mov dword [edi + 0x1d48], 0
test eax, eax
je 0x4114e5
mov dword [edi + 0x1d04], eax
mov dword [edi + 0x1d08], 0
mov dword [ecx + 0x32c], eax
movups xmm0, xmmword [ecx + 0x334]
mov eax, dword [edi + 0x1d00]
movups xmmword [eax + 0x334], xmm0
mov word [edi + 0x1d51], dx
mov byte [edi + 0x1d53], dl
jmp 0x41164b
call fcn.00410b50
jmp 0x41164b
mov edi, dword [esi + 0x1d00]
test edi, edi
je 0x4115e0
cmp edi, dword [edi + 0x31c]
je 0x4115e0
test dword [edi + 8], 0x4000000
jne 0x4115e0
mov eax, dword [edi + 0x318]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x4115e0
movss xmm0, dword [edi + 0xc]
mov ecx, eax
movss dword [ebp - 0xc], xmm0
movss xmm0, dword [edi + 0x10]
movss dword [ebp - 0x14], xmm0
movss xmm0, dword [edi + 0x14]
movss dword [ebp - 8], xmm0
movss xmm0, dword [edi + 0x18]
movss dword [ebp - 0x24], xmm0
call fcn.0040e360
movss xmm5, dword [ebp - 0x14]
movss xmm4, dword [ebp - 0xc]
movaps xmm2, xmm5
mov ecx, dword [edi + 0x54]
movaps xmm3, xmm4
mov eax, dword [ebp - 0x10]
mov edi, dword [0x43acf0]
addss xmm2, dword [ebp - 0x24]
addss xmm3, dword [ebp - 8]
subss xmm5, dword [eax + 0x10]
subss xmm4, dword [eax + 0xc]
subss xmm2, dword [eax + 0x10]
subss xmm3, dword [eax + 0xc]
mov eax, dword [edi + 0x1d00]
mov dword [edi + 0x1d04], ecx
mov dword [edi + 0x1d48], 0
mov dword [edi + 0x1d08], 0
mov dword [eax + 0x32c], ecx
mov eax, dword [edi + 0x1d00]
movss dword [ebp - 0x2c], xmm5
xorps xmm5, xmm5
movss dword [ebp - 0x30], xmm4
movss dword [ebp - 0x28], xmm3
movss dword [ebp - 0x24], xmm2
movups xmm0, xmmword [ebp - 0x30]
movups xmmword [eax + 0x334], xmm0
jmp 0x411648
mov edx, dword [esi + 0x1cdc]
test edx, edx
jle 0x41160f
mov eax, dword [esi + 0x1ce4]
lea ecx, [edx + edx*8]
mov eax, dword [eax + ecx*4 - 0x20]
test dword [eax + 8], 0x8000000
jne 0x411642
lea ecx, [edx - 1]
mov dl, 1
call fcn.0040faa0
xorps xmm5, xmm5
jmp 0x411642
test edi, edi
je 0x41162e
mov eax, dword [edi + 8]
test eax, 0x4000000
jne 0x411624
test eax, 0x1000000
jne 0x41162e
mov dword [edi + 0x32c], 0
mov dword [esi + 0x1d08], 0
mov dword [esi + 0x1d04], 0
mov edi, dword [0x43acf0]
mov dword [ebp - 0xc], edi
cmp dword [esi + 0x1d04], 0
mov dword [esi + 0x1d18], 0
mov dword [esi + 0x1d14], 0
mov dword [esi + 0x1d10], 0
mov dword [esi + 0x1d0c], 0
je 0x411741
cmp byte [esi + 0x1d52], 0
jne 0x411741
cmp dword [esi + 0x1e08], 0
jne 0x411741
mov eax, dword [esi + 0x1d00]
test eax, eax
je 0x411741
test dword [eax + 8], 0x40000
jne 0x411741
movss xmm0, dword [edi + 0x300]
comiss xmm0, xmm5
seta al
mov byte [ebp - 1], al
test al, al
je 0x4116db
mov edx, 1
xor ecx, ecx
call fcn.00410dd0
comiss xmm0, xmm5
ja 0x4116dd
xor dl, dl
mov ecx, dword [esi + 0x1bd4]
mov eax, dword [esi + 0x1d04]
test ecx, ecx
jne 0x4116f9
test dl, dl
je 0x4116fd
mov dword [esi + 0x1d0c], eax
jmp 0x4116fd
cmp ecx, eax
jne 0x411741
cmp byte [ebp - 1], 0
je 0x411709
mov dword [esi + 0x1d10], eax
test ecx, ecx
je 0x411711
cmp ecx, eax
jne 0x411741
test dl, dl
je 0x41171b
mov dword [esi + 0x1d14], eax
test ecx, ecx
je 0x411723
cmp ecx, eax
jne 0x411741
mov edx, 1
lea ecx, [edx + 1]
call fcn.00410dd0
comiss xmm0, xmm5
jbe 0x411741
mov eax, dword [esi + 0x1d04]
mov dword [esi + 0x1d18], eax
mov ecx, dword [esi + 0x1d00]
test ecx, ecx
je 0x41175b
test dword [ecx + 8], 0x40000
je 0x41175b
mov byte [esi + 0x1d52], 1
mov eax, dword [esi + 0x1d2c]
mov byte [esi + 0x1d6c], 0
test eax, eax
je 0x411784
mov dword [esi + 0x1d18], eax
mov dword [esi + 0x1d14], eax
mov dword [esi + 0x1d10], eax
mov dword [esi + 0x1d0c], eax
cmp dword [esi + 0x1d74], 0
mov dword [esi + 0x1d2c], 0
jne 0x4118f3
or eax, 0xffffffff
mov dword [esi + 0x1d7c], 0xffffffff
mov dword [esi + 0x1d70], 0
test ecx, ecx
je 0x4118eb
or eax, eax
cmp dword [esi + 0x1e08], 0
jne 0x4118eb
or eax, 0xffffffff
test dword [ecx + 8], 0x40000
jne 0x4118eb
test byte [edi + 0x1be8], 1
mov dword [ebp - 8], eax
jne 0x41181a
lea edx, [eax + 4]
lea ecx, [eax + 5]
call fcn.00410dd0
comiss xmm0, xmm5
ja 0x411809
lea ecx, [edx + 0xe]
mov dword [ebp - 8], 0xffffffff
call fcn.00410dd0
comiss xmm0, xmm5
jbe 0x41181a
mov dword [esi + 0x1d7c], 0
mov dword [ebp - 8], 0
mov eax, dword [edi + 0x1be8]
shr eax, 1
test al, 1
jne 0x41185c
mov edx, 3
lea ecx, [edx + 2]
call fcn.00410dd0
comiss xmm0, xmm5
ja 0x41184b
mov eax, dword [ebp - 8]
lea ecx, [edx + 0xf]
mov dword [ebp - 8], eax
call fcn.00410dd0
comiss xmm0, xmm5
jbe 0x41185c
mov dword [esi + 0x1d7c], 1
mov dword [ebp - 8], 1
mov eax, dword [edi + 0x1be8]
shr eax, 2
test al, 1
jne 0x41189f
mov edx, 3
lea ecx, [edx + 3]
call fcn.00410dd0
comiss xmm0, xmm5
ja 0x41188e
mov eax, dword [ebp - 8]
lea ecx, [edx + 0x10]
mov dword [ebp - 8], eax
call fcn.00410dd0
comiss xmm0, xmm5
jbe 0x41189f
mov dword [esi + 0x1d7c], 2
mov dword [ebp - 8], 2
mov eax, dword [edi + 0x1be8]
shr eax, 3
test al, 1
jne 0x4118e8
mov edx, 3
lea ecx, [edx + 4]
call fcn.00410dd0
comiss xmm0, xmm5
ja 0x4118d1
mov eax, dword [ebp - 8]
lea ecx, [edx + 0x11]
mov dword [ebp - 8], eax
call fcn.00410dd0
comiss xmm0, xmm5
jbe 0x4118e8
mov eax, 3
mov dword [esi + 0x1d7c], 3
mov dword [esi + 0x1d84], eax
jmp 0x4118fd
mov eax, dword [ebp - 8]
mov dword [esi + 0x1d84], eax
jmp 0x4118fd
mov dword [esi + 0x1d74], 2
xor al, al
xorps xmm0, xmm0
movss dword [ebp - 0x10], xmm0
cmp byte [ebp - 2], al
je 0x41191f
call fcn.004121d0
mov al, byte [esi + 0x1d6c]
xorps xmm5, xmm5
movss dword [ebp - 0x10], xmm0
mov ecx, dword [esi + 0x1d7c]
cmp ecx, 0xffffffff
je 0x411945
mov byte [esi + 0x1d6c], 1
mov eax, dword [esi + 0x37c]
mov dword [esi + 0x1d78], eax
mov dword [esi + 0x1d80], ecx
jmp 0x411949
test al, al
je 0x41196c
cmp dword [esi + 0x1d04], 0
jne 0x41196c
mov word [esi + 0x1d55], 0x101
mov dword [esi + 0x1d58], 0
mov byte [esi + 0x1d52], 0
cmp byte [edi + 0x1d6c], 0
jne 0x411982
cmp byte [edi + 0x1d55], 0
jne 0x411982
xor al, al
jmp 0x411984
mov al, 1
movss xmm1, dword [0x4359e4]
mov byte [edi + 0x1d54], al
mov edi, dword [esi + 0x1d00]
test edi, edi
je 0x411b8b
test dword [edi + 8], 0x40000
jne 0x411b8b
cmp dword [esi + 0x1e08], 0
jne 0x411b8b
mov eax, dword [ebp - 0xc]
movss xmm0, dword [eax + 0x1934]
mov eax, dword [edi + 0x318]
mulss xmm0, dword [edi + 0x27c]
test eax, eax
je 0x4119df
mulss xmm0, dword [eax + 0x27c]
cmp word [edi + 0x148], 0
mulss xmm0, dword [0x435a8c]
mulss xmm0, dword [esi + 0x18]
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [ebp - 8], xmm1
jne 0x411ab7
cmp byte [edi + 0x151], 0
je 0x411ab7
cmp byte [esi + 0x1d6c], 0
je 0x411ab7
mov eax, dword [esi + 0x1d7c]
movss xmm2, dword [0x435a1c]
test eax, eax
je 0x411a44
cmp eax, 1
jne 0x411a73
movaps xmm0, xmm2
jmp 0x411a4c
movss xmm0, dword [0x435ac8]
mulss xmm0, xmm1
mov dword [edi + 0x70], 0
mov dword [edi + 0x78], 0
addss xmm0, dword [edi + 0x58]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x68], xmm0
mov eax, dword [esi + 0x1d7c]
cmp eax, 2
je 0x411a88
cmp eax, 3
jne 0x411ab7
movaps xmm0, xmm2
jmp 0x411a90
movss xmm0, dword [0x435ac8]
mulss xmm0, xmm1
mov dword [edi + 0x74], 0
mov dword [edi + 0x7c], 0
addss xmm0, dword [edi + 0x5c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x6c], xmm0
xor edx, edx
lea ecx, [edx + 9]
call fcn.00410dd0
lea ecx, [edx + 8]
movaps xmm7, xmm0
call fcn.00410dd0
subss xmm7, xmm0
lea ecx, [edx + 0xb]
addss xmm7, xmm5
call fcn.00410dd0
lea ecx, [edx + 0xa]
movaps xmm6, xmm0
call fcn.00410dd0
mov ecx, dword [ebp - 0xc]
subss xmm6, xmm0
movss xmm1, dword [ecx + 0x338]
comiss xmm1, xmm5
addss xmm6, xmm5
jbe 0x411b0f
mulss xmm7, dword [0x4359c0]
mulss xmm6, dword [0x4359c0]
movss xmm0, dword [ecx + 0x33c]
comiss xmm0, xmm5
jbe 0x411b2c
mulss xmm7, dword [0x435a70]
mulss xmm6, dword [0x435a70]
movss xmm1, dword [ebp - 8]
ucomiss xmm7, xmm5
lahf
test ah, 0x44
jnp 0x411b61
cmp byte [edi + 0x88], dl
je 0x411b61
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
ucomiss xmm6, xmm5
lahf
test ah, 0x44
jnp 0x411b8e
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
jmp 0x411b8e
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x1d88], 0
mov dword [esi + 0x1d90], 0
mov dword [esi + 0x1d8c], 0
mov dword [esi + 0x1d94], 0
mov dword [esi + 0x1d98], 0
mov dword [esi + 0x1d9c], 0
mov dword [esi + 0x1da0], 0
mov dword [esi + 0x1dac], 0x7f7fffff
mov dword [esi + 0x1da8], 0x7f7fffff
mov dword [esi + 0x1da4], 0x7f7fffff
mov dword [esi + 0x1db0], 0
mov dword [esi + 0x1db8], 0
mov dword [esi + 0x1db4], 0
mov dword [esi + 0x1dbc], 0
mov dword [esi + 0x1dc0], 0
mov dword [esi + 0x1dc4], 0
mov dword [esi + 0x1dc8], 0
mov dword [esi + 0x1dd4], 0x7f7fffff
mov dword [esi + 0x1dd0], 0x7f7fffff
mov dword [esi + 0x1dcc], 0x7f7fffff
mov dword [esi + 0x1dd8], 0
mov dword [esi + 0x1de0], 0
mov dword [esi + 0x1ddc], 0
mov dword [esi + 0x1de4], 0
mov dword [esi + 0x1de8], 0
mov dword [esi + 0x1dec], 0
mov dword [esi + 0x1df0], 0
mov dword [esi + 0x1dfc], 0x7f7fffff
mov dword [esi + 0x1df8], 0x7f7fffff
mov dword [esi + 0x1df4], 0x7f7fffff
cmp byte [esi + 0x1d6c], 0
je 0x411e5c
cmp dword [esi + 0x1d30], 3
jne 0x411e5c
mov edx, dword [esi + 0x1d48]
movss xmm5, dword [0x435a1c]
test edx, edx
jne 0x411e64
mov eax, dword [esi + 0x1d00]
movss xmm2, dword [eax + 0x1f0]
subss xmm2, dword [eax + 0xc]
movss xmm3, dword [eax + 0x1f4]
movss xmm6, dword [eax + 0x1f8]
movss xmm7, dword [eax + 0x1fc]
subss xmm3, dword [eax + 0x10]
subss xmm6, dword [eax + 0xc]
subss xmm7, dword [eax + 0x10]
movss xmm0, dword [eax + 0x334]
subss xmm2, xmm5
subss xmm3, xmm5
addss xmm6, xmm5
addss xmm7, xmm5
comiss xmm0, xmm2
jb 0x411d64
movss xmm0, dword [eax + 0x338]
comiss xmm0, xmm3
jb 0x411d64
comiss xmm6, dword [eax + 0x33c]
jb 0x411d64
comiss xmm7, dword [eax + 0x340]
jae 0x411e64
movss xmm4, dword [ecx + 0x1934]
mov ecx, dword [eax + 0x318]
mulss xmm4, dword [eax + 0x27c]
test ecx, ecx
je 0x411d86
mulss xmm4, dword [ecx + 0x27c]
mulss xmm4, dword [0x4359e4]
movaps xmm1, xmm7
add edx, edx
subss xmm1, xmm3
movaps xmm5, xmm6
subss xmm5, xmm2
movss xmm0, dword [eax + edx*8 + 0x338]
minss xmm1, xmm4
minss xmm5, xmm4
xorps xmm1, xmmword [0x435b80]
xorps xmm5, xmmword [0x435b80]
subss xmm3, xmm1
movaps xmm4, xmm1
subss xmm2, xmm5
addss xmm5, xmm6
addss xmm4, xmm7
comiss xmm3, xmm0
jbe 0x411dda
movaps xmm1, xmm3
jmp 0x411de1
movaps xmm1, xmm4
minss xmm1, xmm0
movss xmm6, dword [eax + 0x334]
comiss xmm2, xmm6
jbe 0x411df3
movaps xmm0, xmm2
jmp 0x411dfa
movaps xmm0, xmm5
minss xmm0, xmm6
movss dword [eax + edx*8 + 0x334], xmm0
movss dword [eax + edx*8 + 0x338], xmm1
movss xmm0, dword [eax + edx*8 + 0x340]
comiss xmm3, xmm0
ja 0x411e21
movaps xmm3, xmm4
minss xmm3, xmm0
movss xmm0, dword [eax + edx*8 + 0x33c]
comiss xmm2, xmm0
ja 0x411e36
movaps xmm2, xmm5
minss xmm2, xmm0
movss dword [eax + edx*8 + 0x33c], xmm2
movss dword [eax + edx*8 + 0x340], xmm3
mov dword [esi + 0x1d08], 0
mov dword [esi + 0x1d04], 0
movss xmm5, dword [0x435a1c]
mov eax, dword [esi + 0x1d00]
test eax, eax
je 0x411eb4
mov ecx, dword [esi + 0x1d48]
add ecx, ecx
movss xmm0, dword [eax + ecx*8 + 0x334]
comiss xmm0, dword [eax + ecx*8 + 0x33c]
ja 0x411eb4
movss xmm0, dword [eax + ecx*8 + 0x338]
comiss xmm0, dword [eax + ecx*8 + 0x340]
ja 0x411eb4
movups xmm0, xmmword [eax + ecx*8 + 0x334]
lea ecx, [ebp - 0x30]
movups xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x30], xmm0
jmp 0x411ec9
lea ecx, [ebp - 0x30]
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x30], xmm0
test eax, eax
je 0x411f07
movss xmm4, dword [ebp - 0x28]
movss xmm3, dword [ebp - 0x24]
movss xmm1, dword [ebp - 0x30]
movss xmm0, dword [ebp - 0x2c]
addss xmm4, dword [eax + 0xc]
addss xmm3, dword [eax + 0x10]
addss xmm1, dword [eax + 0xc]
addss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x28], xmm4
movss dword [ebp - 0x24], xmm3
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
jmp 0x411f0e
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
movss xmm1, dword [ebp - 0x10]
lea eax, [ebp - 0x30]
movups xmm0, xmmword [eax]
pop edi
movups xmmword [esi + 0x1d34], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esi + 0x1d38]
addss xmm1, dword [esi + 0x1d40]
movss dword [esi + 0x1d38], xmm0
movss dword [esi + 0x1d40], xmm1
movss xmm0, dword [esi + 0x1d34]
addss xmm0, xmm5
mov dword [esi + 0x1d44], 0
minss xmm0, dword [esi + 0x1d3c]
movss dword [esi + 0x1d34], xmm0
movss dword [esi + 0x1d3c], xmm0
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret