008c2d00 c1f30f sal ebx, 0xf
008c2d03 59 pop ecx
008c2d04 05a8c9f200 add eax, 0xf2c9a8
008c2d09 f30f58c5 addss xmm0, xmm5
008c2d0d 0f2fc3 comiss xmm0, xmm3
008c2d10 760c jbe 0x8c2d1e
008c2d12 0f2fe0 comiss xmm4, xmm0
008c2d15 7207 jb 0x8c2d1e
008c2d17 ba01000000 mov edx, 1
008c2d1c eb02 jmp 0x8c2d20
008c2d1e 33d2 xor edx, edx
008c2d20 0f2fdd comiss xmm3, xmm5
008c2d23 760c jbe 0x8c2d31
008c2d25 0f2fec comiss xmm5, xmm4
008c2d28 7207 jb 0x8c2d31
008c2d2a b901000000 mov ecx, 1
008c2d2f eb02 jmp 0x8c2d33
008c2d31 33c9 xor ecx, ecx
008c2d33 f30f1005e884f300 movss xmm0, dword ptr [0xf384e8]
008c2d3b 0f54d6 andps xmm2, xmm6
008c2d3e 0f29542440 movaps xmmword ptr [esp + 0x40], xmm2
008c2d43 0f2f442440 comiss xmm0, dword ptr [esp + 0x40]
008c2d48 7604 jbe 0x8c2d4e
008c2d4a b001 mov al, 1
008c2d4c eb02 jmp 0x8c2d50
008c2d4e 32c0 xor al, al
008c2d50 85d2 test edx, edx
008c2d52 7509 jne 0x8c2d5d
008c2d54 85c9 test ecx, ecx
008c2d56 0f95c2 setne dl
008c2d59 84d0 test al, dl
008c2d5b 7430 je 0x8c2d8d
008c2d5d 837c241400 cmp dword ptr [esp + 0x14], 0
008c2d62 741f je 0x8c2d83
008c2d64 f30f2cc7 cvttss2si eax, xmm7
008c2d68 50 push eax
008c2d69 ba01000000 mov edx, 1
008c2d6e 8bce mov ecx, esi
008c2d70 e86b2beeff call 0x7a58e0
008c2d75 f30f100d88e4de01 movss xmm1, dword ptr [0x1dee488]
008c2d7d f30f107c2418 movss xmm7, dword ptr [esp + 0x18]
008c2d83 818e8401000000000100 or dword ptr [esi + 0x184], 0x10000
008c2d8d f30f590da8c9f200 mulss xmm1, dword ptr [0xf2c9a8]
008c2d95 f30f1005f0d7f200 movss xmm0, dword ptr [0xf2d7f0]
008c2d9d f30f109388000000 movss xmm2, dword ptr [ebx + 0x88]
008c2da5 f30f5cc1 subss xmm0, xmm1
008c2da9 0f2fd0 comiss xmm2, xmm0
008c2dac 7711 ja 0x8c2dbf
008c2dae f30f109788000000 movss xmm2, dword ptr [edi + 0x88]
008c2db6 0f2fd0 comiss xmm2, xmm0
008c2db9 0f86b4010000 jbe 0x8c2f73
008c2dbf f30f108380000000 movss xmm0, dword ptr [ebx + 0x80]
008c2dc7 660f6f15b078f300 movdqa xmm2, xmmword ptr [0xf378b0]
008c2dcf f30f580df4d7f200 addss xmm1, dword ptr [0xf2d7f4]
008c2dd7 0fc6c000 shufps xmm0, xmm0, 0
008c2ddb 0f54c2 andps xmm0, xmm2
008c2dde 0f29442440 movaps xmmword ptr [esp + 0x40], xmm0
008c2de3 0f2f4c2440 comiss xmm1, dword ptr [esp + 0x40]
008c2de8 771f ja 0x8c2e09
008c2dea f30f108780000000 movss xmm0, dword ptr [edi + 0x80]
008c2df2 0fc6c000 shufps xmm0, xmm0, 0
008c2df6 0f54c2 andps xmm0, xmm2
008c2df9 0f29442440 movaps xmmword ptr [esp + 0x40], xmm0
008c2dfe 0f2f4c2440 comiss xmm1, dword ptr [esp + 0x40]
008c2e03 0f866a010000 jbe 0x8c2f73
008c2e09 837c242800 cmp dword ptr [esp + 0x28], 0
008c2e0e 740d je 0x8c2e1d
008c2e10 c744241c00000000 mov dword ptr [esp + 0x1c], 0
008c2e18 e956010000 jmp 0x8c2f73
008c2e1d 51 push ecx
008c2e1e 8b4d08 mov ecx, dword ptr [ebp + 8]
008c2e21 f30f113c24 movss dword ptr [esp], xmm7
008c2e26 53 push ebx
008c2e27 8bd7 mov edx, edi
008c2e29 e822a3feff call 0x8ad150
008c2e2e 8944241c mov dword ptr [esp + 0x1c], eax
008c2e32 85c0 test eax, eax
008c2e34 0f8418010000 je 0x8c2f52
008c2e3a 8bc8 mov ecx, eax
008c2e3c 80e134 and cl, 0x34
008c2e3f 0fb6d1 movzx edx, cl
008c2e42 f7da neg edx
008c2e44 1bd2 sbb edx, edx
008c2e46 81e200001000 and edx, 0x100000
008c2e4c 83ca20 or edx, 0x20
008c2e4f 099684010000 or dword ptr [esi + 0x184], edx
008c2e55 837c241400 cmp dword ptr [esp + 0x14], 0
008c2e5a c744242001000000 mov dword ptr [esp + 0x20], 1
008c2e62 7455 je 0x8c2eb9
008c2e64 0f288390000000 movaps xmm0, xmmword ptr [ebx + 0x90]
008c2e6b 0f59c0 mulps xmm0, xmm0
008c2e6e 0f28c8 movaps xmm1, xmm0
008c2e71 0f12c1 movhlps xmm0, xmm1
008c2e74 0f58c1 addps xmm0, xmm1
008c2e77 0f28c8 movaps xmm1, xmm0
008c2e7a 0fc6c801 shufps xmm1, xmm0, 1
008c2e7e 0f58c8 addps xmm1, xmm0
008c2e81 0f294c2440 movaps xmmword ptr [esp + 0x40], xmm1
008c2e86 f30f104c2440 movss xmm1, dword ptr [esp + 0x40]
008c2e8c 0f57c0 xorps xmm0, xmm0
008c2e8f f30f10c1 movss xmm0, xmm1
008c2e93 f30f51c0 sqrtss xmm0, xmm0
008c2e97 0f29442440 movaps xmmword ptr [esp + 0x40], xmm0
008c2e9c f30f10442440 movss xmm0, dword ptr [esp + 0x40]
008c2ea2 51 push ecx
008c2ea3 8d9380000000 lea edx, [ebx + 0x80]
008c2ea9 8bce mov ecx, esi
008c2eab f30f110424 movss dword ptr [esp], xmm0
008c2eb0 e8bb3de0ff call 0x6c6c70
008c2eb5 8b44241c mov eax, dword ptr [esp + 0x1c]
008c2eb9 f30f108798000000 movss xmm0, dword ptr [edi + 0x98]
008c2ec1 f30f598788000000 mulss xmm0, dword ptr [edi + 0x88]
008c2ec9 0f2f0508fcf000 comiss xmm0, dword ptr [0xf0fc08]
008c2ed0 762c jbe 0x8c2efe
008c2ed2 a840 test al, 0x40
008c2ed4 7428 je 0x8c2efe
008c2ed6 837c241400 cmp dword ptr [esp + 0x14], 0
008c2edb 7417 je 0x8c2ef4
008c2edd f30f2c442418 cvttss2si eax, dword ptr [esp + 0x18]
008c2ee3 50 push eax
008c2ee4 ba01000000 mov edx, 1
008c2ee9 8bce mov ecx, esi
008c2eeb e8f029eeff call 0x7a58e0
008c2ef0 8b44241c mov eax, dword ptr [esp + 0x1c]
008c2ef4 818e8401000000000100 or dword ptr [esi + 0x184], 0x10000
008c2efe a804 test al, 4
008c2f00 7428 je 0x8c2f2a
008c2f02 83bebc01000003 cmp dword ptr [esi + 0x1bc], 3
008c2f09 751f jne 0x8c2f2a
008c2f0b 837c241400 cmp dword ptr [esp + 0x14], 0
008c2f10 740e je 0x8c2f20
008c2f12 ba04000000 mov edx, 4
008c2f17 8bce mov ecx, esi
008c2f19 e822f3edff call 0x7a2240
008c2f1e eb0a jmp 0x8c2f2a
008c2f20 c786bc01000004000000 mov dword ptr [esi + 0x1bc], 4
008c2f2a 83bebc01000005 cmp dword ptr [esi + 0x1bc], 5
008c2f31 751f jne 0x8c2f52
008c2f33 837c241400 cmp dword ptr [esp + 0x14], 0
008c2f38 740e je 0x8c2f48
008c2f3a ba07000000 mov edx, 7
008c2f3f 8bce mov ecx, esi
008c2f41 e8faf2edff call 0x7a2240
008c2f46 eb0a jmp 0x8c2f52
008c2f48 c786bc01000007000000 mov dword ptr [esi + 0x1bc], 7
008c2f52 f30f10442418 movss xmm0, dword ptr [esp + 0x18]
008c2f58 51 push ecx
008c2f59 8b4d08 mov ecx, dword ptr [ebp + 8]
008c2f5c f30f110424 movss dword ptr [esp], xmm0
008c2f61 53 push ebx
008c2f62 8bd7 mov edx, edi
008c2f64 e8c7a2feff call 0x8ad230
008c2f69 f30f107c2418 movss xmm7, dword ptr [esp + 0x18]
008c2f6f 89442424 mov dword ptr [esp + 0x24], eax
008c2f73 f644242402 test byte ptr [esp + 0x24], 2
008c2f78 f30f106348 movss xmm4, dword ptr [ebx + 0x48]
008c2f7d f30f104b40 movss xmm1, dword ptr [ebx + 0x40]
008c2f82 f30f105b44 movss xmm3, dword ptr [ebx + 0x44]
008c2f87 0f57d2 xorps xmm2, xmm2
008c2f8a 0f2805707bf300 movaps xmm0, xmmword ptr [0xf37b70]
008c2f91 0f28ea movaps xmm5, xmm2
008c2f94 0f14cc unpcklps xmm1, xmm4
008c2f97 0f14dd unpcklps xmm3, xmm5
008c2f9a 0f14cb unpcklps xmm1, xmm3
008c2f9d 0f59c8 mulps xmm1, xmm0
008c2fa0 0f298b80000000 movaps xmmword ptr [ebx + 0x80], xmm1
008c2fa7 0f285b50 movaps xmm3, xmmword ptr [ebx + 0x50]
008c2fab f30f100d146eec00 movss xmm1, dword ptr [0xec6e14]
008c2fb3 f30f118b8c000000 movss dword ptr [ebx + 0x8c], xmm1
008c2fbb 0f59d8 mulps xmm3, xmm0
008c2fbe 0f299b90000000 movaps xmmword ptr [ebx + 0x90], xmm3
008c2fc5 f30f105f40 movss xmm3, dword ptr [edi + 0x40]
008c2fca f30f106744 movss xmm4, dword ptr [edi + 0x44]
008c2fcf f30f106f48 movss xmm5, dword ptr [edi + 0x48]
008c2fd4 0f14e2 unpcklps xmm4, xmm2
008c2fd7 0f14dd unpcklps xmm3, xmm5
008c2fda 0f14dc unpcklps xmm3, xmm4
008c2fdd 0f59d8 mulps xmm3, xmm0
008c2fe0 0f299f80000000 movaps xmmword ptr [edi + 0x80], xmm3
008c2fe7 f30f118f8c000000 movss dword ptr [edi + 0x8c], xmm1
008c2fef 0f284f50 movaps xmm1, xmmword ptr [edi + 0x50]
008c2ff3 0f59c1 mulps xmm0, xmm1
008c2ff6 0f298790000000 movaps xmmword ptr [edi + 0x90], xmm0
008c2ffd 0f84ba000000 je 0x8c30bd
008c3003 8b8e84010000 mov ecx, dword ptr [esi + 0x184]
008c3009 83e1f7 and ecx, 0xfffffff7
008c300c 83c942 or ecx, 0x42
008c300f 837c241400 cmp dword ptr [esp + 0x14], 0
008c3014 c744242001000000 mov dword ptr [esp + 0x20], 1
008c301c 898e84010000 mov dword ptr [esi + 0x184], ecx
008c3022 746b je 0x8c308f
008c3024 8d8790000000 lea eax, [edi + 0x90]
008c302a 50 push eax
008c302b 6a00 push 0
008c302d 33c9 xor ecx, ecx
008c302f f30f2cd7 cvttss2si edx, xmm7
008c3033 e8784f1000 call 0x9c7fb0
008c3038 0f288390000000 movaps xmm0, xmmword ptr [ebx + 0x90]
008c303f 0f59c0 mulps xmm0, xmm0
008c3042 0f28c8 movaps xmm1, xmm0
008c3045 0f12c1 movhlps xmm0, xmm1
008c3048 0f58c1 addps xmm0, xmm1
008c304b 0f28c8 movaps xmm1, xmm0
008c304e 0fc6c801 shufps xmm1, xmm0, 1
008c3052 0f58c8 addps xmm1, xmm0
008c3055 0f294c2440 movaps xmmword ptr [esp + 0x40], xmm1
008c305a f30f104c2440 movss xmm1, dword ptr [esp + 0x40]
008c3060 0f57c0 xorps xmm0, xmm0
008c3063 f30f10c1 movss xmm0, xmm1
008c3067 f30f51c0 sqrtss xmm0, xmm0
008c306b 0f29442440 movaps xmmword ptr [esp + 0x40], xmm0
008c3070 f30f10442440 movss xmm0, dword ptr [esp + 0x40]
008c3076 51 push ecx
008c3077 8d9380000000 lea edx, [ebx + 0x80]
008c307d 8bce mov ecx, esi
008c307f f30f110424 movss dword ptr [esp], xmm0
008c3084 e8073de0ff call 0x6c6d90
008c3089 f30f107c2418 movss xmm7, dword ptr [esp + 0x18]
008c308f 83bebc01000005 cmp dword ptr [esi + 0x1bc], 5
008c3096 7525 jne 0x8c30bd
008c3098 837c241400 cmp dword ptr [esp + 0x14], 0
008c309d 7414 je 0x8c30b3
008c309f ba04000000 mov edx, 4
008c30a4 8bce mov ecx, esi
008c30a6 e895f1edff call 0x7a2240
008c30ab f30f107c2418 movss xmm7, dword ptr [esp + 0x18]
008c30b1 eb0a jmp 0x8c30bd
008c30b3 c786bc01000004000000 mov dword ptr [esi + 0x1bc], 4
008c30bd f644242404 test byte ptr [esp + 0x24], 4
008c30c2 741a je 0x8c30de
008c30c4 837c241400 cmp dword ptr [esp + 0x14], 0
008c30c9 7413 je 0x8c30de
008c30cb 8b8e20010000 mov ecx, dword ptr [esi + 0x120]
008c30d1 8bd6 mov edx, esi
008c30d3 e89850e7ff call 0x738170
008c30d8 f30f107c2418 movss xmm7, dword ptr [esp + 0x18]
