private static bool smethod_6(Class448 A_0, Class887 A_1, bool A_2, int A_3)
 {
     if (A_0.method_17(A_2 ? A_1.method_4() : A_1.method_2()))
     {
         (A_2 ? A_1.method_0().method_20(A_3) : A_1.method_1().method_20(A_3)).method_1(VertexType.Intersection);
         smethod_8(A_2 ? A_1.method_18(A_3) : A_1.method_19(A_3), A_2 ? A_1.method_20(A_3) : A_1.method_21(A_3), A_2 ? A_1.method_2() : A_1.method_4(), A_2 ? A_1.method_4() : A_1.method_2());
         A_1.method_9(true);
         return(true);
     }
     return(false);
 }
    private static void smethod_4(Class887 A_0, Class448 A_1, int A_2, int A_3)
    {
        PointF[] tfArray = new PointF[1];
        A_0.method_5(A_0.method_1().method_20(A_3).method_2());
        Class448 class2 = smethod_7(A_0.method_1(), A_3, A_0.method_4());

        if (!smethod_5(A_1, class2, A_0, A_2, A_3))
        {
            bool flag = Class448.smethod_5(A_1, class2, tfArray, true);
            A_0.method_7(tfArray[0]);
            if ((flag && !A_0.method_6().Equals(class2.method_16())) && !A_0.method_6().Equals(A_1.method_16()))
            {
                smethod_8(A_0.method_18(A_2), A_0.method_20(A_2), A_0.method_2(), tfArray[0]);
                smethod_8(A_0.method_19(A_3), A_0.method_21(A_3), A_0.method_4(), tfArray[0]);
                A_0.method_9(true);
            }
        }
    }
    private static void smethod_5(Class887 A_0, Class448 A_1)
    {
        A_0.method_5(A_0.method_1().method_20(A_0.method_14()).method_2());
        A_0.method_17(A_0.method_1().method_10(A_0.method_14() + 1));
        Class448 class2 = smethod_10(A_0.method_1(), A_0.method_14());

        if (!smethod_6(A_1, class2, A_0))
        {
            PointF[] tfArray = new PointF[1];
            bool     flag    = Class448.smethod_5(A_1, class2, tfArray, true);
            A_0.method_7(tfArray[0]);
            if ((flag && !spr⃸.ᜀ(A_0.method_6(), class2.method_16())) && !spr⃸.ᜀ(A_0.method_6(), A_1.method_16()))
            {
                smethod_11(A_0.method_18(A_0.method_10()), A_0.method_20(A_0.method_10()), A_0.method_2(), tfArray[0]);
                smethod_11(A_0.method_19(A_0.method_14()), A_0.method_21(A_0.method_14()), A_0.method_4(), tfArray[0]);
                A_0.method_9(true);
            }
        }
    }
    private static void smethod_8(Class448 A_0, Class887 A_1, bool A_2)
    {
        A_1.method_9(true);
        Class886 class2 = A_2 ? A_1.method_1().method_20(A_1.method_14()) : A_1.method_0().method_20(A_1.method_10());

        class2.method_1(VertexType.Intersection);
        if (!smethod_9(A_0, A_1, A_2, true, class2) && !smethod_9(A_0, A_1, A_2, false, class2))
        {
            smethod_11(A_2 ? A_1.method_18(A_1.method_10()) : A_1.method_19(A_1.method_14()), A_2 ? A_1.method_20(A_1.method_10()) : A_1.method_21(A_1.method_14()), A_2 ? A_1.method_2() : A_1.method_4(), A_2 ? A_1.method_4() : A_1.method_2());
        }
    }