
void ConvertRGBToHCLp(double red,double green,double blue,double *hue,double *chroma,double *luma)

{
  undefined1 *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  double *pdVar5;
  int iVar6;
  uint uVar7;
  undefined *puVar8;
  double *unaff_s0;
  double *unaff_s1;
  double *unaff_s2;
  int iVar9;
  undefined *puVar10;
  code *pcVar11;
  code *pcVar12;
  code *pcVar13;
  code *pcVar14;
  code *pcVar15;
  double dVar16;
  double dVar17;
  double dVar18;
  double dVar19;
  double dVar20;
  double dVar21;
  double dVar22;
  double dVar23;
  double dVar24;
  double dVar25;
  double dVar26;
  double dVar27;
  double dVar28;
  double *in_stack_00000018;
  double *in_stack_0000001c;
  double *in_stack_00000020;
  double dStack_208;
  undefined4 uStack_1b4;
  double *pdStack_1b0;
  double *pdStack_1ac;
  double *pdStack_1a8;
  undefined4 uStack_144;
  double *pdStack_140;
  double *pdStack_13c;
  double *pdStack_138;
  undefined4 uStack_e4;
  double *pdStack_e0;
  double *pdStack_d8;
  undefined4 uStack_c4;
  double *pdStack_c0;
  double *pdStack_b8;
  undefined4 uStack_a4;
  double *pdStack_a0;
  double *pdStack_98;
  undefined4 uStack_84;
  undefined4 uStack_5c;
  double *pdStack_58;
  double *pdStack_50;
  undefined4 uStack_3c;
  
  if (in_stack_00000018 == (double *)0x0) {
    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,
               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);
LAB_000e6d3c:
    puVar8 = puVar8 + 0x7ab8;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,
               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);
  }
  else {
    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
    if (in_stack_0000001c != (double *)0x0) {
      if (in_stack_00000020 != (double *)0x0) {
        dVar17 = blue;
        if (blue < green) {
          dVar17 = green;
        }
        dVar18 = red;
        if (red <= dVar17) {
          dVar18 = dVar17;
        }
        dVar17 = green;
        if (blue <= green) {
          dVar17 = blue;
        }
        dVar16 = red;
        if (dVar17 <= red) {
          dVar16 = dVar17;
        }
        dVar16 = dVar18 - dVar16;
        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);
        if (dVar17 <= ABS(dVar16)) {
          if (ABS(red - dVar18) < dVar17) {
            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);
            dVar17 = dVar17 / dVar18;
            goto LAB_000e6c48;
          }
          if (ABS(green - dVar18) < dVar17) {
            dVar17 = ((blue - red) / dVar16 +
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            goto LAB_000e6c48;
          }
          if (ABS(blue - dVar18) < dVar17) {
            dVar17 = ((red - green) / dVar16 +
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            goto LAB_000e6c48;
          }
        }
        dVar17 = 0.0;
LAB_000e6c48:
        *in_stack_00000018 = dVar17;
        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);
        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);
        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);
        *in_stack_0000001c = dVar16 * dVar17;
        *in_stack_00000020 =
             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;
        return;
      }
      goto LAB_000e6d3c;
    }
  }
  pdVar5 = (double *)((ulonglong)blue >> 0x20);
  pcVar13 = ConvertRGBToHSB;
  puVar10 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)
            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,
             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8);
  dVar17 = (double)CONCAT44(&_gp,uStack_3c);
  iVar6 = *(int *)(puVar10 + 0x2c1b6c);
  if (unaff_s0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7790;
    iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;
    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);
LAB_000e6fbc:
    iVar6 = iVar6 + 0x7790;
    iVar4 = iVar4 + 0x7844;
    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);
  }
  else {
    iVar4 = *(int *)(puVar10 + 0x2c1b6c);
    if (unaff_s1 != (double *)0x0) {
      iVar4 = *(int *)(puVar10 + 0x2c1b6c);
      if (unaff_s2 != (double *)0x0) {
        *(undefined4 *)((int)unaff_s0 + 4) = 0;
        *(undefined4 *)unaff_s0 = 0;
        *(undefined4 *)((int)unaff_s1 + 4) = 0;
        *(undefined4 *)unaff_s1 = 0;
        *(undefined4 *)((int)unaff_s2 + 4) = 0;
        *(undefined4 *)unaff_s2 = 0;
        dVar18 = green;
        if (red < green) {
          dVar18 = red;
        }
        dVar16 = dVar17;
        if (dVar18 <= dVar17) {
          dVar16 = dVar18;
        }
        uVar3 = SUB84(green,0);
        if (green < red) {
          uVar3 = SUB84(red,0);
          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);
        }
        else {
          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);
        }
        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {
          puVar1 = &_gp;
          uVar3 = uStack_3c;
        }
        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);
        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {
          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;
          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);
          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);
          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;
          if (dVar18 <= ABS(dVar16)) {
            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {
              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {
                dVar16 = (dVar17 - red) / dVar16 +
                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);
                *unaff_s0 = dVar16;
              }
              else {
                dVar16 = (red - green) / dVar16 +
                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);
                *unaff_s0 = dVar16;
              }
              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);
              iVar6 = *(int *)(puVar10 + 0x2c1b64);
            }
            else {
              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);
              dVar16 = (green - dVar17) / dVar16;
              *unaff_s0 = dVar16;
              dVar16 = dVar16 / dVar18;
              iVar6 = *(int *)(puVar10 + 0x2c1b64);
            }
            if (dVar16 < 0.0) {
              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);
            }
            else {
              *unaff_s0 = dVar16;
            }
          }
        }
        return;
      }
      goto LAB_000e6fbc;
    }
  }
  pcVar11 = *(code **)(puVar10 + 0x2c288c);
  pcVar14 = ConvertRGBToHSI;
  (*pcVar11)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);
  iVar6 = *(int *)(pcVar11 + 0x2c18f4);
  if (pdStack_58 != (double *)0x0) {
    if ((double *)pcVar13 != (double *)0x0) {
      if (pdStack_50 != (double *)0x0) {
        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);
        dVar16 = red * dVar17;
        dVar21 = green * dVar17;
        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;
        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);
        *pdStack_50 = dVar18;
        if (dVar18 <= 0.0) {
          *pdStack_58 = 0.0;
          *(double *)pcVar13 = 0.0;
          return;
        }
        dVar19 = dVar17;
        if (dVar21 < dVar17) {
          dVar19 = dVar21;
        }
        if (dVar16 < dVar19) {
          dVar19 = dVar16;
        }
        pcVar14 = *(code **)(pcVar11 + 0x2c2014);
        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);
        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);
        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);
        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;
        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,
                                    ((red * dVar16 - dVar21) - dVar17) *
                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));
        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /
                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);
        if (dVar17 < 0.0) {
          dVar17 = dVar17 + dVar25;
        }
        *pdStack_58 = dVar17;
        return;
      }
      iVar6 = iVar6 + 0x7a98;
      (**(code **)(pcVar11 + 0x2c2614))
                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,
                 iVar6);
    }
    iVar6 = iVar6 + 0x7a98;
    (**(code **)(pcVar11 + 0x2c2614))
              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);
  }
  pcVar13 = *(code **)(pcVar11 + 0x2c2614);
  pcVar15 = ConvertRGBToHSL;
  (*pcVar13)(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,
             iVar6 + 0x7a98);
  iVar6 = *(int *)(pcVar13 + 0x2c1748);
  if (unaff_s0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7a88;
    (**(code **)(pcVar13 + 0x2c2468))
              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,
               iVar6);
LAB_000e736c:
    pcVar12 = *(code **)(pcVar13 + 0x2c2468);
    iVar6 = iVar6 + 0x7a88;
    (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,
               iVar6);
  }
  else {
    pcVar12 = *(code **)(pcVar13 + 0x2c2468);
    if ((double *)pcVar14 != (double *)0x0) {
      if (pdVar5 != (double *)0x0) {
        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);
        dVar21 = green * dVar18;
        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;
        dVar18 = red * dVar18;
        dVar17 = dVar16;
        if (dVar16 < dVar21) {
          dVar17 = dVar21;
        }
        dVar19 = dVar18;
        if (dVar18 <= dVar17) {
          dVar19 = dVar17;
        }
        dVar17 = dVar21;
        if (dVar16 <= dVar21) {
          dVar17 = dVar16;
        }
        iVar6 = *(int *)(pcVar13 + 0x2c1740);
        dVar22 = dVar18;
        if (dVar17 <= dVar18) {
          dVar22 = dVar17;
        }
        dVar17 = dVar19 - dVar22;
        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);
        if (dVar17 <= 0.0) {
          *unaff_s0 = 0.0;
          *(double *)pcVar14 = 0.0;
          return;
        }
        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {
          dVar18 = (dVar21 - dVar16) / dVar17;
          if (dVar21 < dVar16) {
            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);
          }
        }
        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {
          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);
        }
        else {
          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);
        }
        dVar21 = *(double *)(iVar6 + 0x1400);
        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);
        dVar18 = *pdVar5;
        dVar16 = dVar18 + dVar18;
        if (dVar21 < dVar18) {
          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;
        }
        *(double *)pcVar14 = dVar17 / dVar16;
        return;
      }
      goto LAB_000e736c;
    }
  }
  pcVar11 = ConvertRGBToHSV;
  (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,
             iVar6 + 0x7a88);
  iVar6 = *(int *)(pcVar12 + 0x2c1540);
  if (pdStack_a0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7a78;
    (**(code **)(pcVar12 + 0x2c2260))
              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,
               iVar6);
LAB_000e7548:
    (**(code **)(pcVar12 + 0x2c2260))
              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,
               iVar6 + 0x7a78);
  }
  else if ((double *)pcVar15 != (double *)0x0) {
    if (pdStack_98 != (double *)0x0) {
      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);
      dVar21 = green * dVar16;
      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;
      dVar16 = red * dVar16;
      dVar17 = dVar18;
      if (dVar18 < dVar21) {
        dVar17 = dVar21;
      }
      dVar19 = dVar16;
      if (dVar16 <= dVar17) {
        dVar19 = dVar17;
      }
      dVar17 = dVar21;
      if (dVar18 <= dVar21) {
        dVar17 = dVar18;
      }
      dVar22 = dVar16;
      if (dVar17 <= dVar16) {
        dVar22 = dVar17;
      }
      dVar22 = dVar19 - dVar22;
      *pdStack_98 = dVar19;
      if (dVar22 <= 0.0) {
        *pdStack_a0 = 0.0;
        *(double *)pcVar15 = 0.0;
        return;
      }
      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {
        dVar17 = (dVar21 - dVar18) / dVar22;
        if (dVar21 < dVar18) {
          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);
        }
      }
      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {
        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);
      }
      else {
        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);
      }
      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);
      *(double *)pcVar15 = dVar22 / dVar19;
      return;
    }
    goto LAB_000e7548;
  }
  pcVar13 = *(code **)(pcVar12 + 0x2c2260);
  pcVar14 = ConvertRGBToHWB;
  (*pcVar13)(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790);
  dVar17 = (double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4);
  iVar6 = *(int *)(pcVar13 + 0x2c1364);
  if (pdStack_c0 != (double *)0x0) {
    iVar4 = *(int *)(pcVar13 + 0x2c1364);
    if ((double *)pcVar11 != (double *)0x0) {
      if (pdStack_b8 != (double *)0x0) {
        dVar18 = dVar17;
        if (green < dVar17) {
          dVar18 = green;
        }
        dVar16 = red;
        if (dVar18 <= red) {
          dVar16 = dVar18;
        }
        dVar18 = green;
        if (green <= dVar17) {
          dVar18 = dVar17;
        }
        dVar21 = red;
        if (red <= dVar18) {
          dVar21 = dVar18;
        }
        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);
        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);
        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);
        *pdStack_b8 = dVar18 - dVar21 * dVar19;
        *(double *)pcVar11 = dVar16 * dVar19;
        if (ABS(dVar21 - dVar16) < dVar22) {
          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);
          return;
        }
        if (ABS(red - dVar16) < dVar22) {
          dVar17 = green - dVar17;
          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);
        }
        else if (ABS(green - dVar16) < dVar22) {
          dVar17 = dVar17 - red;
          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);
        }
        else {
          dVar17 = red - green;
          if (ABS(green - dVar16) < dVar22) {
            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);
          }
        }
        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /
                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);
        return;
      }
      iVar6 = iVar6 + 0x7790;
      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;
      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);
    }
    iVar6 = iVar6 + 0x7790;
    (**(code **)(pcVar13 + 0x2c2084))
              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);
  }
  pcVar11 = *(code **)(pcVar13 + 0x2c2084);
  (*pcVar11)(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,
             *(int *)(pcVar13 + 0x2c1364) + 0x7a68);
  dVar18 = (double)(**(code **)(pcVar11 + 0x2c20c0))();
  dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440);
  dVar18 = dVar18 * dVar19;
  dVar17 = green;
  dVar16 = (double)(**(code **)(pcVar11 + 0x2c20c0))(green);
  dVar16 = dVar16 * dVar19;
  dVar21 = (double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4));
  dVar21 = dVar21 * dVar19;
  dVar19 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +
           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +
           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40);
  dVar22 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +
           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +
           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28);
  dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +
           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +
           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10);
  if (pdStack_e0 != (double *)0x0) {
    iVar6 = *(int *)(pcVar11 + 0x2c117c);
    if ((double *)pcVar14 != (double *)0x0) {
      if (pdStack_d8 != (double *)0x0) {
        iVar6 = *(int *)(pcVar11 + 0x2c117c);
        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);
        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {
          iVar4 = *(int *)(pcVar11 + 0x2c1174);
          iVar9 = *(int *)(pcVar11 + 0x2c117c);
          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /
                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +
                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);
          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;
LAB_000e78cc:
          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);
          dVar19 = dVar18 / dVar21;
          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +
                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);
          iVar2 = *(int *)(pcVar11 + 0x2c117c);
          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {
            iVar2 = *(int *)(pcVar11 + 0x2c117c);
LAB_000e7904:
            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)
                     ) / *(double *)(iVar9 + -0x3cf0);
            goto LAB_000e7920;
          }
        }
        else {
          iVar4 = *(int *)(pcVar11 + 0x2c1174);
          iVar9 = *(int *)(pcVar11 + 0x2c117c);
          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))
                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)
                                     );
          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;
LAB_000e79e4:
          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))
                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)
                                     );
          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);
          dVar19 = dVar18 / dVar21;
          iVar2 = *(int *)(pcVar11 + 0x2c117c);
          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;
          iVar2 = *(int *)(pcVar11 + 0x2c117c);
        }
        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));
LAB_000e7920:
        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);
        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);
        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);
        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);
        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /
                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);
        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;
        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;
        return;
      }
      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();
    }
    (**(code **)(pcVar11 + 0x2c1e9c))
              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,
               iVar6 + 0x7a48);
  }
  pcVar13 = *(code **)(pcVar11 + 0x2c1e9c);
  (*pcVar13)(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,
             *(int *)(pcVar11 + 0x2c117c) + 0x7a48);
  pdStack_140 = (double *)((ulonglong)green >> 0x20);
  pdStack_13c = SUB84(green,0);
  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;
  iVar6 = *(int *)(pcVar13 + 0x2c0e60);
  if (pdStack_13c != (double *)0x0) {
    if (pdStack_138 != (double *)0x0) {
      iVar6 = *(int *)(pcVar13 + 0x2c0e60);
      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();
      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);
      dVar18 = dVar18 * dVar21;
      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);
      dVar17 = dVar17 * dVar21;
      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));
      dVar16 = dVar16 * dVar21;
      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +
               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +
               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);
      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);
      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +
               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +
               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);
      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +
               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +
               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);
      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {
        iVar4 = *(int *)(pcVar13 + 0x2c0e58);
        iVar9 = *(int *)(pcVar13 + 0x2c0e60);
        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /
                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))
                 / *(double *)(iVar9 + -0x3cf0);
      }
      else {
        iVar4 = *(int *)(pcVar13 + 0x2c0e58);
        iVar9 = *(int *)(pcVar13 + 0x2c0e60);
        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))
                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));
      }
      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {
        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);
        dVar21 = dVar17 / dVar19;
        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +
                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);
        iVar2 = *(int *)(pcVar13 + 0x2c0e60);
        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;
        iVar2 = *(int *)(pcVar13 + 0x2c0e60);
      }
      else {
        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))
                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));
        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);
        dVar21 = dVar17 / dVar19;
        iVar2 = *(int *)(pcVar13 + 0x2c0e60);
        if (*(double *)(iVar6 + -0x3d00) < dVar21) {
          iVar2 = *(int *)(pcVar13 + 0x2c0e60);
LAB_000e7da0:
          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))
                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));
          goto LAB_000e7c44;
        }
      }
      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /
               *(double *)(iVar9 + -0x3cf0);
LAB_000e7c44:
      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);
      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);
      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);
      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);
      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);
      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /
                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);
      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;
      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;
      dVar17 = (double)(*pcVar11)(dVar19,dVar18);
      pcVar11 = *(code **)(pcVar13 + 0x2c1580);
      *pdStack_13c = dVar17 / dVar22 + dVar25;
      dVar17 = (double)(*pcVar11)(dVar18,dVar19);
      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /
               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /
               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);
      if (dVar17 < 0.0) {
        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);
      }
      *pdStack_138 = dVar17;
      return;
    }
    iVar6 = iVar6 + 0x7a34;
    (**(code **)(pcVar13 + 0x2c1b80))
              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,
               iVar6);
  }
  (**(code **)(pcVar13 + 0x2c1b80))
            (*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,
             iVar6 + 0x7a34);
LAB_000e7e18:
  pcVar11 = *(code **)(pcVar13 + 0x2c1b80);
  (*pcVar11)(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,
             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34);
  if (pdStack_1b0 != (double *)0x0) {
    iVar6 = *(int *)(pcVar11 + 0x2c0aac);
    if (pdStack_1ac != (double *)0x0) {
      if (pdStack_1a8 != (double *)0x0) {
        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();
        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);
        dVar18 = dVar18 * dVar21;
        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);
        dVar17 = dVar17 * dVar21;
        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));
        dVar16 = dVar16 * dVar21;
        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +
                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +
                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);
        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +
                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +
                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);
        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +
                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +
                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);
        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {
          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);
        }
        else {
          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))
                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)
                                     );
          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -
                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);
        }
        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +
                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;
        if (0.0 <= dVar17) {
          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);
          dStack_208 = dVar17;
        }
        else {
          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);
          dStack_208 = -dVar17;
        }
        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {
          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);
        }
        else {
          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;
        }
        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);
        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);
        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);
        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);
        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);
        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);
        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);
        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);
        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);
        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);
        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);
        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -
                 dVar25;
        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -
                 dVar16;
        dVar17 = (double)(*pcVar13)(dVar25,dVar16);
        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);
        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +
                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);
        dVar17 = (double)(*pcVar13)(dVar16,dVar25);
        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /
                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /
                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);
        if (dVar17 < 0.0) {
          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);
        }
        *pdStack_1a8 = dVar17;
        return;
      }
      iVar6 = iVar6 + 0x7a20;
      (**(code **)(pcVar11 + 0x2c17cc))
                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,
                 iVar6);
    }
    (**(code **)(pcVar11 + 0x2c17cc))
              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,
               iVar6 + 0x7a20);
  }
  pcVar13 = *(code **)(pcVar11 + 0x2c17cc);
  pdVar5 = (double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c);
  (*pcVar13)(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,
             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20);
  if (pdVar5 != (double *)0x0) {
    dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];
    if (ABS(dVar17) < 0.0) {
      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));
    }
    return;
  }
  uVar7 = 0x5b5;
  pcVar11 = *(code **)(pcVar13 + 0x2c144c);
  (*pcVar11)(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,
             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4);
  (**(code **)(pcVar11 + 0x2c0bf8))();
  if (uVar7 < 8) {
                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    (*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();
    return;
  }
  return;
}



double FUN_000e6adc(double param_1,double param_2)

{
  undefined1 *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  double *pdVar5;
  int iVar6;
  float fVar7;
  uint uVar8;
  undefined *puVar9;
  double *unaff_s0;
  double *unaff_s1;
  double *unaff_s2;
  int iVar10;
  undefined *puVar11;
  code *pcVar12;
  code *pcVar13;
  code *pcVar14;
  code *pcVar15;
  code *pcVar16;
  double dVar17;
  double dVar18;
  double dVar19;
  double dVar20;
  double dVar21;
  double dVar22;
  double dVar23;
  double dVar24;
  double dVar25;
  double dVar26;
  double dVar27;
  double dVar28;
  double dVar29;
  double in_stack_00000010;
  double *in_stack_00000018;
  double *in_stack_0000001c;
  double *in_stack_00000020;
  undefined4 uStack_23c;
  double dStack_208;
  undefined4 uStack_1b4;
  double *pdStack_1b0;
  double *pdStack_1ac;
  double *pdStack_1a8;
  undefined4 uStack_144;
  double *pdStack_140;
  double *pdStack_13c;
  double *pdStack_138;
  undefined4 uStack_e4;
  double *pdStack_e0;
  double *pdStack_d8;
  undefined4 uStack_c4;
  double *pdStack_c0;
  double *pdStack_b8;
  undefined4 uStack_a4;
  double *pdStack_a0;
  double *pdStack_98;
  undefined4 uStack_84;
  undefined4 uStack_5c;
  double *pdStack_58;
  double *pdStack_50;
  undefined4 uStack_3c;
  
  if (in_stack_00000018 == (double *)0x0) {
    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,
               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);
LAB_000e6d3c:
    puVar9 = puVar9 + 0x7ab8;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,
               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);
  }
  else {
    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
    if (in_stack_0000001c != (double *)0x0) {
      if (in_stack_00000020 != (double *)0x0) {
        dVar18 = in_stack_00000010;
        if (in_stack_00000010 < param_2) {
          dVar18 = param_2;
        }
        dVar19 = param_1;
        if (param_1 <= dVar18) {
          dVar19 = dVar18;
        }
        dVar18 = param_2;
        if (in_stack_00000010 <= param_2) {
          dVar18 = in_stack_00000010;
        }
        dVar17 = param_1;
        if (dVar18 <= param_1) {
          dVar17 = dVar18;
        }
        dVar17 = dVar19 - dVar17;
        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);
        if (dVar18 <= ABS(dVar17)) {
          if (ABS(param_1 - dVar19) < dVar18) {
            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)
                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);
            dVar18 = dVar18 / dVar19;
            goto LAB_000e6c48;
          }
          if (ABS(param_2 - dVar19) < dVar18) {
            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            goto LAB_000e6c48;
          }
          if (ABS(in_stack_00000010 - dVar19) < dVar18) {
            dVar18 = ((param_1 - param_2) / dVar17 +
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            goto LAB_000e6c48;
          }
        }
        dVar18 = 0.0;
LAB_000e6c48:
        *in_stack_00000018 = dVar18;
        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);
        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);
        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);
        *in_stack_0000001c = dVar17 * dVar19;
        dVar18 = *(double *)(puVar9 + -0x3e78);
        *in_stack_00000020 =
             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;
        return dVar18;
      }
      goto LAB_000e6d3c;
    }
  }
  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);
  pcVar14 = FUN_000e6d7c;
  puVar11 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)
            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,
             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);
  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);
  iVar6 = *(int *)(puVar11 + 0x2c1b6c);
  if (unaff_s0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7790;
    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;
    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);
LAB_000e6fbc:
    iVar6 = iVar6 + 0x7790;
    iVar4 = iVar4 + 0x7844;
    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);
  }
  else {
    iVar4 = *(int *)(puVar11 + 0x2c1b6c);
    if (unaff_s1 != (double *)0x0) {
      iVar4 = *(int *)(puVar11 + 0x2c1b6c);
      if (unaff_s2 != (double *)0x0) {
        *(undefined4 *)((int)unaff_s0 + 4) = 0;
        *(undefined4 *)unaff_s0 = 0;
        *(undefined4 *)((int)unaff_s1 + 4) = 0;
        *(undefined4 *)unaff_s1 = 0;
        *(undefined4 *)((int)unaff_s2 + 4) = 0;
        *(undefined4 *)unaff_s2 = 0;
        dVar19 = param_2;
        if (param_1 < param_2) {
          dVar19 = param_1;
        }
        dVar17 = dVar18;
        if (dVar19 <= dVar18) {
          dVar17 = dVar19;
        }
        uVar3 = SUB84(param_2,0);
        if (param_2 < param_1) {
          uVar3 = SUB84(param_1,0);
          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);
        }
        else {
          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);
        }
        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {
          puVar1 = &_gp_1;
          uVar3 = uStack_3c;
        }
        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);
        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {
          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;
          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);
          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);
          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;
          if (dVar19 <= ABS(dVar17)) {
            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {
              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {
                dVar18 = (dVar18 - param_1) / dVar17 +
                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);
                *unaff_s0 = dVar18;
              }
              else {
                dVar18 = (param_1 - param_2) / dVar17 +
                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);
                *unaff_s0 = dVar18;
              }
              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);
              iVar6 = *(int *)(puVar11 + 0x2c1b64);
            }
            else {
              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);
              dVar17 = (param_2 - dVar18) / dVar17;
              *unaff_s0 = dVar17;
              dVar18 = dVar17 / dVar19;
              iVar6 = *(int *)(puVar11 + 0x2c1b64);
            }
            if (dVar18 < 0.0) {
              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);
              *unaff_s0 = dVar18;
            }
            else {
              *unaff_s0 = dVar18;
            }
          }
        }
        return dVar18;
      }
      goto LAB_000e6fbc;
    }
  }
  pcVar12 = *(code **)(puVar11 + 0x2c288c);
  pcVar15 = FUN_000e6ff4;
  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);
  iVar6 = *(int *)(pcVar12 + 0x2c18f4);
  if (pdStack_58 != (double *)0x0) {
    if ((double *)pcVar14 != (double *)0x0) {
      if (pdStack_50 != (double *)0x0) {
        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);
        dVar17 = param_1 * dVar18;
        param_2 = param_2 * dVar18;
        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;
        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);
        *pdStack_50 = dVar19;
        if (dVar19 <= 0.0) {
          *pdStack_58 = 0.0;
          *(double *)pcVar14 = 0.0;
          return dVar18;
        }
        dVar20 = dVar18;
        if (param_2 < dVar18) {
          dVar20 = param_2;
        }
        if (dVar17 < dVar20) {
          dVar20 = dVar17;
        }
        pcVar15 = *(code **)(pcVar12 + 0x2c2014);
        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);
        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);
        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);
        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;
        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,
                                    ((param_1 * dVar17 - param_2) - dVar18) *
                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));
        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /
                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);
        if (dVar18 < 0.0) {
          dVar18 = dVar18 + dVar26;
        }
        *pdStack_58 = dVar18;
        return dVar18;
      }
      iVar6 = iVar6 + 0x7a98;
      (**(code **)(pcVar12 + 0x2c2614))
                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,
                 iVar6);
    }
    iVar6 = iVar6 + 0x7a98;
    (**(code **)(pcVar12 + 0x2c2614))
              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);
  }
  pcVar14 = *(code **)(pcVar12 + 0x2c2614);
  pcVar16 = ConvertRGBToHSL;
  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,
             iVar6 + 0x7a98);
  iVar6 = *(int *)(pcVar14 + 0x2c1748);
  if (unaff_s0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7a88;
    (**(code **)(pcVar14 + 0x2c2468))
              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,
               iVar6);
LAB_000e736c:
    pcVar13 = *(code **)(pcVar14 + 0x2c2468);
    iVar6 = iVar6 + 0x7a88;
    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,
               iVar6);
  }
  else {
    pcVar13 = *(code **)(pcVar14 + 0x2c2468);
    if ((double *)pcVar15 != (double *)0x0) {
      if (pdVar5 != (double *)0x0) {
        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);
        param_2 = param_2 * dVar18;
        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;
        param_1 = param_1 * dVar18;
        dVar18 = dVar19;
        if (dVar19 < param_2) {
          dVar18 = param_2;
        }
        dVar17 = param_1;
        if (param_1 <= dVar18) {
          dVar17 = dVar18;
        }
        dVar18 = param_2;
        if (dVar19 <= param_2) {
          dVar18 = dVar19;
        }
        iVar6 = *(int *)(pcVar14 + 0x2c1740);
        dVar20 = param_1;
        if (dVar18 <= param_1) {
          dVar20 = dVar18;
        }
        dVar18 = dVar17 - dVar20;
        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);
        if (dVar18 <= 0.0) {
          *unaff_s0 = 0.0;
          *(double *)pcVar15 = 0.0;
          return dVar18;
        }
        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {
          dVar17 = (param_2 - dVar19) / dVar18;
          if (param_2 < dVar19) {
            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);
          }
        }
        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {
          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)
          ;
        }
        else {
          dVar17 = (param_1 - param_2) / dVar18 +
                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);
        }
        dVar20 = *(double *)(iVar6 + 0x1400);
        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);
        dVar19 = *pdVar5;
        dVar17 = dVar19 + dVar19;
        if (dVar20 < dVar19) {
          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;
        }
        *(double *)pcVar15 = dVar18 / dVar17;
        return dVar18 / dVar17;
      }
      goto LAB_000e736c;
    }
  }
  pcVar12 = FUN_000e73a8;
  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,
             iVar6 + 0x7a88);
  iVar6 = *(int *)(pcVar13 + 0x2c1540);
  if (pdStack_a0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7a78;
    (**(code **)(pcVar13 + 0x2c2260))
              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,
               iVar6);
LAB_000e7548:
    (**(code **)(pcVar13 + 0x2c2260))
              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,
               iVar6 + 0x7a78);
  }
  else if ((double *)pcVar16 != (double *)0x0) {
    if (pdStack_98 != (double *)0x0) {
      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);
      param_2 = param_2 * dVar18;
      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;
      param_1 = param_1 * dVar18;
      dVar18 = dVar19;
      if (dVar19 < param_2) {
        dVar18 = param_2;
      }
      dVar17 = param_1;
      if (param_1 <= dVar18) {
        dVar17 = dVar18;
      }
      dVar18 = param_2;
      if (dVar19 <= param_2) {
        dVar18 = dVar19;
      }
      dVar20 = param_1;
      if (dVar18 <= param_1) {
        dVar20 = dVar18;
      }
      dVar20 = dVar17 - dVar20;
      *pdStack_98 = dVar17;
      if (dVar20 <= 0.0) {
        *pdStack_a0 = 0.0;
        *(double *)pcVar16 = 0.0;
        return dVar19;
      }
      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {
        dVar18 = (param_2 - dVar19) / dVar20;
        if (param_2 < dVar19) {
          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);
          dVar18 = dVar18 + dVar19;
        }
      }
      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {
        dVar19 = (dVar19 - param_1) / dVar20;
        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);
      }
      else {
        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);
      }
      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);
      *(double *)pcVar16 = dVar20 / dVar17;
      return dVar19;
    }
    goto LAB_000e7548;
  }
  pcVar14 = *(code **)(pcVar13 + 0x2c2260);
  pcVar15 = FUN_000e7584;
  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);
  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);
  iVar6 = *(int *)(pcVar14 + 0x2c1364);
  if (pdStack_c0 != (double *)0x0) {
    iVar4 = *(int *)(pcVar14 + 0x2c1364);
    if ((double *)pcVar12 != (double *)0x0) {
      if (pdStack_b8 != (double *)0x0) {
        dVar19 = dVar18;
        if (param_2 < dVar18) {
          dVar19 = param_2;
        }
        dVar17 = param_1;
        if (dVar19 <= param_1) {
          dVar17 = dVar19;
        }
        dVar19 = param_2;
        if (param_2 <= dVar18) {
          dVar19 = dVar18;
        }
        dVar20 = param_1;
        if (param_1 <= dVar19) {
          dVar20 = dVar19;
        }
        dVar19 = dVar20 - dVar17;
        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);
        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);
        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);
        *pdStack_b8 = dVar23 - dVar20 * dVar26;
        *(double *)pcVar12 = dVar17 * dVar26;
        if (ABS(dVar19) < dVar21) {
          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);
          *pdStack_c0 = dVar18;
          return dVar18;
        }
        if (ABS(param_1 - dVar17) < dVar21) {
          param_1 = param_2 - dVar18;
          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);
        }
        else if (ABS(param_2 - dVar17) < dVar21) {
          param_1 = dVar18 - param_1;
          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);
        }
        else {
          param_1 = param_1 - param_2;
          if (ABS(param_2 - dVar17) < dVar21) {
            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);
          }
        }
        *pdStack_c0 = (dVar23 - param_1 / dVar19) /
                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);
        return dVar19;
      }
      iVar6 = iVar6 + 0x7790;
      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;
      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);
    }
    iVar6 = iVar6 + 0x7790;
    (**(code **)(pcVar14 + 0x2c2084))
              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);
  }
  pcVar12 = *(code **)(pcVar14 + 0x2c2084);
  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,
             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);
  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();
  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);
  dVar19 = dVar19 * dVar23;
  dVar18 = param_2;
  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);
  dVar17 = dVar17 * dVar23;
  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));
  dVar20 = dVar20 * dVar23;
  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +
           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +
           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);
  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +
           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +
           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);
  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +
           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +
           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);
  if (pdStack_e0 != (double *)0x0) {
    iVar6 = *(int *)(pcVar12 + 0x2c117c);
    if ((double *)pcVar15 != (double *)0x0) {
      if (pdStack_d8 != (double *)0x0) {
        iVar6 = *(int *)(pcVar12 + 0x2c117c);
        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);
        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {
          iVar4 = *(int *)(pcVar12 + 0x2c1174);
          iVar10 = *(int *)(pcVar12 + 0x2c117c);
          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /
                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +
                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);
          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;
LAB_000e78cc:
          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);
          dVar23 = dVar19 / dVar20;
          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +
                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);
          iVar2 = *(int *)(pcVar12 + 0x2c117c);
          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {
            iVar2 = *(int *)(pcVar12 + 0x2c117c);
LAB_000e7904:
            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)
                     ) / *(double *)(iVar10 + -0x3cf0);
            goto LAB_000e7920;
          }
        }
        else {
          iVar4 = *(int *)(pcVar12 + 0x2c1174);
          iVar10 = *(int *)(pcVar12 + 0x2c117c);
          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))
                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)
                                     );
          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;
LAB_000e79e4:
          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))
                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)
                                     );
          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);
          dVar23 = dVar19 / dVar20;
          iVar2 = *(int *)(pcVar12 + 0x2c117c);
          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;
          iVar2 = *(int *)(pcVar12 + 0x2c117c);
        }
        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));
LAB_000e7920:
        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);
        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);
        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);
        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23
                 + dVar20;
        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /
                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);
        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;
        *pdStack_d8 = dVar19;
        return dVar19;
      }
      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();
    }
    (**(code **)(pcVar12 + 0x2c1e9c))
              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,
               iVar6 + 0x7a48);
  }
  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);
  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,
             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);
  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);
  pdStack_13c = SUB84(param_2,0);
  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;
  iVar6 = *(int *)(pcVar14 + 0x2c0e60);
  if (pdStack_13c != (double *)0x0) {
    if (pdStack_138 != (double *)0x0) {
      iVar6 = *(int *)(pcVar14 + 0x2c0e60);
      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();
      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);
      dVar19 = dVar19 * dVar20;
      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);
      dVar18 = dVar18 * dVar20;
      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));
      dVar17 = dVar17 * dVar20;
      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +
               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +
               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);
      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);
      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +
               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +
               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);
      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +
               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +
               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);
      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {
        iVar4 = *(int *)(pcVar14 + 0x2c0e58);
        iVar10 = *(int *)(pcVar14 + 0x2c0e60);
        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /
                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))
                 / *(double *)(iVar10 + -0x3cf0);
      }
      else {
        iVar4 = *(int *)(pcVar14 + 0x2c0e58);
        iVar10 = *(int *)(pcVar14 + 0x2c0e60);
        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))
                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));
      }
      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {
        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);
        dVar20 = dVar18 / dVar23;
        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +
                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);
        iVar2 = *(int *)(pcVar14 + 0x2c0e60);
        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;
        iVar2 = *(int *)(pcVar14 + 0x2c0e60);
      }
      else {
        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))
                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));
        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);
        dVar20 = dVar18 / dVar23;
        iVar2 = *(int *)(pcVar14 + 0x2c0e60);
        if (*(double *)(iVar6 + -0x3d00) < dVar20) {
          iVar2 = *(int *)(pcVar14 + 0x2c0e60);
LAB_000e7da0:
          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))
                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));
          goto LAB_000e7c44;
        }
      }
      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /
               *(double *)(iVar10 + -0x3cf0);
LAB_000e7c44:
      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);
      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);
      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);
      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);
      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);
      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /
                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);
      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;
      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;
      dVar18 = (double)(*pcVar12)(dVar23,dVar19);
      pcVar12 = *(code **)(pcVar14 + 0x2c1580);
      *pdStack_13c = dVar18 / dVar26 + dVar21;
      dVar18 = (double)(*pcVar12)(dVar19,dVar23);
      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /
               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /
               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);
      if (dVar18 < 0.0) {
        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);
      }
      *pdStack_138 = dVar18;
      return dVar18;
    }
    iVar6 = iVar6 + 0x7a34;
    (**(code **)(pcVar14 + 0x2c1b80))
              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,
               iVar6);
  }
  (**(code **)(pcVar14 + 0x2c1b80))
            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,
             iVar6 + 0x7a34);
LAB_000e7e18:
  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);
  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,
             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);
  if (pdStack_1b0 != (double *)0x0) {
    iVar6 = *(int *)(pcVar12 + 0x2c0aac);
    if (pdStack_1ac != (double *)0x0) {
      if (pdStack_1a8 != (double *)0x0) {
        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();
        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);
        dVar19 = dVar19 * dVar20;
        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);
        dVar18 = dVar18 * dVar20;
        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));
        dVar17 = dVar17 * dVar20;
        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +
                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +
                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);
        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +
                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +
                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);
        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +
                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +
                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);
        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {
          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);
        }
        else {
          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))
                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)
                                     );
          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -
                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);
        }
        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +
                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;
        if (0.0 <= dVar18) {
          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);
          dStack_208 = dVar18;
        }
        else {
          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);
          dStack_208 = -dVar18;
        }
        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {
          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);
        }
        else {
          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;
        }
        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);
        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);
        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);
        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);
        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);
        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);
        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);
        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);
        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);
        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);
        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);
        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -
                 dVar21;
        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -
                 dVar17;
        dVar18 = (double)(*pcVar14)(dVar21,dVar17);
        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);
        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +
                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);
        dVar18 = (double)(*pcVar14)(dVar17,dVar21);
        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /
                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /
                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);
        if (dVar18 < 0.0) {
          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);
        }
        *pdStack_1a8 = dVar18;
        return dVar18;
      }
      iVar6 = iVar6 + 0x7a20;
      (**(code **)(pcVar12 + 0x2c17cc))
                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,
                 iVar6);
    }
    (**(code **)(pcVar12 + 0x2c17cc))
              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,
               iVar6 + 0x7a20);
  }
  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);
  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);
  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,
             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);
  if (pdVar5 != (double *)0x0) {
    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];
    dVar19 = SQRT(ABS(dVar18));
    if (ABS(dVar18) < 0.0) {
      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));
    }
    return dVar19;
  }
  uVar8 = 0x5b5;
  pcVar12 = *(code **)(pcVar14 + 0x2c144c);
  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);
  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10
            );
  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);
  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();
  if (uVar8 < 8) {
                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    dVar18 = (double)(*(pcVar12 +
                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();
    return dVar18;
  }
  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *
         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *
         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;
}


lui gp,0x2d
addiu gp,gp,-0x622c
addu gp,gp,t9
addiu sp,sp,-0x50
sdc1 f20,0x30(sp)
sw s2,0x20(sp)
sw gp,0x10(sp)
sw s4,0x28(sp)
sw s3,0x24(sp)
sw ra,0x2c(sp)
sw s1,0x1c(sp)
sw s0,0x18(sp)
lw s2,0x68(sp)
sdc1 f26,0x48(sp)
lw s4,0x6c(sp)
sdc1 f24,0x40(sp)
lw s3,0x70(sp)
sdc1 f22,0x38(sp)
beq s2,zero,0x000e6d18
_ldc1 f20,0x60(sp)
beq s4,zero,0x000e6d5c
_lw a3,-0x7fc8(gp)
beq s3,zero,0x000e6d3c
_mov.D f22,f12
c.lt.D f20,f14
bc1t 0x000e6c38
_mov.D f24,f14
mov.D f0,f20
c.lt.D f0,f22
bc1f 0x1,0x000e6b5c
_nop
mov.D f0,f22
c.lt.D f24,f20
bc1f 0x2,0x000e6b6c
_mov.D f2,f20
mov.D f2,f24
c.lt.D f22,f2
bc1f 0x3,0x000e6b7c
_lw a0,-0x7fd0(gp)
mov.D f2,f22
sub.D D f2,f0,f2
mfc1 s1,f2
mtc1 s1,f4
mfhc1 s0,f2
ldc1 f2,0x13f8(a0)
ext v0,s0,0x0,0x1f
mthc1 v0,f4
c.lt.D f4,f2
bc1t 0x4,0x000e6c40
_nop
sub.D D f4,f22,f0
mfc1 a1,f4
mfhc1 a0,f4
mtc1 a1,f4
ext v0,a0,0x0,0x1f
mthc1 v0,f4
c.lt.D f4,f2
bc1t 0x5,0x000e6ce8
_lw v0,-0x7fc8(gp)
sub.D D f4,f24,f0
mfc1 a1,f4
mfhc1 a0,f4
mtc1 a1,f4
ext v0,a0,0x0,0x1f
mthc1 v0,f4
c.lt.D f4,f2
bc1t 0x6,0x000e6cc0
_lw v0,-0x7fc8(gp)
sub.D D f0,f20,f0
mfc1 v1,f0
mfhc1 v0,f0
mtc1 v1,f0
ext a0,v0,0x0,0x1f
mthc1 a0,f0
c.lt.D f0,f2
bc1f 0x7,0x000e6c40
_lw v0,-0x7fc8(gp)
mtc1 s1,f2
sub.D D f0,f22,f24
mthc1 s0,f2
div.D f0,f0,f2
ldc1 f2,-0x3cc8(v0)
lw v0,-0x7fc8(gp)
add.D f0,f0,f2
ldc1 f2,-0x2e50(v0)
b 0x000e6c48
_div.D f0,f0,f2
b 0x000e6b4c
_mov.D f0,f14
mtc1 zero,f0
mthc1 zero,f0
sdc1 f0,0x0(s2)
lw v0,-0x7fd0(gp)
mtc1 s1,f0
lw ra,0x2c(sp)
lw s2,0x20(sp)
ldc1 f2,0x1440(v0)
lw v0,-0x7fc8(gp)
lw s1,0x1c(sp)
ldc1 f26,0x48(sp)
ldc1 f12,-0x3e90(v0)
mthc1 s0,f0
lw v0,-0x7fc8(gp)
lw s0,0x18(sp)
ldc1 f4,-0x3ea0(v0)
lw v0,-0x7fc8(gp)
mul.D f12,f24,f12
ldc1 f24,0x40(sp)
mul.D f0,f0,f2
madd.D f12,f12,f22,f4
ldc1 f22,0x38(sp)
sdc1 f0,0x0(s4)
lw s4,0x28(sp)
ldc1 f0,-0x3e78(v0)
madd.D f12,f12,f20,f0
ldc1 f20,0x30(sp)
mul.D f12,f12,f2
sdc1 f12,0x0(s3)
lw s3,0x24(sp)
jr ra
_addiu sp,sp,0x50
mtc1 s1,f2
sub.D D f0,f20,f22
mthc1 s0,f2
div.D f0,f0,f2
ldc1 f2,-0x2e48(v0)
lw v0,-0x7fc8(gp)
add.D f0,f0,f2
ldc1 f2,-0x2e50(v0)
b 0x000e6c48
_div.D f0,f0,f2
mtc1 s1,f0
lw t9,-0x6ef8(gp)
sub.D D f12,f24,f20
ldc1 f26,-0x2e50(v0)
mthc1 s0,f0
mov.D f14,f26
div.D f12,f12,f0
jalr t9
_add.D f12,f12,f26
lw gp,0x10(sp)
b 0x000e6c48
_div.D f0,f0,f26
lw a3,-0x7fc8(gp)
li a2,0x39a
lw a1,-0x7fc8(gp)
lw a0,-0x7fc8(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,0x7ab8
addiu a1,a1,0x7790
jalr t9
_addiu a0,a0,0x77d8
li a2,0x39c
lw a1,-0x7fc8(gp)
lw a0,-0x7fc8(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,0x7ab8
addiu a1,a1,0x7790
jalr t9
_addiu a0,a0,0x780c
li a2,0x39b
lw a1,-0x7fc8(gp)
lw a0,-0x7fc8(gp)
lw t9,-0x72a8(gp)
addiu a3,a3,0x7ab8
addiu a1,a1,0x7790
jalr t9
_addiu a0,a0,0x77f0
(translation_unit "double FUN_000e6adc(double param_1,double param_2)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}\n\n" (function_definition "double FUN_000e6adc(double param_1,double param_2)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}" primitive_type (function_declarator "FUN_000e6adc(double param_1,double param_2)" identifier (parameter_list "(double param_1,double param_2)" ( (parameter_declaration "double param_1" primitive_type identifier) , (parameter_declaration "double param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}" { (declaration "undefined1 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "double *pdVar5;" primitive_type (pointer_declarator "*pdVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "float fVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "double *unaff_s0;" primitive_type (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "double *unaff_s1;" primitive_type (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "double *unaff_s2;" primitive_type (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "code *pcVar12;" type_identifier (pointer_declarator "*pcVar12" * identifier) ;) (declaration "code *pcVar13;" type_identifier (pointer_declarator "*pcVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "code *pcVar16;" type_identifier (pointer_declarator "*pcVar16" * identifier) ;) (declaration "double dVar17;" primitive_type identifier ;) (declaration "double dVar18;" primitive_type identifier ;) (declaration "double dVar19;" primitive_type identifier ;) (declaration "double dVar20;" primitive_type identifier ;) (declaration "double dVar21;" primitive_type identifier ;) (declaration "double dVar22;" primitive_type identifier ;) (declaration "double dVar23;" primitive_type identifier ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "double dVar26;" primitive_type identifier ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "double in_stack_00000010;" primitive_type identifier ;) (declaration "double *in_stack_00000018;" primitive_type (pointer_declarator "*in_stack_00000018" * identifier) ;) (declaration "double *in_stack_0000001c;" primitive_type (pointer_declarator "*in_stack_0000001c" * identifier) ;) (declaration "double *in_stack_00000020;" primitive_type (pointer_declarator "*in_stack_00000020" * identifier) ;) (declaration "undefined4 uStack_23c;" type_identifier identifier ;) (declaration "double dStack_208;" primitive_type identifier ;) (declaration "undefined4 uStack_1b4;" type_identifier identifier ;) (declaration "double *pdStack_1b0;" primitive_type (pointer_declarator "*pdStack_1b0" * identifier) ;) (declaration "double *pdStack_1ac;" primitive_type (pointer_declarator "*pdStack_1ac" * identifier) ;) (declaration "double *pdStack_1a8;" primitive_type (pointer_declarator "*pdStack_1a8" * identifier) ;) (declaration "undefined4 uStack_144;" type_identifier identifier ;) (declaration "double *pdStack_140;" primitive_type (pointer_declarator "*pdStack_140" * identifier) ;) (declaration "double *pdStack_13c;" primitive_type (pointer_declarator "*pdStack_13c" * identifier) ;) (declaration "double *pdStack_138;" primitive_type (pointer_declarator "*pdStack_138" * identifier) ;) (declaration "undefined4 uStack_e4;" type_identifier identifier ;) (declaration "double *pdStack_e0;" primitive_type (pointer_declarator "*pdStack_e0" * identifier) ;) (declaration "double *pdStack_d8;" primitive_type (pointer_declarator "*pdStack_d8" * identifier) ;) (declaration "undefined4 uStack_c4;" type_identifier identifier ;) (declaration "double *pdStack_c0;" primitive_type (pointer_declarator "*pdStack_c0" * identifier) ;) (declaration "double *pdStack_b8;" primitive_type (pointer_declarator "*pdStack_b8" * identifier) ;) (declaration "undefined4 uStack_a4;" type_identifier identifier ;) (declaration "double *pdStack_a0;" primitive_type (pointer_declarator "*pdStack_a0" * identifier) ;) (declaration "double *pdStack_98;" primitive_type (pointer_declarator "*pdStack_98" * identifier) ;) (declaration "undefined4 uStack_84;" type_identifier identifier ;) (declaration "undefined4 uStack_5c;" type_identifier identifier ;) (declaration "double *pdStack_58;" primitive_type (pointer_declarator "*pdStack_58" * identifier) ;) (declaration "double *pdStack_50;" primitive_type (pointer_declarator "*pdStack_50" * identifier) ;) (declaration "undefined4 uStack_3c;" type_identifier identifier ;) (if_statement "if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" if (parenthesized_expression "(in_stack_00000018 == (double *)0x0)" ( (binary_expression "in_stack_00000018 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }" { (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" identifier = (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;" statement_identifier : (expression_statement "puVar9 = puVar9 + 0x7ab8;" (assignment_expression "puVar9 = puVar9 + 0x7ab8" identifier = (binary_expression "puVar9 + 0x7ab8" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" else (compound_statement "{\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" { (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = identifier) ;) (if_statement "if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }" if (parenthesized_expression "(in_stack_0000001c != (double *)0x0)" ( (binary_expression "in_stack_0000001c != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }" { (if_statement "if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }" if (parenthesized_expression "(in_stack_00000020 != (double *)0x0)" ( (binary_expression "in_stack_00000020 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }" { (expression_statement "dVar18 = in_stack_00000010;" (assignment_expression "dVar18 = in_stack_00000010" identifier = identifier) ;) (if_statement "if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }" if (parenthesized_expression "(in_stack_00000010 < param_2)" ( (binary_expression "in_stack_00000010 < param_2" identifier < identifier) )) (compound_statement "{\n          dVar18 = param_2;\n        }" { (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) })) (expression_statement "dVar19 = param_1;" (assignment_expression "dVar19 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }" if (parenthesized_expression "(param_1 <= dVar18)" ( (binary_expression "param_1 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar19 = dVar18;\n        }" { (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (if_statement "if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }" if (parenthesized_expression "(in_stack_00000010 <= param_2)" ( (binary_expression "in_stack_00000010 <= param_2" identifier <= identifier) )) (compound_statement "{\n          dVar18 = in_stack_00000010;\n        }" { (expression_statement "dVar18 = in_stack_00000010;" (assignment_expression "dVar18 = in_stack_00000010" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }" if (parenthesized_expression "(dVar18 <= param_1)" ( (binary_expression "dVar18 <= param_1" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar18;\n        }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar19 - dVar17;" (assignment_expression "dVar17 = dVar19 - dVar17" identifier = (binary_expression "dVar19 - dVar17" identifier - identifier)) ;) (expression_statement "dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);" (assignment_expression "dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x13f8)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x13f8)" ( (binary_expression "PTR_LAB_003a88e0 + 0x13f8" identifier + number_literal) ))))) ;) (if_statement "if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" if (parenthesized_expression "(dVar18 <= ABS(dVar17))" ( (binary_expression "dVar18 <= ABS(dVar17)" identifier <= (call_expression "ABS(dVar17)" identifier (argument_list "(dVar17)" ( identifier )))) )) (compound_statement "{\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" { (if_statement "if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(param_1 - dVar19) < dVar18)" ( (binary_expression "ABS(param_1 - dVar19) < dVar18" (call_expression "ABS(param_1 - dVar19)" identifier (argument_list "(param_1 - dVar19)" ( (binary_expression "param_1 - dVar19" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);" (assignment_expression "dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" identifier = (cast_expression "(double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" (parenthesized_expression "(*(code *)PTR_fmod_003a99b8)" ( (pointer_expression "*(code *)PTR_fmod_003a99b8" * (cast_expression "(code *)PTR_fmod_003a99b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" ( (binary_expression "(param_2 - in_stack_00000010) / dVar17 + dVar19" (binary_expression "(param_2 - in_stack_00000010) / dVar17" (parenthesized_expression "(param_2 - in_stack_00000010)" ( (binary_expression "param_2 - in_stack_00000010" identifier - identifier) )) / identifier) + identifier) , identifier ))))) ;) (expression_statement "dVar18 = dVar18 / dVar19;" (assignment_expression "dVar18 = dVar18 / dVar19" identifier = (binary_expression "dVar18 / dVar19" identifier / identifier)) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) (if_statement "if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(param_2 - dVar19) < dVar18)" ( (binary_expression "ABS(param_2 - dVar19) < dVar18" (call_expression "ABS(param_2 - dVar19)" identifier (argument_list "(param_2 - dVar19)" ( (binary_expression "param_2 - dVar19" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (binary_expression "((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48))" ( (binary_expression "(in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (binary_expression "(in_stack_00000010 - param_1) / dVar17" (parenthesized_expression "(in_stack_00000010 - param_1)" ( (binary_expression "in_stack_00000010 - param_1" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) )))))) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) (if_statement "if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(in_stack_00000010 - dVar19) < dVar18)" ( (binary_expression "ABS(in_stack_00000010 - dVar19) < dVar18" (call_expression "ABS(in_stack_00000010 - dVar19)" identifier (argument_list "(in_stack_00000010 - dVar19)" ( (binary_expression "in_stack_00000010 - dVar19" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (binary_expression "((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8))" ( (binary_expression "(param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar17" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) )))))) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) })) (expression_statement "dVar18 = 0.0;" (assignment_expression "dVar18 = 0.0" identifier = number_literal) ;) (labeled_statement "LAB_000e6c48:\n        *in_stack_00000018 = dVar18;" statement_identifier : (expression_statement "*in_stack_00000018 = dVar18;" (assignment_expression "*in_stack_00000018 = dVar18" (pointer_expression "*in_stack_00000018" * identifier) = identifier) ;)) (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = identifier) ;) (expression_statement "dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);" (assignment_expression "dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1440)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1440)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1440" identifier + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);" (assignment_expression "dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90" identifier + number_literal) ))))) ;) (expression_statement "dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0" identifier + number_literal) ))))) ;) (expression_statement "*in_stack_0000001c = dVar17 * dVar19;" (assignment_expression "*in_stack_0000001c = dVar17 * dVar19" (pointer_expression "*in_stack_0000001c" * identifier) = (binary_expression "dVar17 * dVar19" identifier * identifier)) ;) (expression_statement "dVar18 = *(double *)(puVar9 + -0x3e78);" (assignment_expression "dVar18 = *(double *)(puVar9 + -0x3e78)" identifier = (pointer_expression "*(double *)(puVar9 + -0x3e78)" * (cast_expression "(double *)(puVar9 + -0x3e78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + -0x3e78)" ( (binary_expression "puVar9 + -0x3e78" identifier + number_literal) ))))) ;) (expression_statement "*in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;" (assignment_expression "*in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19" (pointer_expression "*in_stack_00000020" * identifier) = (binary_expression "(in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19" (parenthesized_expression "(in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23)" ( (binary_expression "in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23" (binary_expression "in_stack_00000010 * dVar18 + param_1 * dVar20" (binary_expression "in_stack_00000010 * dVar18" identifier * identifier) + (binary_expression "param_1 * dVar20" identifier * identifier)) + (binary_expression "param_2 * dVar23" identifier * identifier)) )) * identifier)) ;) (return_statement "return dVar18;" return identifier ;) })) (goto_statement "goto LAB_000e6d3c;" goto statement_identifier ;) })) }))) (expression_statement "pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);" (assignment_expression "pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20)" identifier = (cast_expression "(double *)((ulonglong)in_stack_00000010 >> 0x20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)in_stack_00000010 >> 0x20)" ( (binary_expression "(ulonglong)in_stack_00000010 >> 0x20" (cast_expression "(ulonglong)in_stack_00000010" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pcVar14 = FUN_000e6d7c;" (assignment_expression "pcVar14 = FUN_000e6d7c" identifier = identifier) ;) (expression_statement "puVar11 = PTR___assert_fail_003a9608;" (assignment_expression "puVar11 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "puVar9 + 0x7ab8" identifier + number_literal) ))) ;) (expression_statement "dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);" (assignment_expression "dVar18 = (double)CONCAT44(&_gp_1,uStack_3c)" identifier = (cast_expression "(double)CONCAT44(&_gp_1,uStack_3c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(&_gp_1,uStack_3c)" identifier (argument_list "(&_gp_1,uStack_3c)" ( (pointer_expression "&_gp_1" & identifier) , identifier ))))) ;) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" if (parenthesized_expression "(unaff_s0 == (double *)0x0)" ( (binary_expression "unaff_s0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8" identifier = (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x77d8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar11 + 0x2c288c))" ( (pointer_expression "**(code **)(puVar11 + 0x2c288c)" * (pointer_expression "*(code **)(puVar11 + 0x2c288c)" * (cast_expression "(code **)(puVar11 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2c288c)" ( (binary_expression "puVar11 + 0x2c288c" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;" statement_identifier : (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;)) (expression_statement "iVar4 = iVar4 + 0x7844;" (assignment_expression "iVar4 = iVar4 + 0x7844" identifier = (binary_expression "iVar4 + 0x7844" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar11 + 0x2c288c))" ( (pointer_expression "**(code **)(puVar11 + 0x2c288c)" * (pointer_expression "*(code **)(puVar11 + 0x2c288c)" * (cast_expression "(code **)(puVar11 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2c288c)" ( (binary_expression "puVar11 + 0x2c288c" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" else (compound_statement "{\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" { (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }" if (parenthesized_expression "(unaff_s1 != (double *)0x0)" ( (binary_expression "unaff_s1 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }" { (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }" if (parenthesized_expression "(unaff_s2 != (double *)0x0)" ( (binary_expression "unaff_s2 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }" { (expression_statement "*(undefined4 *)((int)unaff_s0 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s0 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s0 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s0 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s0 + 4)" ( (binary_expression "(int)unaff_s0 + 4" (cast_expression "(int)unaff_s0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s0 = 0;" (assignment_expression "*(undefined4 *)unaff_s0 = 0" (pointer_expression "*(undefined4 *)unaff_s0" * (cast_expression "(undefined4 *)unaff_s0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)unaff_s1 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s1 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s1 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s1 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s1 + 4)" ( (binary_expression "(int)unaff_s1 + 4" (cast_expression "(int)unaff_s1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s1 = 0;" (assignment_expression "*(undefined4 *)unaff_s1 = 0" (pointer_expression "*(undefined4 *)unaff_s1" * (cast_expression "(undefined4 *)unaff_s1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)unaff_s2 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s2 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s2 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s2 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s2 + 4)" ( (binary_expression "(int)unaff_s2 + 4" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s2 = 0;" (assignment_expression "*(undefined4 *)unaff_s2 = 0" (pointer_expression "*(undefined4 *)unaff_s2" * (cast_expression "(undefined4 *)unaff_s2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" identifier = identifier) ;) (if_statement "if (param_1 < param_2) {\n          dVar19 = param_1;\n        }" if (parenthesized_expression "(param_1 < param_2)" ( (binary_expression "param_1 < param_2" identifier < identifier) )) (compound_statement "{\n          dVar19 = param_1;\n        }" { (expression_statement "dVar19 = param_1;" (assignment_expression "dVar19 = param_1" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) (if_statement "if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }" if (parenthesized_expression "(dVar19 <= dVar18)" ( (binary_expression "dVar19 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar19;\n        }" { (expression_statement "dVar17 = dVar19;" (assignment_expression "dVar17 = dVar19" identifier = identifier) ;) })) (expression_statement "uVar3 = SUB84(param_2,0);" (assignment_expression "uVar3 = SUB84(param_2,0)" identifier = (call_expression "SUB84(param_2,0)" identifier (argument_list "(param_2,0)" ( identifier , number_literal )))) ;) (if_statement "if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" if (parenthesized_expression "(param_2 < param_1)" ( (binary_expression "param_2 < param_1" identifier < identifier) )) (compound_statement "{\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }" { (expression_statement "uVar3 = SUB84(param_1,0);" (assignment_expression "uVar3 = SUB84(param_1,0)" identifier = (call_expression "SUB84(param_1,0)" identifier (argument_list "(param_1,0)" ( identifier , number_literal )))) ;) (expression_statement "puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20)" identifier = (cast_expression "(undefined1 *)((ulonglong)param_1 >> 0x20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)param_1 >> 0x20)" ( (binary_expression "(ulonglong)param_1 >> 0x20" (cast_expression "(ulonglong)param_1" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) }) (else_clause "else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" else (compound_statement "{\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" { (expression_statement "puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20)" identifier = (cast_expression "(undefined1 *)((ulonglong)param_2 >> 0x20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)param_2 >> 0x20)" ( (binary_expression "(ulonglong)param_2 >> 0x20" (cast_expression "(ulonglong)param_2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) }))) (if_statement "if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }" if (parenthesized_expression "((double)CONCAT44(puVar1,uVar3) < dVar18)" ( (binary_expression "(double)CONCAT44(puVar1,uVar3) < dVar18" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) < identifier) )) (compound_statement "{\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }" { (expression_statement "puVar1 = &_gp_1;" (assignment_expression "puVar1 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (expression_statement "uVar3 = uStack_3c;" (assignment_expression "uVar3 = uStack_3c" identifier = identifier) ;) })) (expression_statement "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);" (assignment_expression "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" identifier = (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b64) + 0x13f8" (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }" if (parenthesized_expression "(dVar19 <= ABS((double)CONCAT44(puVar1,uVar3)))" ( (binary_expression "dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))" identifier <= (call_expression "ABS((double)CONCAT44(puVar1,uVar3))" identifier (argument_list "((double)CONCAT44(puVar1,uVar3))" ( (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) )))) )) (compound_statement "{\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }" { (expression_statement "dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;" (assignment_expression "dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17" identifier = (binary_expression "(double)CONCAT44(puVar1,uVar3) - dVar17" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) - identifier)) ;) (expression_statement "dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b64) + 0x1440" (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);" (assignment_expression "*unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3)" (pointer_expression "*unaff_s1" * identifier) = (binary_expression "dVar17 / (double)CONCAT44(puVar1,uVar3)" identifier / (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))))) ;) (expression_statement "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;" (assignment_expression "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20" (pointer_expression "*unaff_s2" * identifier) = (binary_expression "(double)CONCAT44(puVar1,uVar3) * dVar20" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) * identifier)) ;) (if_statement "if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }" if (parenthesized_expression "(dVar19 <= ABS(dVar17))" ( (binary_expression "dVar19 <= ABS(dVar17)" identifier <= (call_expression "ABS(dVar17)" identifier (argument_list "(dVar17)" ( identifier )))) )) (compound_statement "{\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }" { (if_statement "if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" if (parenthesized_expression "(dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3)))" ( (binary_expression "dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))" identifier <= (call_expression "ABS(param_1 - (double)CONCAT44(puVar1,uVar3))" identifier (argument_list "(param_1 - (double)CONCAT44(puVar1,uVar3))" ( (binary_expression "param_1 - (double)CONCAT44(puVar1,uVar3)" identifier - (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier ))))) )))) )) (compound_statement "{\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" { (if_statement "if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" if (parenthesized_expression "(ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19)" ( (binary_expression "ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19" (call_expression "ABS(param_2 - (double)CONCAT44(puVar1,uVar3))" identifier (argument_list "(param_2 - (double)CONCAT44(puVar1,uVar3))" ( (binary_expression "param_2 - (double)CONCAT44(puVar1,uVar3)" identifier - (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier ))))) ))) < identifier) )) (compound_statement "{\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }" { (expression_statement "dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);" (assignment_expression "dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" identifier = (binary_expression "(dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (binary_expression "(dVar18 - param_1) / dVar17" (parenthesized_expression "(dVar18 - param_1)" ( (binary_expression "dVar18 - param_1" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e48" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }) (else_clause "else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" else (compound_statement "{\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" { (expression_statement "dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);" (assignment_expression "dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" identifier = (binary_expression "(param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar17" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }))) (expression_statement "dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" identifier = (binary_expression "dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" identifier / (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b64)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) ))))) ;) }) (else_clause "else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" else (compound_statement "{\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" { (expression_statement "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" identifier = (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = (param_2 - dVar18) / dVar17;" (assignment_expression "dVar17 = (param_2 - dVar18) / dVar17" identifier = (binary_expression "(param_2 - dVar18) / dVar17" (parenthesized_expression "(param_2 - dVar18)" ( (binary_expression "param_2 - dVar18" identifier - identifier) )) / identifier)) ;) (expression_statement "*unaff_s0 = dVar17;" (assignment_expression "*unaff_s0 = dVar17" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) (expression_statement "dVar18 = dVar17 / dVar19;" (assignment_expression "dVar18 = dVar17 / dVar19" identifier = (binary_expression "dVar17 / dVar19" identifier / identifier)) ;) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b64)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) ))))) ;) }))) (if_statement "if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }" { (expression_statement "dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(iVar6 + 0x1438)" identifier = (binary_expression "dVar18 + *(double *)(iVar6 + 0x1438)" identifier + (pointer_expression "*(double *)(iVar6 + 0x1438)" * (cast_expression "(double *)(iVar6 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1438)" ( (binary_expression "iVar6 + 0x1438" identifier + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }) (else_clause "else {\n              *unaff_s0 = dVar18;\n            }" else (compound_statement "{\n              *unaff_s0 = dVar18;\n            }" { (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }))) })) })) (return_statement "return dVar18;" return identifier ;) })) (goto_statement "goto LAB_000e6fbc;" goto statement_identifier ;) })) }))) (expression_statement "pcVar12 = *(code **)(puVar11 + 0x2c288c);" (assignment_expression "pcVar12 = *(code **)(puVar11 + 0x2c288c)" identifier = (pointer_expression "*(code **)(puVar11 + 0x2c288c)" * (cast_expression "(code **)(puVar11 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2c288c)" ( (binary_expression "puVar11 + 0x2c288c" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = FUN_000e6ff4;" (assignment_expression "pcVar15 = FUN_000e6ff4" identifier = identifier) ;) (expression_statement "(*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" ( (binary_expression "iVar4 + 0x7824" identifier + number_literal) , (binary_expression "iVar6 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c18f4);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c18f4)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }" if (parenthesized_expression "(pdStack_58 != (double *)0x0)" ( (binary_expression "pdStack_58 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }" { (if_statement "if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" if (parenthesized_expression "((double *)pcVar14 != (double *)0x0)" ( (binary_expression "(double *)pcVar14 != (double *)0x0" (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" { (if_statement "if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }" if (parenthesized_expression "(pdStack_50 != (double *)0x0)" ( (binary_expression "pdStack_50 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" * (cast_expression "(int *)(pcVar12 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18ec)" ( (binary_expression "pcVar12 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = param_1 * dVar18;" (assignment_expression "dVar17 = param_1 * dVar18" identifier = (binary_expression "param_1 * dVar18" identifier * identifier)) ;) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" identifier = (binary_expression "param_2 * dVar18" identifier * identifier)) ;) (expression_statement "dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;" (assignment_expression "dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18" identifier = (binary_expression "(double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18" (cast_expression "(double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar11 + 0x2c9b34,uStack_5c)" identifier (argument_list "(puVar11 + 0x2c9b34,uStack_5c)" ( (binary_expression "puVar11 + 0x2c9b34" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);" (assignment_expression "dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" identifier = (binary_expression "(dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (parenthesized_expression "(dVar17 + param_2 + dVar18)" ( (binary_expression "dVar17 + param_2 + dVar18" (binary_expression "dVar17 + param_2" identifier + identifier) + identifier) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*pdStack_50 = dVar19;" (assignment_expression "*pdStack_50 = dVar19" (pointer_expression "*pdStack_50" * identifier) = identifier) ;) (if_statement "if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }" if (parenthesized_expression "(dVar19 <= 0.0)" ( (binary_expression "dVar19 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }" { (expression_statement "*pdStack_58 = 0.0;" (assignment_expression "*pdStack_58 = 0.0" (pointer_expression "*pdStack_58" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar14 = 0.0;" (assignment_expression "*(double *)pcVar14 = 0.0" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" identifier = identifier) ;) (if_statement "if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }" if (parenthesized_expression "(param_2 < dVar18)" ( (binary_expression "param_2 < dVar18" identifier < identifier) )) (compound_statement "{\n          dVar20 = param_2;\n        }" { (expression_statement "dVar20 = param_2;" (assignment_expression "dVar20 = param_2" identifier = identifier) ;) })) (if_statement "if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }" if (parenthesized_expression "(dVar17 < dVar20)" ( (binary_expression "dVar17 < dVar20" identifier < identifier) )) (compound_statement "{\n          dVar20 = dVar17;\n        }" { (expression_statement "dVar20 = dVar17;" (assignment_expression "dVar20 = dVar17" identifier = identifier) ;) })) (expression_statement "pcVar15 = *(code **)(pcVar12 + 0x2c2014);" (assignment_expression "pcVar15 = *(code **)(pcVar12 + 0x2c2014)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c2014)" * (cast_expression "(code **)(pcVar12 + 0x2c2014)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2014)" ( (binary_expression "pcVar12 + 0x2c2014" identifier + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" * (cast_expression "(int *)(pcVar12 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18ec)" ( (binary_expression "pcVar12 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*(double *)pcVar14 = dVar26 - dVar20 / dVar19;" (assignment_expression "*(double *)pcVar14 = dVar26 - dVar20 / dVar19" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar26 - dVar20 / dVar19" identifier - (binary_expression "dVar20 / dVar19" identifier / identifier))) ;) (expression_statement "dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));" (assignment_expression "dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" identifier = (cast_expression "(double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" ( (binary_expression "(param_2 - dVar18) * dVar23" (parenthesized_expression "(param_2 - dVar18)" ( (binary_expression "param_2 - dVar18" identifier - identifier) )) * identifier) , (binary_expression "((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" (parenthesized_expression "((param_1 * dVar17 - param_2) - dVar18)" ( (binary_expression "(param_1 * dVar17 - param_2) - dVar18" (parenthesized_expression "(param_1 * dVar17 - param_2)" ( (binary_expression "param_1 * dVar17 - param_2" (binary_expression "param_1 * dVar17" identifier * identifier) - identifier) )) - identifier) )) * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" * (cast_expression "(int *)(pcVar12 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18ec)" ( (binary_expression "pcVar12 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ))))) ;) (expression_statement "dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);" (assignment_expression "dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" identifier = (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0))" ( (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n          dVar18 = dVar18 + dVar26;\n        }" { (expression_statement "dVar18 = dVar18 + dVar26;" (assignment_expression "dVar18 = dVar18 + dVar26" identifier = (binary_expression "dVar18 + dVar26" identifier + identifier)) ;) })) (expression_statement "*pdStack_58 = dVar18;" (assignment_expression "*pdStack_58 = dVar18" (pointer_expression "*pdStack_58" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" identifier = (binary_expression "iVar6 + 0x7a98" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2614))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c2614)" * (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" * (cast_expression "(code **)(pcVar12 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2614)" ( (binary_expression "pcVar12 + 0x2c2614" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7864" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" identifier = (binary_expression "iVar6 + 0x7a98" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);" (call_expression "(**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2614))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c2614)" * (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" * (cast_expression "(code **)(pcVar12 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2614)" ( (binary_expression "pcVar12 + 0x2c2614" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7824" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c2614);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c2614)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" * (cast_expression "(code **)(pcVar12 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2614)" ( (binary_expression "pcVar12 + 0x2c2614" identifier + number_literal) ))))) ;) (expression_statement "pcVar16 = ConvertRGBToHSL;" (assignment_expression "pcVar16 = ConvertRGBToHSL" identifier = identifier) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);" (call_expression "(*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a98" identifier + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1748);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1748)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" if (parenthesized_expression "(unaff_s0 == (double *)0x0)" ( (binary_expression "unaff_s0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" identifier = (binary_expression "iVar6 + 0x7a88" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);" (call_expression "(**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2468))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c2468)" * (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" * (cast_expression "(code **)(pcVar14 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2468)" ( (binary_expression "pcVar14 + 0x2c2468" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);" statement_identifier : (expression_statement "pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (assignment_expression "pcVar13 = *(code **)(pcVar14 + 0x2c2468)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" * (cast_expression "(code **)(pcVar14 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2468)" ( (binary_expression "pcVar14 + 0x2c2468" identifier + number_literal) ))))) ;)) (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" identifier = (binary_expression "iVar6 + 0x7a88" identifier + number_literal)) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);" (call_expression "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7884" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" else (compound_statement "{\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" { (expression_statement "pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (assignment_expression "pcVar13 = *(code **)(pcVar14 + 0x2c2468)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" * (cast_expression "(code **)(pcVar14 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2468)" ( (binary_expression "pcVar14 + 0x2c2468" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }" if (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" ( (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }" { (if_statement "if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }" if (parenthesized_expression "(pdVar5 != (double *)0x0)" ( (binary_expression "pdVar5 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" identifier = (binary_expression "param_2 * dVar18" identifier * identifier)) ;) (expression_statement "dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;" (assignment_expression "dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18" identifier = (binary_expression "(double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18" (cast_expression "(double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar12 + 0x2c98bc,uStack_84)" identifier (argument_list "(pcVar12 + 0x2c98bc,uStack_84)" ( (binary_expression "pcVar12 + 0x2c98bc" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "param_1 = param_1 * dVar18;" (assignment_expression "param_1 = param_1 * dVar18" identifier = (binary_expression "param_1 * dVar18" identifier * identifier)) ;) (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) (if_statement "if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }" if (parenthesized_expression "(dVar19 < param_2)" ( (binary_expression "dVar19 < param_2" identifier < identifier) )) (compound_statement "{\n          dVar18 = param_2;\n        }" { (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }" if (parenthesized_expression "(param_1 <= dVar18)" ( (binary_expression "param_1 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar18;\n        }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (if_statement "if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }" if (parenthesized_expression "(dVar19 <= param_2)" ( (binary_expression "dVar19 <= param_2" identifier <= identifier) )) (compound_statement "{\n          dVar18 = dVar19;\n        }" { (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) })) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1740);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1740)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) ))))) ;) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" identifier = identifier) ;) (if_statement "if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }" if (parenthesized_expression "(dVar18 <= param_1)" ( (binary_expression "dVar18 <= param_1" identifier <= identifier) )) (compound_statement "{\n          dVar20 = dVar18;\n        }" { (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = dVar17 - dVar20;" (assignment_expression "dVar18 = dVar17 - dVar20" identifier = (binary_expression "dVar17 - dVar20" identifier - identifier)) ;) (expression_statement "*pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);" (assignment_expression "*pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400)" (pointer_expression "*pdVar5" * identifier) = (binary_expression "(dVar17 + dVar20) * *(double *)(iVar6 + 0x1400)" (parenthesized_expression "(dVar17 + dVar20)" ( (binary_expression "dVar17 + dVar20" identifier + identifier) )) * (pointer_expression "*(double *)(iVar6 + 0x1400)" * (cast_expression "(double *)(iVar6 + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1400)" ( (binary_expression "iVar6 + 0x1400" identifier + number_literal) )))))) ;) (if_statement "if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }" if (parenthesized_expression "(dVar18 <= 0.0)" ( (binary_expression "dVar18 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }" { (expression_statement "*unaff_s0 = 0.0;" (assignment_expression "*unaff_s0 = 0.0" (pointer_expression "*unaff_s0" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar15 = 0.0;" (assignment_expression "*(double *)pcVar15 = 0.0" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return dVar18;" return identifier ;) })) (if_statement "if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" if (parenthesized_expression "(ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar17 - param_1)" identifier (argument_list "(dVar17 - param_1)" ( (binary_expression "dVar17 - param_1" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }" { (expression_statement "dVar17 = (param_2 - dVar19) / dVar18;" (assignment_expression "dVar17 = (param_2 - dVar19) / dVar18" identifier = (binary_expression "(param_2 - dVar19) / dVar18" (parenthesized_expression "(param_2 - dVar19)" ( (binary_expression "param_2 - dVar19" identifier - identifier) )) / identifier)) ;) (if_statement "if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }" if (parenthesized_expression "(param_2 < dVar19)" ( (binary_expression "param_2 < dVar19" identifier < identifier) )) (compound_statement "{\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }" { (expression_statement "dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);" (assignment_expression "dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" identifier = (binary_expression "dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e50" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) })) }) (else_clause "else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" else (if_statement "if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" if (parenthesized_expression "(ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar17 - param_2)" identifier (argument_list "(dVar17 - param_2)" ( (binary_expression "dVar17 - param_2" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }" { (expression_statement "dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;" (assignment_expression "dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" identifier = (binary_expression "(dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (binary_expression "(dVar19 - param_1) / dVar18" (parenthesized_expression "(dVar19 - param_1)" ( (binary_expression "dVar19 - param_1" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" else (compound_statement "{\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" { (expression_statement "dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);" (assignment_expression "dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" identifier = (binary_expression "(param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar18" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x3cc8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) }))))) (expression_statement "dVar20 = *(double *)(iVar6 + 0x1400);" (assignment_expression "dVar20 = *(double *)(iVar6 + 0x1400)" identifier = (pointer_expression "*(double *)(iVar6 + 0x1400)" * (cast_expression "(double *)(iVar6 + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1400)" ( (binary_expression "iVar6 + 0x1400" identifier + number_literal) ))))) ;) (expression_statement "*unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);" (assignment_expression "*unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (pointer_expression "*unaff_s0" * identifier) = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7bc8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar19 = *pdVar5;" (assignment_expression "dVar19 = *pdVar5" identifier = (pointer_expression "*pdVar5" * identifier)) ;) (expression_statement "dVar17 = dVar19 + dVar19;" (assignment_expression "dVar17 = dVar19 + dVar19" identifier = (binary_expression "dVar19 + dVar19" identifier + identifier)) ;) (if_statement "if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }" if (parenthesized_expression "(dVar20 < dVar19)" ( (binary_expression "dVar20 < dVar19" identifier < identifier) )) (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17" identifier = (binary_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17" (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))) - identifier)) ;) })) (expression_statement "*(double *)pcVar15 = dVar18 / dVar17;" (assignment_expression "*(double *)pcVar15 = dVar18 / dVar17" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar18 / dVar17" identifier / identifier)) ;) (return_statement "return dVar18 / dVar17;" return (binary_expression "dVar18 / dVar17" identifier / identifier) ;) })) (goto_statement "goto LAB_000e736c;" goto statement_identifier ;) })) }))) (expression_statement "pcVar12 = FUN_000e73a8;" (assignment_expression "pcVar12 = FUN_000e73a8" identifier = identifier) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);" (call_expression "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7824" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a88" identifier + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c1540);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c1540)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" if (parenthesized_expression "(pdStack_a0 == (double *)0x0)" ( (binary_expression "pdStack_a0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7a78;" (assignment_expression "iVar6 = iVar6 + 0x7a78" identifier = (binary_expression "iVar6 + 0x7a78" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);" (call_expression "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2260))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2260)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" * (cast_expression "(code **)(pcVar13 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2260)" ( (binary_expression "pcVar13 + 0x2c2260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x77d8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" statement_identifier : (expression_statement "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" (call_expression "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2260))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2260)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" * (cast_expression "(code **)(pcVar13 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2260)" ( (binary_expression "pcVar13 + 0x2c2260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x78a4" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a78" identifier + number_literal) ))) ;)) }) (else_clause "else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" else (if_statement "if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" if (parenthesized_expression "((double *)pcVar16 != (double *)0x0)" ( (binary_expression "(double *)pcVar16 != (double *)0x0" (cast_expression "(double *)pcVar16" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" { (if_statement "if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }" if (parenthesized_expression "(pdStack_98 != (double *)0x0)" ( (binary_expression "pdStack_98 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x1440" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" * (cast_expression "(int *)(pcVar13 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1538)" ( (binary_expression "pcVar13 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" identifier = (binary_expression "param_2 * dVar18" identifier * identifier)) ;) (expression_statement "dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;" (assignment_expression "dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18" identifier = (binary_expression "(double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18" (cast_expression "(double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar14 + 0x2c9710,uStack_a4)" identifier (argument_list "(pcVar14 + 0x2c9710,uStack_a4)" ( (binary_expression "pcVar14 + 0x2c9710" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "param_1 = param_1 * dVar18;" (assignment_expression "param_1 = param_1 * dVar18" identifier = (binary_expression "param_1 * dVar18" identifier * identifier)) ;) (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) (if_statement "if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }" if (parenthesized_expression "(dVar19 < param_2)" ( (binary_expression "dVar19 < param_2" identifier < identifier) )) (compound_statement "{\n        dVar18 = param_2;\n      }" { (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }" if (parenthesized_expression "(param_1 <= dVar18)" ( (binary_expression "param_1 <= dVar18" identifier <= identifier) )) (compound_statement "{\n        dVar17 = dVar18;\n      }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (if_statement "if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }" if (parenthesized_expression "(dVar19 <= param_2)" ( (binary_expression "dVar19 <= param_2" identifier <= identifier) )) (compound_statement "{\n        dVar18 = dVar19;\n      }" { (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) })) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" identifier = identifier) ;) (if_statement "if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }" if (parenthesized_expression "(dVar18 <= param_1)" ( (binary_expression "dVar18 <= param_1" identifier <= identifier) )) (compound_statement "{\n        dVar20 = dVar18;\n      }" { (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar20 = dVar17 - dVar20;" (assignment_expression "dVar20 = dVar17 - dVar20" identifier = (binary_expression "dVar17 - dVar20" identifier - identifier)) ;) (expression_statement "*pdStack_98 = dVar17;" (assignment_expression "*pdStack_98 = dVar17" (pointer_expression "*pdStack_98" * identifier) = identifier) ;) (if_statement "if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }" if (parenthesized_expression "(dVar20 <= 0.0)" ( (binary_expression "dVar20 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }" { (expression_statement "*pdStack_a0 = 0.0;" (assignment_expression "*pdStack_a0 = 0.0" (pointer_expression "*pdStack_a0" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar16 = 0.0;" (assignment_expression "*(double *)pcVar16 = 0.0" (pointer_expression "*(double *)pcVar16" * (cast_expression "(double *)pcVar16" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return dVar19;" return identifier ;) })) (if_statement "if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" if (parenthesized_expression "(ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar17 - param_1)" identifier (argument_list "(dVar17 - param_1)" ( (binary_expression "dVar17 - param_1" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" * (cast_expression "(int *)(pcVar13 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1538)" ( (binary_expression "pcVar13 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }" { (expression_statement "dVar18 = (param_2 - dVar19) / dVar20;" (assignment_expression "dVar18 = (param_2 - dVar19) / dVar20" identifier = (binary_expression "(param_2 - dVar19) / dVar20" (parenthesized_expression "(param_2 - dVar19)" ( (binary_expression "param_2 - dVar19" identifier - identifier) )) / identifier)) ;) (if_statement "if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }" if (parenthesized_expression "(param_2 < dVar19)" ( (binary_expression "param_2 < dVar19" identifier < identifier) )) (compound_statement "{\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }" { (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x2e50" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar18 = dVar18 + dVar19;" (assignment_expression "dVar18 = dVar18 + dVar19" identifier = (binary_expression "dVar18 + dVar19" identifier + identifier)) ;) })) }) (else_clause "else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" else (if_statement "if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" if (parenthesized_expression "(ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar17 - param_2)" identifier (argument_list "(dVar17 - param_2)" ( (binary_expression "dVar17 - param_2" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" * (cast_expression "(int *)(pcVar13 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1538)" ( (binary_expression "pcVar13 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }" { (expression_statement "dVar19 = (dVar19 - param_1) / dVar20;" (assignment_expression "dVar19 = (dVar19 - param_1) / dVar20" identifier = (binary_expression "(dVar19 - param_1) / dVar20" (parenthesized_expression "(dVar19 - param_1)" ( (binary_expression "dVar19 - param_1" identifier - identifier) )) / identifier)) ;) (expression_statement "dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);" (assignment_expression "dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" identifier = (binary_expression "dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x2e48" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" else (compound_statement "{\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" { (expression_statement "dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);" (assignment_expression "dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" identifier = (binary_expression "(param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar20" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x3cc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) }))))) (expression_statement "*pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);" (assignment_expression "*pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (pointer_expression "*pdStack_a0" * identifier) = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7bc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*(double *)pcVar16 = dVar20 / dVar17;" (assignment_expression "*(double *)pcVar16 = dVar20 / dVar17" (pointer_expression "*(double *)pcVar16" * (cast_expression "(double *)pcVar16" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar20 / dVar17" identifier / identifier)) ;) (return_statement "return dVar19;" return identifier ;) })) (goto_statement "goto LAB_000e7548;" goto statement_identifier ;) })))) (expression_statement "pcVar14 = *(code **)(pcVar13 + 0x2c2260);" (assignment_expression "pcVar14 = *(code **)(pcVar13 + 0x2c2260)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" * (cast_expression "(code **)(pcVar13 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2260)" ( (binary_expression "pcVar13 + 0x2c2260" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = FUN_000e7584;" (assignment_expression "pcVar15 = FUN_000e7584" identifier = identifier) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);" (call_expression "(*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7824" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);" (assignment_expression "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" identifier = (cast_expression "(double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" identifier (argument_list "(pcVar13 + 0x2c9508,uStack_c4)" ( (binary_expression "pcVar13 + 0x2c9508" identifier + number_literal) , identifier ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1364);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1364)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }" if (parenthesized_expression "(pdStack_c0 != (double *)0x0)" ( (binary_expression "pdStack_c0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }" { (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c1364);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c1364)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }" if (parenthesized_expression "((double *)pcVar12 != (double *)0x0)" ( (binary_expression "(double *)pcVar12 != (double *)0x0" (cast_expression "(double *)pcVar12" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }" { (if_statement "if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }" if (parenthesized_expression "(pdStack_b8 != (double *)0x0)" ( (binary_expression "pdStack_b8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }" { (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) (if_statement "if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }" if (parenthesized_expression "(param_2 < dVar18)" ( (binary_expression "param_2 < dVar18" identifier < identifier) )) (compound_statement "{\n          dVar19 = param_2;\n        }" { (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }" if (parenthesized_expression "(dVar19 <= param_1)" ( (binary_expression "dVar19 <= param_1" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar19;\n        }" { (expression_statement "dVar17 = dVar19;" (assignment_expression "dVar17 = dVar19" identifier = identifier) ;) })) (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" identifier = identifier) ;) (if_statement "if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }" if (parenthesized_expression "(param_2 <= dVar18)" ( (binary_expression "param_2 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar19 = dVar18;\n        }" { (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }" if (parenthesized_expression "(param_1 <= dVar19)" ( (binary_expression "param_1 <= dVar19" identifier <= identifier) )) (compound_statement "{\n          dVar20 = dVar19;\n        }" { (expression_statement "dVar20 = dVar19;" (assignment_expression "dVar20 = dVar19" identifier = identifier) ;) })) (expression_statement "dVar19 = dVar20 - dVar17;" (assignment_expression "dVar19 = dVar20 - dVar17" identifier = (binary_expression "dVar20 - dVar17" identifier - identifier)) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1438" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_b8 = dVar23 - dVar20 * dVar26;" (assignment_expression "*pdStack_b8 = dVar23 - dVar20 * dVar26" (pointer_expression "*pdStack_b8" * identifier) = (binary_expression "dVar23 - dVar20 * dVar26" identifier - (binary_expression "dVar20 * dVar26" identifier * identifier))) ;) (expression_statement "*(double *)pcVar12 = dVar17 * dVar26;" (assignment_expression "*(double *)pcVar12 = dVar17 * dVar26" (pointer_expression "*(double *)pcVar12" * (cast_expression "(double *)pcVar12" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar17 * dVar26" identifier * identifier)) ;) (if_statement "if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }" if (parenthesized_expression "(ABS(dVar19) < dVar21)" ( (binary_expression "ABS(dVar19) < dVar21" (call_expression "ABS(dVar19)" identifier (argument_list "(dVar19)" ( identifier ))) < identifier) )) (compound_statement "{\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1a78" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_c0 = dVar18;" (assignment_expression "*pdStack_c0 = dVar18" (pointer_expression "*pdStack_c0" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (if_statement "if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" if (parenthesized_expression "(ABS(param_1 - dVar17) < dVar21)" ( (binary_expression "ABS(param_1 - dVar17) < dVar21" (call_expression "ABS(param_1 - dVar17)" identifier (argument_list "(param_1 - dVar17)" ( (binary_expression "param_1 - dVar17" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }" { (expression_statement "param_1 = param_2 - dVar18;" (assignment_expression "param_1 = param_2 - dVar18" identifier = (binary_expression "param_2 - dVar18" identifier - identifier)) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3cd8" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) }) (else_clause "else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" else (if_statement "if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" if (parenthesized_expression "(ABS(param_2 - dVar17) < dVar21)" ( (binary_expression "ABS(param_2 - dVar17) < dVar21" (call_expression "ABS(param_2 - dVar17)" identifier (argument_list "(param_2 - dVar17)" ( (binary_expression "param_2 - dVar17" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }" { (expression_statement "param_1 = dVar18 - param_1;" (assignment_expression "param_1 = dVar18 - param_1" identifier = (binary_expression "dVar18 - param_1" identifier - identifier)) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) }) (else_clause "else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" else (compound_statement "{\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" { (expression_statement "param_1 = param_1 - param_2;" (assignment_expression "param_1 = param_1 - param_2" identifier = (binary_expression "param_1 - param_2" identifier - identifier)) ;) (if_statement "if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }" if (parenthesized_expression "(ABS(param_2 - dVar17) < dVar21)" ( (binary_expression "ABS(param_2 - dVar17) < dVar21" (call_expression "ABS(param_2 - dVar17)" identifier (argument_list "(param_2 - dVar17)" ( (binary_expression "param_2 - dVar17" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }" { (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) })) }))))) (expression_statement "*pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);" (assignment_expression "*pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (pointer_expression "*pdStack_c0" * identifier) = (binary_expression "(dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (parenthesized_expression "(dVar23 - param_1 / dVar19)" ( (binary_expression "dVar23 - param_1 / dVar19" identifier - (binary_expression "param_1 / dVar19" identifier / identifier)) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x2e50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) )))))) ;) (return_statement "return dVar19;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0" identifier = (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x78e0" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2084))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c2084)" * (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" * (cast_expression "(code **)(pcVar14 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2084)" ( (binary_expression "pcVar14 + 0x2c2084" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2084))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c2084)" * (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" * (cast_expression "(code **)(pcVar14 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2084)" ( (binary_expression "pcVar14 + 0x2c2084" identifier + number_literal) ))))) )) (argument_list "(iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" ( (binary_expression "iVar4 + 0x78c0" identifier + number_literal) , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c2084);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c2084)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" * (cast_expression "(code **)(pcVar14 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2084)" ( (binary_expression "pcVar14 + 0x2c2084" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar6 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))()" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c20c0))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" * (cast_expression "(code **)(pcVar12 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c20c0)" ( (binary_expression "pcVar12 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar19 * dVar23;" (assignment_expression "dVar19 = dVar19 * dVar23" identifier = (binary_expression "dVar19 * dVar23" identifier * identifier)) ;) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2)" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))(param_2)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c20c0))(param_2)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" * (cast_expression "(code **)(pcVar12 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c20c0)" ( (binary_expression "pcVar12 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "(param_2)" ( identifier ))))) ;) (expression_statement "dVar17 = dVar17 * dVar23;" (assignment_expression "dVar17 = dVar17 * dVar23" identifier = (binary_expression "dVar17 * dVar23" identifier * identifier)) ;) (expression_statement "dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));" (assignment_expression "dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" * (cast_expression "(code **)(pcVar12 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c20c0)" ( (binary_expression "pcVar12 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" ( (call_expression "CONCAT44(pcVar14 + 0x2c932c,uStack_e4)" identifier (argument_list "(pcVar14 + 0x2c932c,uStack_e4)" ( (binary_expression "pcVar14 + 0x2c932c" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar20 = dVar20 * dVar23;" (assignment_expression "dVar20 = dVar20 * dVar23" identifier = (binary_expression "dVar20 * dVar23" identifier * identifier)) ;) (expression_statement "dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);" (assignment_expression "dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d38" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d48" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d40" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);" (assignment_expression "dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d20" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d30" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d28" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);" (assignment_expression "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d08" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d18" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d10" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" if (parenthesized_expression "(pdStack_e0 != (double *)0x0)" ( (binary_expression "pdStack_e0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" { (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }" if (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" ( (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }" { (if_statement "if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }" if (parenthesized_expression "(pdStack_d8 != (double *)0x0)" ( (binary_expression "pdStack_d8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }" { (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);" (assignment_expression "dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" identifier = (binary_expression "dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" if (parenthesized_expression "(dVar18 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar18 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }" { (expression_statement "iVar4 = *(int *)(pcVar12 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar12 + 0x2c1174)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar10 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (parenthesized_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8))" ( (binary_expression "dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar26)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar26" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_000e79e4;" goto statement_identifier ;)) (labeled_statement "LAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" statement_identifier : (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "dVar23 = dVar19 / dVar20;" (assignment_expression "dVar23 = dVar19 / dVar20" identifier = (binary_expression "dVar19 / dVar20" identifier / identifier)) ;) (expression_statement "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "(dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "(dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }" if (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }" { (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);" statement_identifier : (expression_statement "dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     )" ( (binary_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20" (parenthesized_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8))" ( (binary_expression "dVar19 * *(double *)(iVar2 + -0x3ce8)" identifier * (pointer_expression "*(double *)(iVar2 + -0x3ce8)" * (cast_expression "(double *)(iVar2 + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3ce8)" ( (binary_expression "iVar2 + -0x3ce8" identifier + number_literal) ))))) )) / identifier) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;)) (goto_statement "goto LAB_000e7920;" goto statement_identifier ;) })) }) (else_clause "else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" else (compound_statement "{\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" { (expression_statement "iVar4 = *(int *)(pcVar12 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar12 + 0x2c1174)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar10 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1fb0)" ( (binary_expression "pcVar12 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (if_statement "if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;" if (parenthesized_expression "(dVar26 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar26 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000e78cc;" goto statement_identifier ;)) (labeled_statement "LAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" statement_identifier : (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1fb0)" ( (binary_expression "pcVar12 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))) ))))) ;)) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = dVar19 / dVar20;" (assignment_expression "dVar23 = dVar19 / dVar20" identifier = (binary_expression "dVar19 / dVar20" identifier / identifier)) ;) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;" if (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000e7904;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) }))) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1fb0)" ( (binary_expression "pcVar12 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" * (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3cf8)" ( (binary_expression "iVar2 + -0x3cf8" identifier + number_literal) )))) ))))) ;) (labeled_statement "LAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);" statement_identifier : (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x5ae8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39f8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;" (assignment_expression "dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20" identifier = (binary_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20" (binary_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23" (parenthesized_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0))" ( (binary_expression "(dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" (parenthesized_expression "(dVar17 - dVar19)" ( (binary_expression "dVar17 - dVar19" identifier - identifier) )) * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39f0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) )) / identifier) + identifier)) ;) (expression_statement "*pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);" (assignment_expression "*pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (pointer_expression "*pdStack_e0" * identifier) = (binary_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (parenthesized_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0)" identifier * (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) ))))) - (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1a70" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;" (assignment_expression "*(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((dVar18 - dVar17) * dVar26) / dVar23 + dVar20" (binary_expression "((dVar18 - dVar17) * dVar26) / dVar23" (parenthesized_expression "((dVar18 - dVar17) * dVar26)" ( (binary_expression "(dVar18 - dVar17) * dVar26" (parenthesized_expression "(dVar18 - dVar17)" ( (binary_expression "dVar18 - dVar17" identifier - identifier) )) * identifier) )) / identifier) + identifier)) ;) (expression_statement "*pdStack_d8 = dVar19;" (assignment_expression "*pdStack_d8 = dVar19" (pointer_expression "*pdStack_d8" * identifier) = identifier) ;) (return_statement "return dVar19;" return identifier ;) })) (expression_statement "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();" (call_expression "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))" ( (pointer_expression "*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" * (cast_expression "(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c11d4) + 0x39c0" (pointer_expression "*(int *)(pcVar12 + 0x2c11d4)" * (cast_expression "(int *)(pcVar12 + 0x2c11d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c11d4)" ( (binary_expression "pcVar12 + 0x2c11d4" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) })) (expression_statement "(**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);" (call_expression "(**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1e9c))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1e9c)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1e9c)" * (cast_expression "(code **)(pcVar12 + 0x2c1e9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1e9c)" ( (binary_expression "pcVar12 + 0x2c1e9c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 31000" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a48" identifier + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c1e9c)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c1e9c)" * (cast_expression "(code **)(pcVar12 + 0x2c1e9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1e9c)" ( (binary_expression "pcVar12 + 0x2c1e9c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);" (call_expression "(*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 0x7900" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 0x7a48" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);" (assignment_expression "pdStack_140 = (double *)((ulonglong)param_2 >> 0x20)" identifier = (cast_expression "(double *)((ulonglong)param_2 >> 0x20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)param_2 >> 0x20)" ( (binary_expression "(ulonglong)param_2 >> 0x20" (cast_expression "(ulonglong)param_2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pdStack_13c = SUB84(param_2,0);" (assignment_expression "pdStack_13c = SUB84(param_2,0)" identifier = (call_expression "SUB84(param_2,0)" identifier (argument_list "(param_2,0)" ( identifier , number_literal )))) ;) (if_statement "if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;" if (parenthesized_expression "(pdStack_140 == (double *)0x0)" ( (binary_expression "pdStack_140 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e7e18;" goto statement_identifier ;)) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" if (parenthesized_expression "(pdStack_13c != (double *)0x0)" ( (binary_expression "pdStack_13c != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" { (if_statement "if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }" if (parenthesized_expression "(pdStack_138 != (double *)0x0)" ( (binary_expression "pdStack_138 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }" { (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))()" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1da4))()" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" * (cast_expression "(code **)(pcVar14 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1da4)" ( (binary_expression "pcVar14 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar19 * dVar20;" (assignment_expression "dVar19 = dVar19 * dVar20" identifier = (binary_expression "dVar19 * dVar20" identifier * identifier)) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);" (assignment_expression "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" * (cast_expression "(code **)(pcVar14 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1da4)" ( (binary_expression "pcVar14 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "(dVar18)" ( identifier ))))) ;) (expression_statement "dVar18 = dVar18 * dVar20;" (assignment_expression "dVar18 = dVar18 * dVar20" identifier = (binary_expression "dVar18 * dVar20" identifier * identifier)) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" * (cast_expression "(code **)(pcVar14 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1da4)" ( (binary_expression "pcVar14 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" ( (call_expression "CONCAT44(pcVar12 + 0x2c9144,uStack_144)" identifier (argument_list "(pcVar12 + 0x2c9144,uStack_144)" ( (binary_expression "pcVar12 + 0x2c9144" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar17 = dVar17 * dVar20;" (assignment_expression "dVar17 = dVar17 * dVar20" identifier = (binary_expression "dVar17 * dVar20" identifier * identifier)) ;) (expression_statement "dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);" (assignment_expression "dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d38" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d48" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d40" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);" (assignment_expression "dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" identifier = (binary_expression "dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);" (assignment_expression "dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d20" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d30" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d28" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);" (assignment_expression "dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d08" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d18" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d10" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" if (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }" { (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c0e58)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar10 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (parenthesized_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8))" ( (binary_expression "dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" else (compound_statement "{\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" { (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c0e58)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar10 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" * (cast_expression "(code **)(pcVar14 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c94)" ( (binary_expression "pcVar14 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))) ))))) ;) }))) (if_statement "if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" if (parenthesized_expression "(dVar26 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar26 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }" { (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = dVar18 / dVar23;" (assignment_expression "dVar20 = dVar18 / dVar23" identifier = (binary_expression "dVar18 / dVar23" identifier / identifier)) ;) (expression_statement "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "(dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "(dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar20)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar20" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_000e7da0;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" else (compound_statement "{\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" { (expression_statement "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" * (cast_expression "(code **)(pcVar14 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c94)" ( (binary_expression "pcVar14 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = dVar18 / dVar23;" (assignment_expression "dVar20 = dVar18 / dVar23" identifier = (binary_expression "dVar18 / dVar23" identifier / identifier)) ;) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar20)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar20" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" { (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));" statement_identifier : (expression_statement "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" * (cast_expression "(code **)(pcVar14 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c94)" ( (binary_expression "pcVar14 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" * (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3cf8)" ( (binary_expression "iVar2 + -0x3cf8" identifier + number_literal) )))) ))))) ;)) (goto_statement "goto LAB_000e7c44;" goto statement_identifier ;) })) }))) (expression_statement "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23" (parenthesized_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8))" ( (binary_expression "dVar18 * *(double *)(iVar2 + -0x3ce8)" identifier * (pointer_expression "*(double *)(iVar2 + -0x3ce8)" * (cast_expression "(double *)(iVar2 + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3ce8)" ( (binary_expression "iVar2 + -0x3ce8" identifier + number_literal) ))))) )) / identifier) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (labeled_statement "LAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);" statement_identifier : (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1c90);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1c90)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c1c90)" * (cast_expression "(code **)(pcVar14 + 0x2c1c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c90)" ( (binary_expression "pcVar14 + 0x2c1c90" identifier + number_literal) ))))) ;)) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1400" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39f0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39f8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);" (assignment_expression "*pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (pointer_expression "*pdStack_140" * identifier) = (binary_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (parenthesized_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0)" identifier * (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) ))))) - (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1a70" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;" (assignment_expression "dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26" identifier = (binary_expression "((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26" (parenthesized_expression "((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21)" ( (binary_expression "(((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21" (parenthesized_expression "(((dVar19 - dVar17) * dVar23) / dVar26 + dVar21)" ( (binary_expression "((dVar19 - dVar17) * dVar23) / dVar26 + dVar21" (binary_expression "((dVar19 - dVar17) * dVar23) / dVar26" (parenthesized_expression "((dVar19 - dVar17) * dVar23)" ( (binary_expression "(dVar19 - dVar17) * dVar23" (parenthesized_expression "(dVar19 - dVar17)" ( (binary_expression "dVar19 - dVar17" identifier - identifier) )) * identifier) )) / identifier) + identifier) )) - identifier) )) * identifier)) ;) (expression_statement "dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;" (assignment_expression "dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26" identifier = (binary_expression "((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26" (parenthesized_expression "((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21)" ( (binary_expression "(((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21" (parenthesized_expression "(((dVar17 - dVar18) * dVar20) / dVar26 + dVar21)" ( (binary_expression "((dVar17 - dVar18) * dVar20) / dVar26 + dVar21" (binary_expression "((dVar17 - dVar18) * dVar20) / dVar26" (parenthesized_expression "((dVar17 - dVar18) * dVar20)" ( (binary_expression "(dVar17 - dVar18) * dVar20" (parenthesized_expression "(dVar17 - dVar18)" ( (binary_expression "dVar17 - dVar18" identifier - identifier) )) * identifier) )) / identifier) + identifier) )) - identifier) )) * identifier)) ;) (expression_statement "dVar18 = (double)(*pcVar12)(dVar23,dVar19);" (assignment_expression "dVar18 = (double)(*pcVar12)(dVar23,dVar19)" identifier = (cast_expression "(double)(*pcVar12)(dVar23,dVar19)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar12)(dVar23,dVar19)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(dVar23,dVar19)" ( identifier , identifier ))))) ;) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1580);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1580)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c1580)" * (cast_expression "(code **)(pcVar14 + 0x2c1580)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1580)" ( (binary_expression "pcVar14 + 0x2c1580" identifier + number_literal) ))))) ;) (expression_statement "*pdStack_13c = dVar18 / dVar26 + dVar21;" (assignment_expression "*pdStack_13c = dVar18 / dVar26 + dVar21" (pointer_expression "*pdStack_13c" * identifier) = (binary_expression "dVar18 / dVar26 + dVar21" (binary_expression "dVar18 / dVar26" identifier / identifier) + identifier)) ;) (expression_statement "dVar18 = (double)(*pcVar12)(dVar19,dVar23);" (assignment_expression "dVar18 = (double)(*pcVar12)(dVar19,dVar23)" identifier = (cast_expression "(double)(*pcVar12)(dVar19,dVar23)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar12)(dVar19,dVar23)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(dVar19,dVar23)" ( identifier , identifier ))))) ;) (expression_statement "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" identifier = (binary_expression "((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (parenthesized_expression "((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8))" ( (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0))" ( (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }" { (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" identifier = (binary_expression "dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1438" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) )))))) ;) })) (expression_statement "*pdStack_138 = dVar18;" (assignment_expression "*pdStack_138 = dVar18" (pointer_expression "*pdStack_138" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7a34;" (assignment_expression "iVar6 = iVar6 + 0x7a34" identifier = (binary_expression "iVar6 + 0x7a34" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);" (call_expression "(**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1b80))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1b80)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" * (cast_expression "(code **)(pcVar14 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1b80)" ( (binary_expression "pcVar14 + 0x2c1b80" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "(**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);" (call_expression "(**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1b80))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1b80)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" * (cast_expression "(code **)(pcVar14 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1b80)" ( (binary_expression "pcVar14 + 0x2c1b80" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x77f0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a34" identifier + number_literal) ))) ;) (labeled_statement "LAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);" statement_identifier : (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1b80);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1b80)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" * (cast_expression "(code **)(pcVar14 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1b80)" ( (binary_expression "pcVar14 + 0x2c1b80" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x780c" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7a34" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" if (parenthesized_expression "(pdStack_1b0 != (double *)0x0)" ( (binary_expression "pdStack_1b0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" { (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c0aac);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c0aac)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" if (parenthesized_expression "(pdStack_1ac != (double *)0x0)" ( (binary_expression "pdStack_1ac != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" { (if_statement "if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }" if (parenthesized_expression "(pdStack_1a8 != (double *)0x0)" ( (binary_expression "pdStack_1a8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }" { (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))()" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c19f0))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" * (cast_expression "(code **)(pcVar12 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c19f0)" ( (binary_expression "pcVar12 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar19 * dVar20;" (assignment_expression "dVar19 = dVar19 * dVar20" identifier = (binary_expression "dVar19 * dVar20" identifier * identifier)) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);" (assignment_expression "dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" * (cast_expression "(code **)(pcVar12 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c19f0)" ( (binary_expression "pcVar12 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "(dVar18)" ( identifier ))))) ;) (expression_statement "dVar18 = dVar18 * dVar20;" (assignment_expression "dVar18 = dVar18 * dVar20" identifier = (binary_expression "dVar18 * dVar20" identifier * identifier)) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" * (cast_expression "(code **)(pcVar12 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c19f0)" ( (binary_expression "pcVar12 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" ( (call_expression "CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4)" identifier (argument_list "(pcVar14 + 0x2c8e28,uStack_1b4)" ( (binary_expression "pcVar14 + 0x2c8e28" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar17 = dVar17 * dVar20;" (assignment_expression "dVar17 = dVar17 * dVar20" identifier = (binary_expression "dVar17 * dVar20" identifier * identifier)) ;) (expression_statement "dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);" (assignment_expression "dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d20" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d30" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d28" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);" (assignment_expression "dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d38" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d48" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d40" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);" (assignment_expression "dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d08" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d18" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d10" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" if (parenthesized_expression "(dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00))" ( (binary_expression "dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" identifier <= (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d00" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }" { (expression_statement "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);" (assignment_expression "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" else (compound_statement "{\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" { (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c18e0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c18e0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c18e0)" * (cast_expression "(code **)(pcVar12 + 0x2c18e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c18e0)" ( (binary_expression "pcVar12 + 0x2c18e0" identifier + number_literal) ))))) )) (argument_list "(dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);" (assignment_expression "dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" identifier = (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) - (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) }))) (expression_statement "dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;" (assignment_expression "dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23" identifier = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + identifier)) ;) (if_statement "if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" if (parenthesized_expression "(0.0 <= dVar18)" ( (binary_expression "0.0 <= dVar18" number_literal <= identifier) )) (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dStack_208 = dVar18;" (assignment_expression "dStack_208 = dVar18" identifier = identifier) ;) }) (else_clause "else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" else (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dStack_208 = -dVar18;" (assignment_expression "dStack_208 = -dVar18" identifier = (unary_expression "-dVar18" - identifier)) ;) }))) (if_statement "if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" if (parenthesized_expression "(dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8))" ( (binary_expression "dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" identifier < (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }" { (expression_statement "dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);" (assignment_expression "dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" identifier = (binary_expression "dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" else (compound_statement "{\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18" identifier = (binary_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18" (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))) / identifier)) ;) }))) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c18dc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c18dc)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c18dc)" * (cast_expression "(code **)(pcVar12 + 0x2c18dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c18dc)" ( (binary_expression "pcVar12 + 0x2c18dc" identifier + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3c98" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3c90" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);" (assignment_expression "dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);" (assignment_expression "dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);" (assignment_expression "dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);" (assignment_expression "dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" identifier = (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);" (assignment_expression "*pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (pointer_expression "*pdStack_1b0" * identifier) = (binary_expression "dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;" (assignment_expression "dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21" identifier = (binary_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21" (binary_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22" (parenthesized_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22)" ( (binary_expression "((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22" (parenthesized_expression "((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21)" ( (binary_expression "(dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21" (binary_expression "(dVar18 * dVar29 * dVar23 - dVar25) * dVar24" (parenthesized_expression "(dVar18 * dVar29 * dVar23 - dVar25)" ( (binary_expression "dVar18 * dVar29 * dVar23 - dVar25" (binary_expression "dVar18 * dVar29 * dVar23" (binary_expression "dVar18 * dVar29" identifier * identifier) * identifier) - identifier) )) * identifier) + identifier) )) / identifier) )) * identifier) - identifier)) ;) (expression_statement "dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;" (assignment_expression "dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17" identifier = (binary_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17" (binary_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26" (parenthesized_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26)" ( (binary_expression "((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26" (parenthesized_expression "((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17)" ( (binary_expression "(dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17" (binary_expression "(dVar18 * dVar27 * dVar20 - dVar28) * dVar24" (parenthesized_expression "(dVar18 * dVar27 * dVar20 - dVar28)" ( (binary_expression "dVar18 * dVar27 * dVar20 - dVar28" (binary_expression "dVar18 * dVar27 * dVar20" (binary_expression "dVar18 * dVar27" identifier * identifier) * identifier) - identifier) )) * identifier) + identifier) )) / identifier) )) * identifier) - identifier)) ;) (expression_statement "dVar18 = (double)(*pcVar14)(dVar21,dVar17);" (assignment_expression "dVar18 = (double)(*pcVar14)(dVar21,dVar17)" identifier = (cast_expression "(double)(*pcVar14)(dVar21,dVar17)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar14)(dVar21,dVar17)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(dVar21,dVar17)" ( identifier , identifier ))))) ;) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c11cc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c11cc)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c11cc)" * (cast_expression "(code **)(pcVar12 + 0x2c11cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c11cc)" ( (binary_expression "pcVar12 + 0x2c11cc" identifier + number_literal) ))))) ;) (expression_statement "*pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);" (assignment_expression "*pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (pointer_expression "*pdStack_1ac" * identifier) = (binary_expression "dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (binary_expression "dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar18 = (double)(*pcVar14)(dVar17,dVar21);" (assignment_expression "dVar18 = (double)(*pcVar14)(dVar17,dVar21)" identifier = (cast_expression "(double)(*pcVar14)(dVar17,dVar21)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar14)(dVar17,dVar21)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(dVar17,dVar21)" ( identifier , identifier ))))) ;) (expression_statement "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" identifier = (binary_expression "((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (parenthesized_expression "((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8))" ( (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0))" ( (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }" { (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" identifier = (binary_expression "dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) })) (expression_statement "*pdStack_1a8 = dVar18;" (assignment_expression "*pdStack_1a8 = dVar18" (pointer_expression "*pdStack_1a8" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7a20;" (assignment_expression "iVar6 = iVar6 + 0x7a20" identifier = (binary_expression "iVar6 + 0x7a20" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c17cc))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c17cc)" * (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" * (cast_expression "(code **)(pcVar12 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c17cc)" ( (binary_expression "pcVar12 + 0x2c17cc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "(**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);" (call_expression "(**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c17cc))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c17cc)" * (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" * (cast_expression "(code **)(pcVar12 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c17cc)" ( (binary_expression "pcVar12 + 0x2c17cc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x77f0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a20" identifier + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c17cc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c17cc)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" * (cast_expression "(code **)(pcVar12 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c17cc)" ( (binary_expression "pcVar12 + 0x2c17cc" identifier + number_literal) ))))) ;) (expression_statement "pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);" (assignment_expression "pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" identifier = (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x780c" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);" (call_expression "(*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20)" ( identifier , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7a20" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }" if (parenthesized_expression "(pdVar5 != (double *)0x0)" ( (binary_expression "pdVar5 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }" { (expression_statement "dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];" (assignment_expression "dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" identifier = (binary_expression "*pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" (binary_expression "*pdVar5 * pdVar5[3]" (pointer_expression "*pdVar5" * identifier) * (subscript_expression "pdVar5[3]" identifier [ number_literal ])) - (binary_expression "pdVar5[1] * pdVar5[2]" (subscript_expression "pdVar5[1]" identifier [ number_literal ]) * (subscript_expression "pdVar5[2]" identifier [ number_literal ])))) ;) (expression_statement "dVar19 = SQRT(ABS(dVar18));" (assignment_expression "dVar19 = SQRT(ABS(dVar18))" identifier = (call_expression "SQRT(ABS(dVar18))" identifier (argument_list "(ABS(dVar18))" ( (call_expression "ABS(dVar18)" identifier (argument_list "(dVar18)" ( identifier ))) )))) ;) (if_statement "if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }" if (parenthesized_expression "(ABS(dVar18) < 0.0)" ( (binary_expression "ABS(dVar18) < 0.0" (call_expression "ABS(dVar18)" identifier (argument_list "(dVar18)" ( identifier ))) < number_literal) )) (compound_statement "{\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }" { (expression_statement "(**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));" (call_expression "(**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c12c4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c12c4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c12c4)" * (cast_expression "(code **)(pcVar14 + 0x2c12c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c12c4)" ( (binary_expression "pcVar14 + 0x2c12c4" identifier + number_literal) ))))) )) (argument_list "(ABS(dVar18))" ( (call_expression "ABS(dVar18)" identifier (argument_list "(dVar18)" ( identifier ))) ))) ;) })) (return_statement "return dVar19;" return identifier ;) })) (expression_statement "uVar8 = 0x5b5;" (assignment_expression "uVar8 = 0x5b5" identifier = number_literal) ;) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c144c);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c144c)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c144c)" * (cast_expression "(code **)(pcVar14 + 0x2c144c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c144c)" ( (binary_expression "pcVar14 + 0x2c144c" identifier + number_literal) ))))) ;) (expression_statement "fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);" (assignment_expression "fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" identifier = (cast_expression "(float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" ( (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" * (cast_expression "(int *)(pcVar14 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c072c)" ( (binary_expression "pcVar14 + 0x2c072c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            )" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            )" ( (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7930" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" * (cast_expression "(int *)(pcVar14 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c072c)" ( (binary_expression "pcVar14 + 0x2c072c" identifier + number_literal) )))) + number_literal) , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7a10" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" * (cast_expression "(int *)(pcVar14 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c072c)" ( (binary_expression "pcVar14 + 0x2c072c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);" (assignment_expression "dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" identifier = (cast_expression "(double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" identifier (argument_list "(pcVar14 + 0x2c86f4,uStack_23c)" ( (binary_expression "pcVar14 + 0x2c86f4" identifier + number_literal) , identifier ))))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))()" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c0bf8))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c0bf8))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c0bf8))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c0bf8)" * (pointer_expression "*(code **)(pcVar12 + 0x2c0bf8)" * (cast_expression "(code **)(pcVar12 + 0x2c0bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c0bf8)" ( (binary_expression "pcVar12 + 0x2c0bf8" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (if_statement "if (uVar8 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }" if (parenthesized_expression "(uVar8 < 8)" ( (binary_expression "uVar8 < 8" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }" { comment comment (expression_statement "dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();" (assignment_expression "dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" identifier = (cast_expression "(double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" (parenthesized_expression "(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))" ( (pointer_expression "*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c)" * (parenthesized_expression "(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c)" ( (binary_expression "pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c" (binary_expression "pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" identifier + (pointer_expression "*(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" * (cast_expression "(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4" (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x79c0" (pointer_expression "*(int *)(pcVar12 + 0x2c0674)" * (cast_expression "(int *)(pcVar12 + 0x2c0674)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0674)" ( (binary_expression "pcVar12 + 0x2c0674" identifier + number_literal) )))) + number_literal) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return dVar18;" return identifier ;) })) (return_statement "return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;" return (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400))" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x7bd0" (pointer_expression "*(int *)(pcVar12 + 0x2c0674)" * (cast_expression "(int *)(pcVar12 + 0x2c0674)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0674)" ( (binary_expression "pcVar12 + 0x2c0674" identifier + number_literal) )))) + number_literal) ))))) * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" ( (binary_expression "*(int *)(pcVar12 + 0x2c066c) + 0x1a58" (pointer_expression "*(int *)(pcVar12 + 0x2c066c)" * (cast_expression "(int *)(pcVar12 + 0x2c066c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c066c)" ( (binary_expression "pcVar12 + 0x2c066c" identifier + number_literal) )))) + number_literal) ))))) * (parenthesized_expression "(dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400))" ( (binary_expression "dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" identifier - (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c066c) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c066c)" * (cast_expression "(int *)(pcVar12 + 0x2c066c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c066c)" ( (binary_expression "pcVar12 + 0x2c066c" identifier + number_literal) )))) + number_literal) ))))) ))) + (cast_expression "(double)fVar7" ( (type_descriptor "double" primitive_type) ) identifier)) ;) })))
(translation_unit "void ConvertRGBToHCLp(double red,double green,double blue,double *hue,double *chroma,double *luma)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  uint uVar7;\n  undefined *puVar8;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar9;\n  undefined *puVar10;\n  code *pcVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  double dVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);\nLAB_000e6d3c:\n    puVar8 = puVar8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);\n  }\n  else {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)blue >> 0x20);\n  pcVar13 = ConvertRGBToHSB;\n  puVar10 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8);\n  dVar17 = (double)CONCAT44(&_gp,uStack_3c);\n  iVar6 = *(int *)(puVar10 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar11 = *(code **)(puVar10 + 0x2c288c);\n  pcVar14 = ConvertRGBToHSI;\n  (*pcVar11)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar11 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar13 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c2614);\n  pcVar15 = ConvertRGBToHSL;\n  (*pcVar13)(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar13 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar11 = ConvertRGBToHSV;\n  (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar12 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar15 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar13 = *(code **)(pcVar12 + 0x2c2260);\n  pcVar14 = ConvertRGBToHWB;\n  (*pcVar13)(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790);\n  dVar17 = (double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar13 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar13 + 0x2c1364);\n    if ((double *)pcVar11 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  }\n  pcVar11 = *(code **)(pcVar13 + 0x2c2084);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  dVar18 = (double)(**(code **)(pcVar11 + 0x2c20c0))();\n  dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440);\n  dVar18 = dVar18 * dVar19;\n  dVar17 = green;\n  dVar16 = (double)(**(code **)(pcVar11 + 0x2c20c0))(green);\n  dVar16 = dVar16 * dVar19;\n  dVar21 = (double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4));\n  dVar21 = dVar21 * dVar19;\n  dVar19 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40);\n  dVar22 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28);\n  dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c117c);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c1e9c);\n  (*pcVar13)(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar11 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)green >> 0x20);\n  pdStack_13c = SUB84(green,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar13 + 0x2c1b80))\n            (*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar11 = *(code **)(pcVar13 + 0x2c1b80);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c);\n  (*pcVar13)(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    if (ABS(dVar17) < 0.0) {\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }\n    return;\n  }\n  uVar7 = 0x5b5;\n  pcVar11 = *(code **)(pcVar13 + 0x2c144c);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,\n             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4);\n  (**(code **)(pcVar11 + 0x2c0bf8))();\n  if (uVar7 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();\n    return;\n  }\n  return;\n}\n\n" (function_definition "void ConvertRGBToHCLp(double red,double green,double blue,double *hue,double *chroma,double *luma)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  uint uVar7;\n  undefined *puVar8;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar9;\n  undefined *puVar10;\n  code *pcVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  double dVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);\nLAB_000e6d3c:\n    puVar8 = puVar8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);\n  }\n  else {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)blue >> 0x20);\n  pcVar13 = ConvertRGBToHSB;\n  puVar10 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8);\n  dVar17 = (double)CONCAT44(&_gp,uStack_3c);\n  iVar6 = *(int *)(puVar10 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar11 = *(code **)(puVar10 + 0x2c288c);\n  pcVar14 = ConvertRGBToHSI;\n  (*pcVar11)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar11 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar13 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c2614);\n  pcVar15 = ConvertRGBToHSL;\n  (*pcVar13)(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar13 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar11 = ConvertRGBToHSV;\n  (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar12 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar15 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar13 = *(code **)(pcVar12 + 0x2c2260);\n  pcVar14 = ConvertRGBToHWB;\n  (*pcVar13)(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790);\n  dVar17 = (double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar13 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar13 + 0x2c1364);\n    if ((double *)pcVar11 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  }\n  pcVar11 = *(code **)(pcVar13 + 0x2c2084);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  dVar18 = (double)(**(code **)(pcVar11 + 0x2c20c0))();\n  dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440);\n  dVar18 = dVar18 * dVar19;\n  dVar17 = green;\n  dVar16 = (double)(**(code **)(pcVar11 + 0x2c20c0))(green);\n  dVar16 = dVar16 * dVar19;\n  dVar21 = (double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4));\n  dVar21 = dVar21 * dVar19;\n  dVar19 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40);\n  dVar22 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28);\n  dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c117c);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c1e9c);\n  (*pcVar13)(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar11 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)green >> 0x20);\n  pdStack_13c = SUB84(green,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar13 + 0x2c1b80))\n            (*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar11 = *(code **)(pcVar13 + 0x2c1b80);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c);\n  (*pcVar13)(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    if (ABS(dVar17) < 0.0) {\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }\n    return;\n  }\n  uVar7 = 0x5b5;\n  pcVar11 = *(code **)(pcVar13 + 0x2c144c);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,\n             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4);\n  (**(code **)(pcVar11 + 0x2c0bf8))();\n  if (uVar7 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();\n    return;\n  }\n  return;\n}" primitive_type (function_declarator "ConvertRGBToHCLp(double red,double green,double blue,double *hue,double *chroma,double *luma)" identifier (parameter_list "(double red,double green,double blue,double *hue,double *chroma,double *luma)" ( (parameter_declaration "double red" primitive_type identifier) , (parameter_declaration "double green" primitive_type identifier) , (parameter_declaration "double blue" primitive_type identifier) , (parameter_declaration "double *hue" primitive_type (pointer_declarator "*hue" * identifier)) , (parameter_declaration "double *chroma" primitive_type (pointer_declarator "*chroma" * identifier)) , (parameter_declaration "double *luma" primitive_type (pointer_declarator "*luma" * identifier)) ))) (compound_statement "{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  uint uVar7;\n  undefined *puVar8;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar9;\n  undefined *puVar10;\n  code *pcVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  double dVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);\nLAB_000e6d3c:\n    puVar8 = puVar8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);\n  }\n  else {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)blue >> 0x20);\n  pcVar13 = ConvertRGBToHSB;\n  puVar10 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8);\n  dVar17 = (double)CONCAT44(&_gp,uStack_3c);\n  iVar6 = *(int *)(puVar10 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar11 = *(code **)(puVar10 + 0x2c288c);\n  pcVar14 = ConvertRGBToHSI;\n  (*pcVar11)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar11 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar13 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c2614);\n  pcVar15 = ConvertRGBToHSL;\n  (*pcVar13)(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar13 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar11 = ConvertRGBToHSV;\n  (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar12 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar15 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar13 = *(code **)(pcVar12 + 0x2c2260);\n  pcVar14 = ConvertRGBToHWB;\n  (*pcVar13)(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790);\n  dVar17 = (double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar13 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar13 + 0x2c1364);\n    if ((double *)pcVar11 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  }\n  pcVar11 = *(code **)(pcVar13 + 0x2c2084);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  dVar18 = (double)(**(code **)(pcVar11 + 0x2c20c0))();\n  dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440);\n  dVar18 = dVar18 * dVar19;\n  dVar17 = green;\n  dVar16 = (double)(**(code **)(pcVar11 + 0x2c20c0))(green);\n  dVar16 = dVar16 * dVar19;\n  dVar21 = (double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4));\n  dVar21 = dVar21 * dVar19;\n  dVar19 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40);\n  dVar22 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28);\n  dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c117c);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c1e9c);\n  (*pcVar13)(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar11 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)green >> 0x20);\n  pdStack_13c = SUB84(green,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar13 + 0x2c1b80))\n            (*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar11 = *(code **)(pcVar13 + 0x2c1b80);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar13 = *(code **)(pcVar11 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c);\n  (*pcVar13)(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    if (ABS(dVar17) < 0.0) {\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }\n    return;\n  }\n  uVar7 = 0x5b5;\n  pcVar11 = *(code **)(pcVar13 + 0x2c144c);\n  (*pcVar11)(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,\n             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4);\n  (**(code **)(pcVar11 + 0x2c0bf8))();\n  if (uVar7 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();\n    return;\n  }\n  return;\n}" { (declaration "undefined1 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "double *pdVar5;" primitive_type (pointer_declarator "*pdVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "double *unaff_s0;" primitive_type (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "double *unaff_s1;" primitive_type (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "double *unaff_s2;" primitive_type (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "undefined *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "code *pcVar11;" type_identifier (pointer_declarator "*pcVar11" * identifier) ;) (declaration "code *pcVar12;" type_identifier (pointer_declarator "*pcVar12" * identifier) ;) (declaration "code *pcVar13;" type_identifier (pointer_declarator "*pcVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "double dVar16;" primitive_type identifier ;) (declaration "double dVar17;" primitive_type identifier ;) (declaration "double dVar18;" primitive_type identifier ;) (declaration "double dVar19;" primitive_type identifier ;) (declaration "double dVar20;" primitive_type identifier ;) (declaration "double dVar21;" primitive_type identifier ;) (declaration "double dVar22;" primitive_type identifier ;) (declaration "double dVar23;" primitive_type identifier ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "double dVar26;" primitive_type identifier ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "double *in_stack_00000018;" primitive_type (pointer_declarator "*in_stack_00000018" * identifier) ;) (declaration "double *in_stack_0000001c;" primitive_type (pointer_declarator "*in_stack_0000001c" * identifier) ;) (declaration "double *in_stack_00000020;" primitive_type (pointer_declarator "*in_stack_00000020" * identifier) ;) (declaration "double dStack_208;" primitive_type identifier ;) (declaration "undefined4 uStack_1b4;" type_identifier identifier ;) (declaration "double *pdStack_1b0;" primitive_type (pointer_declarator "*pdStack_1b0" * identifier) ;) (declaration "double *pdStack_1ac;" primitive_type (pointer_declarator "*pdStack_1ac" * identifier) ;) (declaration "double *pdStack_1a8;" primitive_type (pointer_declarator "*pdStack_1a8" * identifier) ;) (declaration "undefined4 uStack_144;" type_identifier identifier ;) (declaration "double *pdStack_140;" primitive_type (pointer_declarator "*pdStack_140" * identifier) ;) (declaration "double *pdStack_13c;" primitive_type (pointer_declarator "*pdStack_13c" * identifier) ;) (declaration "double *pdStack_138;" primitive_type (pointer_declarator "*pdStack_138" * identifier) ;) (declaration "undefined4 uStack_e4;" type_identifier identifier ;) (declaration "double *pdStack_e0;" primitive_type (pointer_declarator "*pdStack_e0" * identifier) ;) (declaration "double *pdStack_d8;" primitive_type (pointer_declarator "*pdStack_d8" * identifier) ;) (declaration "undefined4 uStack_c4;" type_identifier identifier ;) (declaration "double *pdStack_c0;" primitive_type (pointer_declarator "*pdStack_c0" * identifier) ;) (declaration "double *pdStack_b8;" primitive_type (pointer_declarator "*pdStack_b8" * identifier) ;) (declaration "undefined4 uStack_a4;" type_identifier identifier ;) (declaration "double *pdStack_a0;" primitive_type (pointer_declarator "*pdStack_a0" * identifier) ;) (declaration "double *pdStack_98;" primitive_type (pointer_declarator "*pdStack_98" * identifier) ;) (declaration "undefined4 uStack_84;" type_identifier identifier ;) (declaration "undefined4 uStack_5c;" type_identifier identifier ;) (declaration "double *pdStack_58;" primitive_type (pointer_declarator "*pdStack_58" * identifier) ;) (declaration "double *pdStack_50;" primitive_type (pointer_declarator "*pdStack_50" * identifier) ;) (declaration "undefined4 uStack_3c;" type_identifier identifier ;) (if_statement "if (in_stack_00000018 == (double *)0x0) {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);\nLAB_000e6d3c:\n    puVar8 = puVar8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);\n  }\n  else {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" if (parenthesized_expression "(in_stack_00000018 == (double *)0x0)" ( (binary_expression "in_stack_00000018 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);\nLAB_000e6d3c:\n    puVar8 = puVar8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);\n  }" { (expression_statement "puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;" (assignment_expression "puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" identifier = (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e6d3c:\n    puVar8 = puVar8 + 0x7ab8;" statement_identifier : (expression_statement "puVar8 = puVar8 + 0x7ab8;" (assignment_expression "puVar8 = puVar8 + 0x7ab8" identifier = (binary_expression "puVar8 + 0x7ab8" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" else (compound_statement "{\n    puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" { (expression_statement "puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = identifier) ;) (if_statement "if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }" if (parenthesized_expression "(in_stack_0000001c != (double *)0x0)" ( (binary_expression "in_stack_0000001c != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }\n      goto LAB_000e6d3c;\n    }" { (if_statement "if (in_stack_00000020 != (double *)0x0) {\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }" if (parenthesized_expression "(in_stack_00000020 != (double *)0x0)" ( (binary_expression "in_stack_00000020 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar17 = blue;\n        if (blue < green) {\n          dVar17 = green;\n        }\n        dVar18 = red;\n        if (red <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar17 = green;\n        if (blue <= green) {\n          dVar17 = blue;\n        }\n        dVar16 = red;\n        if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }\n        dVar16 = dVar18 - dVar16;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar17 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar17;\n        puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar16 * dVar17;\n        *in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;\n        return;\n      }" { (expression_statement "dVar17 = blue;" (assignment_expression "dVar17 = blue" identifier = identifier) ;) (if_statement "if (blue < green) {\n          dVar17 = green;\n        }" if (parenthesized_expression "(blue < green)" ( (binary_expression "blue < green" identifier < identifier) )) (compound_statement "{\n          dVar17 = green;\n        }" { (expression_statement "dVar17 = green;" (assignment_expression "dVar17 = green" identifier = identifier) ;) })) (expression_statement "dVar18 = red;" (assignment_expression "dVar18 = red" identifier = identifier) ;) (if_statement "if (red <= dVar17) {\n          dVar18 = dVar17;\n        }" if (parenthesized_expression "(red <= dVar17)" ( (binary_expression "red <= dVar17" identifier <= identifier) )) (compound_statement "{\n          dVar18 = dVar17;\n        }" { (expression_statement "dVar18 = dVar17;" (assignment_expression "dVar18 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar17 = green;" (assignment_expression "dVar17 = green" identifier = identifier) ;) (if_statement "if (blue <= green) {\n          dVar17 = blue;\n        }" if (parenthesized_expression "(blue <= green)" ( (binary_expression "blue <= green" identifier <= identifier) )) (compound_statement "{\n          dVar17 = blue;\n        }" { (expression_statement "dVar17 = blue;" (assignment_expression "dVar17 = blue" identifier = identifier) ;) })) (expression_statement "dVar16 = red;" (assignment_expression "dVar16 = red" identifier = identifier) ;) (if_statement "if (dVar17 <= red) {\n          dVar16 = dVar17;\n        }" if (parenthesized_expression "(dVar17 <= red)" ( (binary_expression "dVar17 <= red" identifier <= identifier) )) (compound_statement "{\n          dVar16 = dVar17;\n        }" { (expression_statement "dVar16 = dVar17;" (assignment_expression "dVar16 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar16 = dVar18 - dVar16;" (assignment_expression "dVar16 = dVar18 - dVar16" identifier = (binary_expression "dVar18 - dVar16" identifier - identifier)) ;) (expression_statement "dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);" (assignment_expression "dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x13f8)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x13f8)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x13f8)" ( (binary_expression "PTR_LAB_003a88e0 + 0x13f8" identifier + number_literal) ))))) ;) (if_statement "if (dVar17 <= ABS(dVar16)) {\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" if (parenthesized_expression "(dVar17 <= ABS(dVar16))" ( (binary_expression "dVar17 <= ABS(dVar16)" identifier <= (call_expression "ABS(dVar16)" identifier (argument_list "(dVar16)" ( identifier )))) )) (compound_statement "{\n          if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }\n          if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" { (if_statement "if (ABS(red - dVar18) < dVar17) {\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(red - dVar18) < dVar17)" ( (binary_expression "ABS(red - dVar18) < dVar17" (call_expression "ABS(red - dVar18)" identifier (argument_list "(red - dVar18)" ( (binary_expression "red - dVar18" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);\n            dVar17 = dVar17 / dVar18;\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) ))))) ;) (expression_statement "dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18);" (assignment_expression "dVar17 = (double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18)" identifier = (cast_expression "(double)(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_fmod_003a99b8)((green - blue) / dVar16 + dVar18,dVar18)" (parenthesized_expression "(*(code *)PTR_fmod_003a99b8)" ( (pointer_expression "*(code *)PTR_fmod_003a99b8" * (cast_expression "(code *)PTR_fmod_003a99b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((green - blue) / dVar16 + dVar18,dVar18)" ( (binary_expression "(green - blue) / dVar16 + dVar18" (binary_expression "(green - blue) / dVar16" (parenthesized_expression "(green - blue)" ( (binary_expression "green - blue" identifier - identifier) )) / identifier) + identifier) , identifier ))))) ;) (expression_statement "dVar17 = dVar17 / dVar18;" (assignment_expression "dVar17 = dVar17 / dVar18" identifier = (binary_expression "dVar17 / dVar18" identifier / identifier)) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) (if_statement "if (ABS(green - dVar18) < dVar17) {\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(green - dVar18) < dVar17)" ( (binary_expression "ABS(green - dVar18) < dVar17" (call_expression "ABS(green - dVar18)" identifier (argument_list "(green - dVar18)" ( (binary_expression "green - dVar18" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar17 = ((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (binary_expression "((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48))" ( (binary_expression "(blue - red) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (binary_expression "(blue - red) / dVar16" (parenthesized_expression "(blue - red)" ( (binary_expression "blue - red" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) )))))) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) (if_statement "if (ABS(blue - dVar18) < dVar17) {\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(blue - dVar18) < dVar17)" ( (binary_expression "ABS(blue - dVar18) < dVar17" (call_expression "ABS(blue - dVar18)" identifier (argument_list "(blue - dVar18)" ( (binary_expression "blue - dVar18" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar17 = ((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (binary_expression "((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8))" ( (binary_expression "(red - green) / dVar16 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (binary_expression "(red - green) / dVar16" (parenthesized_expression "(red - green)" ( (binary_expression "red - green" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) )))))) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) })) (expression_statement "dVar17 = 0.0;" (assignment_expression "dVar17 = 0.0" identifier = number_literal) ;) (labeled_statement "LAB_000e6c48:\n        *in_stack_00000018 = dVar17;" statement_identifier : (expression_statement "*in_stack_00000018 = dVar17;" (assignment_expression "*in_stack_00000018 = dVar17" (pointer_expression "*in_stack_00000018" * identifier) = identifier) ;)) (expression_statement "puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar8 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = identifier) ;) (expression_statement "dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440);" (assignment_expression "dVar17 = *(double *)(PTR_LAB_003a88e0 + 0x1440)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1440)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1440)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1440" identifier + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);" (assignment_expression "dVar21 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);" (assignment_expression "dVar18 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0" identifier + number_literal) ))))) ;) (expression_statement "*in_stack_0000001c = dVar16 * dVar17;" (assignment_expression "*in_stack_0000001c = dVar16 * dVar17" (pointer_expression "*in_stack_0000001c" * identifier) = (binary_expression "dVar16 * dVar17" identifier * identifier)) ;) (expression_statement "*in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17;" (assignment_expression "*in_stack_00000020 =\n             (blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17" (pointer_expression "*in_stack_00000020" * identifier) = (binary_expression "(blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21) * dVar17" (parenthesized_expression "(blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21)" ( (binary_expression "blue * *(double *)(puVar8 + -0x3e78) + red * dVar18 + green * dVar21" (binary_expression "blue * *(double *)(puVar8 + -0x3e78) + red * dVar18" (binary_expression "blue * *(double *)(puVar8 + -0x3e78)" identifier * (pointer_expression "*(double *)(puVar8 + -0x3e78)" * (cast_expression "(double *)(puVar8 + -0x3e78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar8 + -0x3e78)" ( (binary_expression "puVar8 + -0x3e78" identifier + number_literal) ))))) + (binary_expression "red * dVar18" identifier * identifier)) + (binary_expression "green * dVar21" identifier * identifier)) )) * identifier)) ;) (return_statement "return;" return ;) })) (goto_statement "goto LAB_000e6d3c;" goto statement_identifier ;) })) }))) (expression_statement "pdVar5 = (double *)((ulonglong)blue >> 0x20);" (assignment_expression "pdVar5 = (double *)((ulonglong)blue >> 0x20)" identifier = (cast_expression "(double *)((ulonglong)blue >> 0x20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)blue >> 0x20)" ( (binary_expression "(ulonglong)blue >> 0x20" (cast_expression "(ulonglong)blue" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pcVar13 = ConvertRGBToHSB;" (assignment_expression "pcVar13 = ConvertRGBToHSB" identifier = identifier) ;) (expression_statement "puVar10 = PTR___assert_fail_003a9608;" (assignment_expression "puVar10 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar8 + 0x7ab8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "puVar8 + 0x7ab8" identifier + number_literal) ))) ;) (expression_statement "dVar17 = (double)CONCAT44(&_gp,uStack_3c);" (assignment_expression "dVar17 = (double)CONCAT44(&_gp,uStack_3c)" identifier = (cast_expression "(double)CONCAT44(&_gp,uStack_3c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(&_gp,uStack_3c)" identifier (argument_list "(&_gp,uStack_3c)" ( (pointer_expression "&_gp" & identifier) , identifier ))))) ;) (expression_statement "iVar6 = *(int *)(puVar10 + 0x2c1b6c);" (assignment_expression "iVar6 = *(int *)(puVar10 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" if (parenthesized_expression "(unaff_s0 == (double *)0x0)" ( (binary_expression "unaff_s0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8;" (assignment_expression "iVar4 = *(int *)(puVar10 + 0x2c1b6c) + 0x77d8" identifier = (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + 0x77d8" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar10 + 0x2c288c))" ( (pointer_expression "**(code **)(puVar10 + 0x2c288c)" * (pointer_expression "*(code **)(puVar10 + 0x2c288c)" * (cast_expression "(code **)(puVar10 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar10 + 0x2c288c)" ( (binary_expression "puVar10 + 0x2c288c" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x3d7,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;" statement_identifier : (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;)) (expression_statement "iVar4 = iVar4 + 0x7844;" (assignment_expression "iVar4 = iVar4 + 0x7844" identifier = (binary_expression "iVar4 + 0x7844" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar10 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar10 + 0x2c288c))" ( (pointer_expression "**(code **)(puVar10 + 0x2c288c)" * (pointer_expression "*(code **)(puVar10 + 0x2c288c)" * (cast_expression "(code **)(puVar10 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar10 + 0x2c288c)" ( (binary_expression "puVar10 + 0x2c288c" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x3d9,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" else (compound_statement "{\n    iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" { (expression_statement "iVar4 = *(int *)(puVar10 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar10 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }" if (parenthesized_expression "(unaff_s1 != (double *)0x0)" ( (binary_expression "unaff_s1 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar4 = *(int *)(puVar10 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }\n      goto LAB_000e6fbc;\n    }" { (expression_statement "iVar4 = *(int *)(puVar10 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar10 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }" if (parenthesized_expression "(unaff_s2 != (double *)0x0)" ( (binary_expression "unaff_s2 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar18 = green;\n        if (red < green) {\n          dVar18 = red;\n        }\n        dVar16 = dVar17;\n        if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }\n        uVar3 = SUB84(green,0);\n        if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }\n        dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);\n        if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }\n        return;\n      }" { (expression_statement "*(undefined4 *)((int)unaff_s0 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s0 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s0 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s0 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s0 + 4)" ( (binary_expression "(int)unaff_s0 + 4" (cast_expression "(int)unaff_s0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s0 = 0;" (assignment_expression "*(undefined4 *)unaff_s0 = 0" (pointer_expression "*(undefined4 *)unaff_s0" * (cast_expression "(undefined4 *)unaff_s0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)unaff_s1 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s1 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s1 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s1 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s1 + 4)" ( (binary_expression "(int)unaff_s1 + 4" (cast_expression "(int)unaff_s1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s1 = 0;" (assignment_expression "*(undefined4 *)unaff_s1 = 0" (pointer_expression "*(undefined4 *)unaff_s1" * (cast_expression "(undefined4 *)unaff_s1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)unaff_s2 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s2 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s2 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s2 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s2 + 4)" ( (binary_expression "(int)unaff_s2 + 4" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s2 = 0;" (assignment_expression "*(undefined4 *)unaff_s2 = 0" (pointer_expression "*(undefined4 *)unaff_s2" * (cast_expression "(undefined4 *)unaff_s2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "dVar18 = green;" (assignment_expression "dVar18 = green" identifier = identifier) ;) (if_statement "if (red < green) {\n          dVar18 = red;\n        }" if (parenthesized_expression "(red < green)" ( (binary_expression "red < green" identifier < identifier) )) (compound_statement "{\n          dVar18 = red;\n        }" { (expression_statement "dVar18 = red;" (assignment_expression "dVar18 = red" identifier = identifier) ;) })) (expression_statement "dVar16 = dVar17;" (assignment_expression "dVar16 = dVar17" identifier = identifier) ;) (if_statement "if (dVar18 <= dVar17) {\n          dVar16 = dVar18;\n        }" if (parenthesized_expression "(dVar18 <= dVar17)" ( (binary_expression "dVar18 <= dVar17" identifier <= identifier) )) (compound_statement "{\n          dVar16 = dVar18;\n        }" { (expression_statement "dVar16 = dVar18;" (assignment_expression "dVar16 = dVar18" identifier = identifier) ;) })) (expression_statement "uVar3 = SUB84(green,0);" (assignment_expression "uVar3 = SUB84(green,0)" identifier = (call_expression "SUB84(green,0)" identifier (argument_list "(green,0)" ( identifier , number_literal )))) ;) (if_statement "if (green < red) {\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }" if (parenthesized_expression "(green < red)" ( (binary_expression "green < red" identifier < identifier) )) (compound_statement "{\n          uVar3 = SUB84(red,0);\n          puVar1 = (undefined1 *)((ulonglong)red >> 0x20);\n        }" { (expression_statement "uVar3 = SUB84(red,0);" (assignment_expression "uVar3 = SUB84(red,0)" identifier = (call_expression "SUB84(red,0)" identifier (argument_list "(red,0)" ( identifier , number_literal )))) ;) (expression_statement "puVar1 = (undefined1 *)((ulonglong)red >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)red >> 0x20)" identifier = (cast_expression "(undefined1 *)((ulonglong)red >> 0x20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)red >> 0x20)" ( (binary_expression "(ulonglong)red >> 0x20" (cast_expression "(ulonglong)red" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) }) (else_clause "else {\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }" else (compound_statement "{\n          puVar1 = (undefined1 *)((ulonglong)green >> 0x20);\n        }" { (expression_statement "puVar1 = (undefined1 *)((ulonglong)green >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)green >> 0x20)" identifier = (cast_expression "(undefined1 *)((ulonglong)green >> 0x20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)green >> 0x20)" ( (binary_expression "(ulonglong)green >> 0x20" (cast_expression "(ulonglong)green" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) }))) (if_statement "if ((double)CONCAT44(puVar1,uVar3) < dVar17) {\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }" if (parenthesized_expression "((double)CONCAT44(puVar1,uVar3) < dVar17)" ( (binary_expression "(double)CONCAT44(puVar1,uVar3) < dVar17" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) < identifier) )) (compound_statement "{\n          puVar1 = &_gp;\n          uVar3 = uStack_3c;\n        }" { (expression_statement "puVar1 = &_gp;" (assignment_expression "puVar1 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (expression_statement "uVar3 = uStack_3c;" (assignment_expression "uVar3 = uStack_3c" identifier = identifier) ;) })) (expression_statement "dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8);" (assignment_expression "dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8)" identifier = (pointer_expression "*(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8)" * (cast_expression "(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar10 + 0x2c1b64) + 0x13f8)" ( (binary_expression "*(int *)(puVar10 + 0x2c1b64) + 0x13f8" (pointer_expression "*(int *)(puVar10 + 0x2c1b64)" * (cast_expression "(int *)(puVar10 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b64)" ( (binary_expression "puVar10 + 0x2c1b64" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }" if (parenthesized_expression "(dVar18 <= ABS((double)CONCAT44(puVar1,uVar3)))" ( (binary_expression "dVar18 <= ABS((double)CONCAT44(puVar1,uVar3))" identifier <= (call_expression "ABS((double)CONCAT44(puVar1,uVar3))" identifier (argument_list "((double)CONCAT44(puVar1,uVar3))" ( (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) )))) )) (compound_statement "{\n          dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;\n          dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;\n          if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }\n        }" { (expression_statement "dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16;" (assignment_expression "dVar16 = (double)CONCAT44(puVar1,uVar3) - dVar16" identifier = (binary_expression "(double)CONCAT44(puVar1,uVar3) - dVar16" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) - identifier)) ;) (expression_statement "dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440);" (assignment_expression "dVar21 = *(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440)" * (cast_expression "(double *)(*(int *)(puVar10 + 0x2c1b64) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar10 + 0x2c1b64) + 0x1440)" ( (binary_expression "*(int *)(puVar10 + 0x2c1b64) + 0x1440" (pointer_expression "*(int *)(puVar10 + 0x2c1b64)" * (cast_expression "(int *)(puVar10 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b64)" ( (binary_expression "puVar10 + 0x2c1b64" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3);" (assignment_expression "*unaff_s1 = dVar16 / (double)CONCAT44(puVar1,uVar3)" (pointer_expression "*unaff_s1" * identifier) = (binary_expression "dVar16 / (double)CONCAT44(puVar1,uVar3)" identifier / (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))))) ;) (expression_statement "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21;" (assignment_expression "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar21" (pointer_expression "*unaff_s2" * identifier) = (binary_expression "(double)CONCAT44(puVar1,uVar3) * dVar21" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) * identifier)) ;) (if_statement "if (dVar18 <= ABS(dVar16)) {\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }" if (parenthesized_expression "(dVar18 <= ABS(dVar16))" ( (binary_expression "dVar18 <= ABS(dVar16)" identifier <= (call_expression "ABS(dVar16)" identifier (argument_list "(dVar16)" ( identifier )))) )) (compound_statement "{\n            if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }\n          }" { (if_statement "if (dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }\n            else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }" if (parenthesized_expression "(dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3)))" ( (binary_expression "dVar18 <= ABS(red - (double)CONCAT44(puVar1,uVar3))" identifier <= (call_expression "ABS(red - (double)CONCAT44(puVar1,uVar3))" identifier (argument_list "(red - (double)CONCAT44(puVar1,uVar3))" ( (binary_expression "red - (double)CONCAT44(puVar1,uVar3)" identifier - (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier ))))) )))) )) (compound_statement "{\n              if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }\n              dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }" { (if_statement "if (ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18) {\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }\n              else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }" if (parenthesized_expression "(ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18)" ( (binary_expression "ABS(green - (double)CONCAT44(puVar1,uVar3)) < dVar18" (call_expression "ABS(green - (double)CONCAT44(puVar1,uVar3))" identifier (argument_list "(green - (double)CONCAT44(puVar1,uVar3))" ( (binary_expression "green - (double)CONCAT44(puVar1,uVar3)" identifier - (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier ))))) ))) < identifier) )) (compound_statement "{\n                dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar16;\n              }" { (expression_statement "dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48);" (assignment_expression "dVar16 = (dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48)" identifier = (binary_expression "(dVar17 - red) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48)" (binary_expression "(dVar17 - red) / dVar16" (parenthesized_expression "(dVar17 - red)" ( (binary_expression "dVar17 - red" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48)" * (cast_expression "(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar10 + 0x2c1b6c) + -0x2e48)" ( (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + -0x2e48" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar16;" (assignment_expression "*unaff_s0 = dVar16" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }) (else_clause "else {\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }" else (compound_statement "{\n                dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar16;\n              }" { (expression_statement "dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8);" (assignment_expression "dVar16 = (red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8)" identifier = (binary_expression "(red - green) / dVar16 +\n                         *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8)" (binary_expression "(red - green) / dVar16" (parenthesized_expression "(red - green)" ( (binary_expression "red - green" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8)" ( (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + -0x3cc8" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar16;" (assignment_expression "*unaff_s0 = dVar16" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }))) (expression_statement "dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar16 = dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" identifier = (binary_expression "dVar16 / *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" identifier / (pointer_expression "*(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" * (cast_expression "(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" ( (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "iVar6 = *(int *)(puVar10 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar10 + 0x2c1b64)" identifier = (pointer_expression "*(int *)(puVar10 + 0x2c1b64)" * (cast_expression "(int *)(puVar10 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b64)" ( (binary_expression "puVar10 + 0x2c1b64" identifier + number_literal) ))))) ;) }) (else_clause "else {\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }" else (compound_statement "{\n              dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);\n              dVar16 = (green - dVar17) / dVar16;\n              *unaff_s0 = dVar16;\n              dVar16 = dVar16 / dVar18;\n              iVar6 = *(int *)(puVar10 + 0x2c1b64);\n            }" { (expression_statement "dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar18 = *(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" identifier = (pointer_expression "*(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" * (cast_expression "(double *)(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar10 + 0x2c1b6c) + -0x2e50)" ( (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar16 = (green - dVar17) / dVar16;" (assignment_expression "dVar16 = (green - dVar17) / dVar16" identifier = (binary_expression "(green - dVar17) / dVar16" (parenthesized_expression "(green - dVar17)" ( (binary_expression "green - dVar17" identifier - identifier) )) / identifier)) ;) (expression_statement "*unaff_s0 = dVar16;" (assignment_expression "*unaff_s0 = dVar16" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) (expression_statement "dVar16 = dVar16 / dVar18;" (assignment_expression "dVar16 = dVar16 / dVar18" identifier = (binary_expression "dVar16 / dVar18" identifier / identifier)) ;) (expression_statement "iVar6 = *(int *)(puVar10 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar10 + 0x2c1b64)" identifier = (pointer_expression "*(int *)(puVar10 + 0x2c1b64)" * (cast_expression "(int *)(puVar10 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b64)" ( (binary_expression "puVar10 + 0x2c1b64" identifier + number_literal) ))))) ;) }))) (if_statement "if (dVar16 < 0.0) {\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }\n            else {\n              *unaff_s0 = dVar16;\n            }" if (parenthesized_expression "(dVar16 < 0.0)" ( (binary_expression "dVar16 < 0.0" identifier < number_literal) )) (compound_statement "{\n              *unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);\n            }" { (expression_statement "*unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438);" (assignment_expression "*unaff_s0 = dVar16 + *(double *)(iVar6 + 0x1438)" (pointer_expression "*unaff_s0" * identifier) = (binary_expression "dVar16 + *(double *)(iVar6 + 0x1438)" identifier + (pointer_expression "*(double *)(iVar6 + 0x1438)" * (cast_expression "(double *)(iVar6 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1438)" ( (binary_expression "iVar6 + 0x1438" identifier + number_literal) )))))) ;) }) (else_clause "else {\n              *unaff_s0 = dVar16;\n            }" else (compound_statement "{\n              *unaff_s0 = dVar16;\n            }" { (expression_statement "*unaff_s0 = dVar16;" (assignment_expression "*unaff_s0 = dVar16" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }))) })) })) (return_statement "return;" return ;) })) (goto_statement "goto LAB_000e6fbc;" goto statement_identifier ;) })) }))) (expression_statement "pcVar11 = *(code **)(puVar10 + 0x2c288c);" (assignment_expression "pcVar11 = *(code **)(puVar10 + 0x2c288c)" identifier = (pointer_expression "*(code **)(puVar10 + 0x2c288c)" * (cast_expression "(code **)(puVar10 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar10 + 0x2c288c)" ( (binary_expression "puVar10 + 0x2c288c" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = ConvertRGBToHSI;" (assignment_expression "pcVar14 = ConvertRGBToHSI" identifier = identifier) ;) (expression_statement "(*pcVar11)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8);" (call_expression "(*pcVar11)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8)" ( (binary_expression "iVar4 + 0x7824" identifier + number_literal) , (binary_expression "iVar6 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "*(int *)(puVar10 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar10 + 0x2c1b6c)" * (cast_expression "(int *)(puVar10 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar10 + 0x2c1b6c)" ( (binary_expression "puVar10 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar11 + 0x2c18f4);" (assignment_expression "iVar6 = *(int *)(pcVar11 + 0x2c18f4)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar13 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);\n  }" if (parenthesized_expression "(pdStack_58 != (double *)0x0)" ( (binary_expression "pdStack_58 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if ((double *)pcVar13 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);\n  }" { (if_statement "if ((double *)pcVar13 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" if (parenthesized_expression "((double *)pcVar13 != (double *)0x0)" ( (binary_expression "(double *)pcVar13 != (double *)0x0" (cast_expression "(double *)pcVar13" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" { (if_statement "if (pdStack_50 != (double *)0x0) {\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }" if (parenthesized_expression "(pdStack_50 != (double *)0x0)" ( (binary_expression "pdStack_50 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);\n        dVar16 = red * dVar17;\n        dVar21 = green * dVar17;\n        dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;\n        dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar18;\n        if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }\n        dVar19 = dVar17;\n        if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }\n        if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }\n        pcVar14 = *(code **)(pcVar11 + 0x2c2014);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar13 = dVar25 - dVar19 / dVar18;\n        dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));\n        dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }\n        *pdStack_58 = dVar17;\n        return;\n      }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18ec) + 0x1440)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18ec) + 0x1440" (pointer_expression "*(int *)(pcVar11 + 0x2c18ec)" * (cast_expression "(int *)(pcVar11 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18ec)" ( (binary_expression "pcVar11 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar16 = red * dVar17;" (assignment_expression "dVar16 = red * dVar17" identifier = (binary_expression "red * dVar17" identifier * identifier)) ;) (expression_statement "dVar21 = green * dVar17;" (assignment_expression "dVar21 = green * dVar17" identifier = (binary_expression "green * dVar17" identifier * identifier)) ;) (expression_statement "dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17;" (assignment_expression "dVar17 = (double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17" identifier = (binary_expression "(double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c) * dVar17" (cast_expression "(double)CONCAT44(puVar10 + 0x2c9b34,uStack_5c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar10 + 0x2c9b34,uStack_5c)" identifier (argument_list "(puVar10 + 0x2c9b34,uStack_5c)" ( (binary_expression "puVar10 + 0x2c9b34" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8);" (assignment_expression "dVar18 = (dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8)" identifier = (binary_expression "(dVar16 + dVar21 + dVar17) / *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8)" (parenthesized_expression "(dVar16 + dVar21 + dVar17)" ( (binary_expression "dVar16 + dVar21 + dVar17" (binary_expression "dVar16 + dVar21" identifier + identifier) + identifier) )) / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + -0x3cd8" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*pdStack_50 = dVar18;" (assignment_expression "*pdStack_50 = dVar18" (pointer_expression "*pdStack_50" * identifier) = identifier) ;) (if_statement "if (dVar18 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }" if (parenthesized_expression "(dVar18 <= 0.0)" ( (binary_expression "dVar18 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n          *pdStack_58 = 0.0;\n          *(double *)pcVar13 = 0.0;\n          return;\n        }" { (expression_statement "*pdStack_58 = 0.0;" (assignment_expression "*pdStack_58 = 0.0" (pointer_expression "*pdStack_58" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar13 = 0.0;" (assignment_expression "*(double *)pcVar13 = 0.0" (pointer_expression "*(double *)pcVar13" * (cast_expression "(double *)pcVar13" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "dVar19 = dVar17;" (assignment_expression "dVar19 = dVar17" identifier = identifier) ;) (if_statement "if (dVar21 < dVar17) {\n          dVar19 = dVar21;\n        }" if (parenthesized_expression "(dVar21 < dVar17)" ( (binary_expression "dVar21 < dVar17" identifier < identifier) )) (compound_statement "{\n          dVar19 = dVar21;\n        }" { (expression_statement "dVar19 = dVar21;" (assignment_expression "dVar19 = dVar21" identifier = identifier) ;) })) (if_statement "if (dVar16 < dVar19) {\n          dVar19 = dVar16;\n        }" if (parenthesized_expression "(dVar16 < dVar19)" ( (binary_expression "dVar16 < dVar19" identifier < identifier) )) (compound_statement "{\n          dVar19 = dVar16;\n        }" { (expression_statement "dVar19 = dVar16;" (assignment_expression "dVar19 = dVar16" identifier = identifier) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar11 + 0x2c2014);" (assignment_expression "pcVar14 = *(code **)(pcVar11 + 0x2c2014)" identifier = (pointer_expression "*(code **)(pcVar11 + 0x2c2014)" * (cast_expression "(code **)(pcVar11 + 0x2c2014)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c2014)" ( (binary_expression "pcVar11 + 0x2c2014" identifier + number_literal) ))))) ;) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18ec) + 0x1438)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18ec) + 0x1438" (pointer_expression "*(int *)(pcVar11 + 0x2c18ec)" * (cast_expression "(int *)(pcVar11 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18ec)" ( (binary_expression "pcVar11 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0);" (assignment_expression "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7bb0" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7bb8" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*(double *)pcVar13 = dVar25 - dVar19 / dVar18;" (assignment_expression "*(double *)pcVar13 = dVar25 - dVar19 / dVar18" (pointer_expression "*(double *)pcVar13" * (cast_expression "(double *)pcVar13" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar25 - dVar19 / dVar18" identifier - (binary_expression "dVar19 / dVar18" identifier / identifier))) ;) (expression_statement "dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400));" (assignment_expression "dVar17 = (double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400))" identifier = (cast_expression "(double)(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400))" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar14)((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400))" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "((dVar21 - dVar17) * dVar22,\n                                    ((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400))" ( (binary_expression "(dVar21 - dVar17) * dVar22" (parenthesized_expression "(dVar21 - dVar17)" ( (binary_expression "dVar21 - dVar17" identifier - identifier) )) * identifier) , (binary_expression "((red * dVar16 - dVar21) - dVar17) *\n                                    *(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400)" (parenthesized_expression "((red * dVar16 - dVar21) - dVar17)" ( (binary_expression "(red * dVar16 - dVar21) - dVar17" (parenthesized_expression "(red * dVar16 - dVar21)" ( (binary_expression "red * dVar16 - dVar21" (binary_expression "red * dVar16" identifier * identifier) - identifier) )) - identifier) )) * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18ec) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18ec) + 0x1400)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18ec) + 0x1400" (pointer_expression "*(int *)(pcVar11 + 0x2c18ec)" * (cast_expression "(int *)(pcVar11 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18ec)" ( (binary_expression "pcVar11 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ))))) ;) (expression_statement "dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0);" (assignment_expression "dVar17 = (dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0)" identifier = (binary_expression "(dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0)" (parenthesized_expression "(dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0))" ( (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7bc0" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + -0x5aa0" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar17 < 0.0) {\n          dVar17 = dVar17 + dVar25;\n        }" if (parenthesized_expression "(dVar17 < 0.0)" ( (binary_expression "dVar17 < 0.0" identifier < number_literal) )) (compound_statement "{\n          dVar17 = dVar17 + dVar25;\n        }" { (expression_statement "dVar17 = dVar17 + dVar25;" (assignment_expression "dVar17 = dVar17 + dVar25" identifier = (binary_expression "dVar17 + dVar25" identifier + identifier)) ;) })) (expression_statement "*pdStack_58 = dVar17;" (assignment_expression "*pdStack_58 = dVar17" (pointer_expression "*pdStack_58" * identifier) = identifier) ;) (return_statement "return;" return ;) })) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" identifier = (binary_expression "iVar6 + 0x7a98" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);" (call_expression "(**(code **)(pcVar11 + 0x2c2614))\n                (*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c2614))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c2614)" * (pointer_expression "*(code **)(pcVar11 + 0x2c2614)" * (cast_expression "(code **)(pcVar11 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c2614)" ( (binary_expression "pcVar11 + 0x2c2614" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar11 + 0x2c18f4) + 0x7864,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7864" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" identifier = (binary_expression "iVar6 + 0x7a98" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790);" (call_expression "(**(code **)(pcVar11 + 0x2c2614))\n              (*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c2614))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c2614)" * (pointer_expression "*(code **)(pcVar11 + 0x2c2614)" * (cast_expression "(code **)(pcVar11 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c2614)" ( (binary_expression "pcVar11 + 0x2c2614" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar11 + 0x2c18f4) + 0x7824,*(int *)(pcVar11 + 0x2c18f4) + 0x7790)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7824" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar13 = *(code **)(pcVar11 + 0x2c2614);" (assignment_expression "pcVar13 = *(code **)(pcVar11 + 0x2c2614)" identifier = (pointer_expression "*(code **)(pcVar11 + 0x2c2614)" * (cast_expression "(code **)(pcVar11 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c2614)" ( (binary_expression "pcVar11 + 0x2c2614" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = ConvertRGBToHSL;" (assignment_expression "pcVar15 = ConvertRGBToHSL" identifier = identifier) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);" (call_expression "(*pcVar13)(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar11 + 0x2c18f4) + 0x77d8,*(int *)(pcVar11 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" ( (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x77d8" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar11 + 0x2c18f4)" * (cast_expression "(int *)(pcVar11 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c18f4)" ( (binary_expression "pcVar11 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a98" identifier + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c1748);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c1748)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }\n  }" if (parenthesized_expression "(unaff_s0 == (double *)0x0)" ( (binary_expression "unaff_s0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" identifier = (binary_expression "iVar6 + 0x7a88" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6);" (call_expression "(**(code **)(pcVar13 + 0x2c2468))\n              (*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2468))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2468)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2468)" * (cast_expression "(code **)(pcVar13 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2468)" ( (binary_expression "pcVar13 + 0x2c2468" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c1748) + 0x77d8,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x77d8" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e736c:\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);" statement_identifier : (expression_statement "pcVar12 = *(code **)(pcVar13 + 0x2c2468);" (assignment_expression "pcVar12 = *(code **)(pcVar13 + 0x2c2468)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c2468)" * (cast_expression "(code **)(pcVar13 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2468)" ( (binary_expression "pcVar13 + 0x2c2468" identifier + number_literal) ))))) ;)) (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" identifier = (binary_expression "iVar6 + 0x7a88" identifier + number_literal)) ;) (expression_statement "(*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6);" (call_expression "(*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c1748) + 0x7884,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x7884" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }\n  }" else (compound_statement "{\n    pcVar12 = *(code **)(pcVar13 + 0x2c2468);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }\n  }" { (expression_statement "pcVar12 = *(code **)(pcVar13 + 0x2c2468);" (assignment_expression "pcVar12 = *(code **)(pcVar13 + 0x2c2468)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c2468)" * (cast_expression "(code **)(pcVar13 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2468)" ( (binary_expression "pcVar13 + 0x2c2468" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar14 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }" if (parenthesized_expression "((double *)pcVar14 != (double *)0x0)" ( (binary_expression "(double *)pcVar14 != (double *)0x0" (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }\n      goto LAB_000e736c;\n    }" { (if_statement "if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }" if (parenthesized_expression "(pdVar5 != (double *)0x0)" ( (binary_expression "pdVar5 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);\n        dVar21 = green * dVar18;\n        dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;\n        dVar18 = red * dVar18;\n        dVar17 = dVar16;\n        if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }\n        dVar19 = dVar18;\n        if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }\n        dVar17 = dVar21;\n        if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }\n        iVar6 = *(int *)(pcVar13 + 0x2c1740);\n        dVar22 = dVar18;\n        if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }\n        dVar17 = dVar19 - dVar22;\n        *pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);\n        if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }\n        if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }\n        dVar21 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);\n        dVar18 = *pdVar5;\n        dVar16 = dVar18 + dVar18;\n        if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }\n        *(double *)pcVar14 = dVar17 / dVar16;\n        return;\n      }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1740) + 0x1440)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1740) + 0x1440" (pointer_expression "*(int *)(pcVar13 + 0x2c1740)" * (cast_expression "(int *)(pcVar13 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1740)" ( (binary_expression "pcVar13 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = green * dVar18;" (assignment_expression "dVar21 = green * dVar18" identifier = (binary_expression "green * dVar18" identifier * identifier)) ;) (expression_statement "dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18;" (assignment_expression "dVar16 = (double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18" identifier = (binary_expression "(double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84) * dVar18" (cast_expression "(double)CONCAT44(pcVar11 + 0x2c98bc,uStack_84)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar11 + 0x2c98bc,uStack_84)" identifier (argument_list "(pcVar11 + 0x2c98bc,uStack_84)" ( (binary_expression "pcVar11 + 0x2c98bc" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "dVar18 = red * dVar18;" (assignment_expression "dVar18 = red * dVar18" identifier = (binary_expression "red * dVar18" identifier * identifier)) ;) (expression_statement "dVar17 = dVar16;" (assignment_expression "dVar17 = dVar16" identifier = identifier) ;) (if_statement "if (dVar16 < dVar21) {\n          dVar17 = dVar21;\n        }" if (parenthesized_expression "(dVar16 < dVar21)" ( (binary_expression "dVar16 < dVar21" identifier < identifier) )) (compound_statement "{\n          dVar17 = dVar21;\n        }" { (expression_statement "dVar17 = dVar21;" (assignment_expression "dVar17 = dVar21" identifier = identifier) ;) })) (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) (if_statement "if (dVar18 <= dVar17) {\n          dVar19 = dVar17;\n        }" if (parenthesized_expression "(dVar18 <= dVar17)" ( (binary_expression "dVar18 <= dVar17" identifier <= identifier) )) (compound_statement "{\n          dVar19 = dVar17;\n        }" { (expression_statement "dVar19 = dVar17;" (assignment_expression "dVar19 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar21;" (assignment_expression "dVar17 = dVar21" identifier = identifier) ;) (if_statement "if (dVar16 <= dVar21) {\n          dVar17 = dVar16;\n        }" if (parenthesized_expression "(dVar16 <= dVar21)" ( (binary_expression "dVar16 <= dVar21" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar16;\n        }" { (expression_statement "dVar17 = dVar16;" (assignment_expression "dVar17 = dVar16" identifier = identifier) ;) })) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c1740);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c1740)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c1740)" * (cast_expression "(int *)(pcVar13 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1740)" ( (binary_expression "pcVar13 + 0x2c1740" identifier + number_literal) ))))) ;) (expression_statement "dVar22 = dVar18;" (assignment_expression "dVar22 = dVar18" identifier = identifier) ;) (if_statement "if (dVar17 <= dVar18) {\n          dVar22 = dVar17;\n        }" if (parenthesized_expression "(dVar17 <= dVar18)" ( (binary_expression "dVar17 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar22 = dVar17;\n        }" { (expression_statement "dVar22 = dVar17;" (assignment_expression "dVar22 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar19 - dVar22;" (assignment_expression "dVar17 = dVar19 - dVar22" identifier = (binary_expression "dVar19 - dVar22" identifier - identifier)) ;) (expression_statement "*pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400);" (assignment_expression "*pdVar5 = (dVar19 + dVar22) * *(double *)(iVar6 + 0x1400)" (pointer_expression "*pdVar5" * identifier) = (binary_expression "(dVar19 + dVar22) * *(double *)(iVar6 + 0x1400)" (parenthesized_expression "(dVar19 + dVar22)" ( (binary_expression "dVar19 + dVar22" identifier + identifier) )) * (pointer_expression "*(double *)(iVar6 + 0x1400)" * (cast_expression "(double *)(iVar6 + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1400)" ( (binary_expression "iVar6 + 0x1400" identifier + number_literal) )))))) ;) (if_statement "if (dVar17 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }" if (parenthesized_expression "(dVar17 <= 0.0)" ( (binary_expression "dVar17 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n          *unaff_s0 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return;\n        }" { (expression_statement "*unaff_s0 = 0.0;" (assignment_expression "*unaff_s0 = 0.0" (pointer_expression "*unaff_s0" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar14 = 0.0;" (assignment_expression "*(double *)pcVar14 = 0.0" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return;" return ;) })) (if_statement "if (ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }" if (parenthesized_expression "(ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8))" ( (binary_expression "ABS(dVar19 - dVar18) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar19 - dVar18)" identifier (argument_list "(dVar19 - dVar18)" ( (binary_expression "dVar19 - dVar18" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1740)" * (cast_expression "(int *)(pcVar13 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1740)" ( (binary_expression "pcVar13 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar18 = (dVar21 - dVar16) / dVar17;\n          if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }\n        }" { (expression_statement "dVar18 = (dVar21 - dVar16) / dVar17;" (assignment_expression "dVar18 = (dVar21 - dVar16) / dVar17" identifier = (binary_expression "(dVar21 - dVar16) / dVar17" (parenthesized_expression "(dVar21 - dVar16)" ( (binary_expression "dVar21 - dVar16" identifier - identifier) )) / identifier)) ;) (if_statement "if (dVar21 < dVar16) {\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }" if (parenthesized_expression "(dVar21 < dVar16)" ( (binary_expression "dVar21 < dVar16" identifier < identifier) )) (compound_statement "{\n            dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);\n          }" { (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50)" identifier = (binary_expression "dVar18 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1748) + -0x2e50)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + -0x2e50" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) })) }) (else_clause "else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }" else (if_statement "if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)) {\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }\n        else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }" if (parenthesized_expression "(ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8))" ( (binary_expression "ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar19 - dVar21)" identifier (argument_list "(dVar19 - dVar21)" ( (binary_expression "dVar19 - dVar21" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1740) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1740)" * (cast_expression "(int *)(pcVar13 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1740)" ( (binary_expression "pcVar13 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);\n        }" { (expression_statement "dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48);" (assignment_expression "dVar18 = (dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" identifier = (binary_expression "(dVar16 - dVar18) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" (binary_expression "(dVar16 - dVar18) / dVar17" (parenthesized_expression "(dVar16 - dVar18)" ( (binary_expression "dVar16 - dVar18" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }" else (compound_statement "{\n          dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);\n        }" { (expression_statement "dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8);" (assignment_expression "dVar18 = (dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8)" identifier = (binary_expression "(dVar18 - dVar21) / dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8)" (binary_expression "(dVar18 - dVar21) / dVar17" (parenthesized_expression "(dVar18 - dVar21)" ( (binary_expression "dVar18 - dVar21" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1748) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + -0x3cc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) }))))) (expression_statement "dVar21 = *(double *)(iVar6 + 0x1400);" (assignment_expression "dVar21 = *(double *)(iVar6 + 0x1400)" identifier = (pointer_expression "*(double *)(iVar6 + 0x1400)" * (cast_expression "(double *)(iVar6 + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1400)" ( (binary_expression "iVar6 + 0x1400" identifier + number_literal) ))))) ;) (expression_statement "*unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8);" (assignment_expression "*unaff_s0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8)" (pointer_expression "*unaff_s0" * identifier) = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1748) + 0x7bc8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x7bc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar18 = *pdVar5;" (assignment_expression "dVar18 = *pdVar5" identifier = (pointer_expression "*pdVar5" * identifier)) ;) (expression_statement "dVar16 = dVar18 + dVar18;" (assignment_expression "dVar16 = dVar18 + dVar18" identifier = (binary_expression "dVar18 + dVar18" identifier + identifier)) ;) (if_statement "if (dVar21 < dVar18) {\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }" if (parenthesized_expression "(dVar21 < dVar18)" ( (binary_expression "dVar21 < dVar18" identifier < identifier) )) (compound_statement "{\n          dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;\n        }" { (expression_statement "dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16;" (assignment_expression "dVar16 = *(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16" identifier = (binary_expression "*(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48) - dVar16" (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1748) + -0x2e48)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))) - identifier)) ;) })) (expression_statement "*(double *)pcVar14 = dVar17 / dVar16;" (assignment_expression "*(double *)pcVar14 = dVar17 / dVar16" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar17 / dVar16" identifier / identifier)) ;) (return_statement "return;" return ;) })) (goto_statement "goto LAB_000e736c;" goto statement_identifier ;) })) }))) (expression_statement "pcVar11 = ConvertRGBToHSV;" (assignment_expression "pcVar11 = ConvertRGBToHSV" identifier = identifier) ;) (expression_statement "(*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);" (call_expression "(*pcVar12)(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c1748) + 0x7824,*(int *)(pcVar13 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x7824" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1748)" * (cast_expression "(int *)(pcVar13 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1748)" ( (binary_expression "pcVar13 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a88" identifier + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c1540);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c1540)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar15 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }" if (parenthesized_expression "(pdStack_a0 == (double *)0x0)" ( (binary_expression "pdStack_a0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7a78;" (assignment_expression "iVar6 = iVar6 + 0x7a78" identifier = (binary_expression "iVar6 + 0x7a78" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2260))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c2260)" * (pointer_expression "*(code **)(pcVar12 + 0x2c2260)" * (cast_expression "(code **)(pcVar12 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2260)" ( (binary_expression "pcVar12 + 0x2c2260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c1540) + 0x77d8,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e7548:\n    (**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" statement_identifier : (expression_statement "(**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" (call_expression "(**(code **)(pcVar12 + 0x2c2260))\n              (*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2260))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c2260)" * (pointer_expression "*(code **)(pcVar12 + 0x2c2260)" * (cast_expression "(code **)(pcVar12 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2260)" ( (binary_expression "pcVar12 + 0x2c2260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c1540) + 0x78a4,*(int *)(pcVar12 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x78a4" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a78" identifier + number_literal) ))) ;)) }) (else_clause "else if ((double *)pcVar15 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }" else (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }" if (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" ( (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }\n    goto LAB_000e7548;\n  }" { (if_statement "if (pdStack_98 != (double *)0x0) {\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }" if (parenthesized_expression "(pdStack_98 != (double *)0x0)" ( (binary_expression "pdStack_98 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);\n      dVar21 = green * dVar16;\n      dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;\n      dVar16 = red * dVar16;\n      dVar17 = dVar18;\n      if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }\n      dVar19 = dVar16;\n      if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }\n      dVar17 = dVar21;\n      if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }\n      dVar22 = dVar16;\n      if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }\n      dVar22 = dVar19 - dVar22;\n      *pdStack_98 = dVar19;\n      if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }\n      if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar15 = dVar22 / dVar19;\n      return;\n    }" { (expression_statement "dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440);" (assignment_expression "dVar16 = *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1538) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1538) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c1538)" * (cast_expression "(int *)(pcVar12 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1538)" ( (binary_expression "pcVar12 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = green * dVar16;" (assignment_expression "dVar21 = green * dVar16" identifier = (binary_expression "green * dVar16" identifier * identifier)) ;) (expression_statement "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16;" (assignment_expression "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16" identifier = (binary_expression "(double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4) * dVar16" (cast_expression "(double)CONCAT44(pcVar13 + 0x2c9710,uStack_a4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar13 + 0x2c9710,uStack_a4)" identifier (argument_list "(pcVar13 + 0x2c9710,uStack_a4)" ( (binary_expression "pcVar13 + 0x2c9710" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "dVar16 = red * dVar16;" (assignment_expression "dVar16 = red * dVar16" identifier = (binary_expression "red * dVar16" identifier * identifier)) ;) (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) (if_statement "if (dVar18 < dVar21) {\n        dVar17 = dVar21;\n      }" if (parenthesized_expression "(dVar18 < dVar21)" ( (binary_expression "dVar18 < dVar21" identifier < identifier) )) (compound_statement "{\n        dVar17 = dVar21;\n      }" { (expression_statement "dVar17 = dVar21;" (assignment_expression "dVar17 = dVar21" identifier = identifier) ;) })) (expression_statement "dVar19 = dVar16;" (assignment_expression "dVar19 = dVar16" identifier = identifier) ;) (if_statement "if (dVar16 <= dVar17) {\n        dVar19 = dVar17;\n      }" if (parenthesized_expression "(dVar16 <= dVar17)" ( (binary_expression "dVar16 <= dVar17" identifier <= identifier) )) (compound_statement "{\n        dVar19 = dVar17;\n      }" { (expression_statement "dVar19 = dVar17;" (assignment_expression "dVar19 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar21;" (assignment_expression "dVar17 = dVar21" identifier = identifier) ;) (if_statement "if (dVar18 <= dVar21) {\n        dVar17 = dVar18;\n      }" if (parenthesized_expression "(dVar18 <= dVar21)" ( (binary_expression "dVar18 <= dVar21" identifier <= identifier) )) (compound_statement "{\n        dVar17 = dVar18;\n      }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar22 = dVar16;" (assignment_expression "dVar22 = dVar16" identifier = identifier) ;) (if_statement "if (dVar17 <= dVar16) {\n        dVar22 = dVar17;\n      }" if (parenthesized_expression "(dVar17 <= dVar16)" ( (binary_expression "dVar17 <= dVar16" identifier <= identifier) )) (compound_statement "{\n        dVar22 = dVar17;\n      }" { (expression_statement "dVar22 = dVar17;" (assignment_expression "dVar22 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar22 = dVar19 - dVar22;" (assignment_expression "dVar22 = dVar19 - dVar22" identifier = (binary_expression "dVar19 - dVar22" identifier - identifier)) ;) (expression_statement "*pdStack_98 = dVar19;" (assignment_expression "*pdStack_98 = dVar19" (pointer_expression "*pdStack_98" * identifier) = identifier) ;) (if_statement "if (dVar22 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }" if (parenthesized_expression "(dVar22 <= 0.0)" ( (binary_expression "dVar22 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar15 = 0.0;\n        return;\n      }" { (expression_statement "*pdStack_a0 = 0.0;" (assignment_expression "*pdStack_a0 = 0.0" (pointer_expression "*pdStack_a0" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar15 = 0.0;" (assignment_expression "*(double *)pcVar15 = 0.0" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return;" return ;) })) (if_statement "if (ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }\n      else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }" if (parenthesized_expression "(ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8))" ( (binary_expression "ABS(dVar19 - dVar16) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar19 - dVar16)" identifier (argument_list "(dVar19 - dVar16)" ( (binary_expression "dVar19 - dVar16" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c1538)" * (cast_expression "(int *)(pcVar12 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1538)" ( (binary_expression "pcVar12 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        dVar17 = (dVar21 - dVar18) / dVar22;\n        if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }\n      }" { (expression_statement "dVar17 = (dVar21 - dVar18) / dVar22;" (assignment_expression "dVar17 = (dVar21 - dVar18) / dVar22" identifier = (binary_expression "(dVar21 - dVar18) / dVar22" (parenthesized_expression "(dVar21 - dVar18)" ( (binary_expression "dVar21 - dVar18" identifier - identifier) )) / identifier)) ;) (if_statement "if (dVar21 < dVar18) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }" if (parenthesized_expression "(dVar21 < dVar18)" ( (binary_expression "dVar21 < dVar18" identifier < identifier) )) (compound_statement "{\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);\n        }" { (expression_statement "dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50);" (assignment_expression "dVar17 = dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50)" identifier = (binary_expression "dVar17 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1540) + -0x2e50)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + -0x2e50" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) })) }) (else_clause "else if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }" else (if_statement "if (ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)) {\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }" if (parenthesized_expression "(ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8))" ( (binary_expression "ABS(dVar19 - dVar21) < *(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar19 - dVar21)" identifier (argument_list "(dVar19 - dVar21)" ( (binary_expression "dVar19 - dVar21" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1538) + 0x13f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c1538)" * (cast_expression "(int *)(pcVar12 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1538)" ( (binary_expression "pcVar12 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);\n      }" { (expression_statement "dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48);" (assignment_expression "dVar17 = (dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48)" identifier = (binary_expression "(dVar18 - dVar16) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48)" (binary_expression "(dVar18 - dVar16) / dVar22" (parenthesized_expression "(dVar18 - dVar16)" ( (binary_expression "dVar18 - dVar16" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1540) + -0x2e48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + -0x2e48" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }" else (compound_statement "{\n        dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);\n      }" { (expression_statement "dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8);" (assignment_expression "dVar17 = (dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8)" identifier = (binary_expression "(dVar16 - dVar21) / dVar22 + *(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8)" (binary_expression "(dVar16 - dVar21) / dVar22" (parenthesized_expression "(dVar16 - dVar21)" ( (binary_expression "dVar16 - dVar21" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1540) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + -0x3cc8" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) }))))) (expression_statement "*pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8);" (assignment_expression "*pdStack_a0 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8)" (pointer_expression "*pdStack_a0" * identifier) = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1540) + 0x7bc8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x7bc8" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*(double *)pcVar15 = dVar22 / dVar19;" (assignment_expression "*(double *)pcVar15 = dVar22 / dVar19" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar22 / dVar19" identifier / identifier)) ;) (return_statement "return;" return ;) })) (goto_statement "goto LAB_000e7548;" goto statement_identifier ;) })))) (expression_statement "pcVar13 = *(code **)(pcVar12 + 0x2c2260);" (assignment_expression "pcVar13 = *(code **)(pcVar12 + 0x2c2260)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c2260)" * (cast_expression "(code **)(pcVar12 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2260)" ( (binary_expression "pcVar12 + 0x2c2260" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = ConvertRGBToHWB;" (assignment_expression "pcVar14 = ConvertRGBToHWB" identifier = identifier) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790);" (call_expression "(*pcVar13)(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar12 + 0x2c1540) + 0x7824,*(int *)(pcVar12 + 0x2c1540) + 0x7790)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x7824" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c1540)" * (cast_expression "(int *)(pcVar12 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1540)" ( (binary_expression "pcVar12 + 0x2c1540" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar17 = (double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4);" (assignment_expression "dVar17 = (double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4)" identifier = (cast_expression "(double)CONCAT44(pcVar12 + 0x2c9508,uStack_c4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar12 + 0x2c9508,uStack_c4)" identifier (argument_list "(pcVar12 + 0x2c9508,uStack_c4)" ( (binary_expression "pcVar12 + 0x2c9508" identifier + number_literal) , identifier ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c1364);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c1364)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar13 + 0x2c1364);\n    if ((double *)pcVar11 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  }" if (parenthesized_expression "(pdStack_c0 != (double *)0x0)" ( (binary_expression "pdStack_c0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar4 = *(int *)(pcVar13 + 0x2c1364);\n    if ((double *)pcVar11 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n  }" { (expression_statement "iVar4 = *(int *)(pcVar13 + 0x2c1364);" (assignment_expression "iVar4 = *(int *)(pcVar13 + 0x2c1364)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar11 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }" if (parenthesized_expression "((double *)pcVar11 != (double *)0x0)" ( (binary_expression "(double *)pcVar11 != (double *)0x0" (cast_expression "(double *)pcVar11" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);\n    }" { (if_statement "if (pdStack_b8 != (double *)0x0) {\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }" if (parenthesized_expression "(pdStack_b8 != (double *)0x0)" ( (binary_expression "pdStack_b8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = dVar17;\n        if (green < dVar17) {\n          dVar18 = green;\n        }\n        dVar16 = red;\n        if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }\n        dVar18 = green;\n        if (green <= dVar17) {\n          dVar18 = dVar17;\n        }\n        dVar21 = red;\n        if (red <= dVar18) {\n          dVar21 = dVar18;\n        }\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);\n        dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);\n        dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar18 - dVar21 * dVar19;\n        *(double *)pcVar11 = dVar16 * dVar19;\n        if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }\n        if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);\n        return;\n      }" { (expression_statement "dVar18 = dVar17;" (assignment_expression "dVar18 = dVar17" identifier = identifier) ;) (if_statement "if (green < dVar17) {\n          dVar18 = green;\n        }" if (parenthesized_expression "(green < dVar17)" ( (binary_expression "green < dVar17" identifier < identifier) )) (compound_statement "{\n          dVar18 = green;\n        }" { (expression_statement "dVar18 = green;" (assignment_expression "dVar18 = green" identifier = identifier) ;) })) (expression_statement "dVar16 = red;" (assignment_expression "dVar16 = red" identifier = identifier) ;) (if_statement "if (dVar18 <= red) {\n          dVar16 = dVar18;\n        }" if (parenthesized_expression "(dVar18 <= red)" ( (binary_expression "dVar18 <= red" identifier <= identifier) )) (compound_statement "{\n          dVar16 = dVar18;\n        }" { (expression_statement "dVar16 = dVar18;" (assignment_expression "dVar16 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = green;" (assignment_expression "dVar18 = green" identifier = identifier) ;) (if_statement "if (green <= dVar17) {\n          dVar18 = dVar17;\n        }" if (parenthesized_expression "(green <= dVar17)" ( (binary_expression "green <= dVar17" identifier <= identifier) )) (compound_statement "{\n          dVar18 = dVar17;\n        }" { (expression_statement "dVar18 = dVar17;" (assignment_expression "dVar18 = dVar17" identifier = identifier) ;) })) (expression_statement "dVar21 = red;" (assignment_expression "dVar21 = red" identifier = identifier) ;) (if_statement "if (red <= dVar18) {\n          dVar21 = dVar18;\n        }" if (parenthesized_expression "(red <= dVar18)" ( (binary_expression "red <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar21 = dVar18;\n        }" { (expression_statement "dVar21 = dVar18;" (assignment_expression "dVar21 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c135c) + 0x1440)" ( (binary_expression "*(int *)(pcVar13 + 0x2c135c) + 0x1440" (pointer_expression "*(int *)(pcVar13 + 0x2c135c)" * (cast_expression "(int *)(pcVar13 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c135c)" ( (binary_expression "pcVar13 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c135c) + 0x1438)" ( (binary_expression "*(int *)(pcVar13 + 0x2c135c) + 0x1438" (pointer_expression "*(int *)(pcVar13 + 0x2c135c)" * (cast_expression "(int *)(pcVar13 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c135c)" ( (binary_expression "pcVar13 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c135c) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c135c) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c135c)" * (cast_expression "(int *)(pcVar13 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c135c)" ( (binary_expression "pcVar13 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_b8 = dVar18 - dVar21 * dVar19;" (assignment_expression "*pdStack_b8 = dVar18 - dVar21 * dVar19" (pointer_expression "*pdStack_b8" * identifier) = (binary_expression "dVar18 - dVar21 * dVar19" identifier - (binary_expression "dVar21 * dVar19" identifier * identifier))) ;) (expression_statement "*(double *)pcVar11 = dVar16 * dVar19;" (assignment_expression "*(double *)pcVar11 = dVar16 * dVar19" (pointer_expression "*(double *)pcVar11" * (cast_expression "(double *)pcVar11" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar16 * dVar19" identifier * identifier)) ;) (if_statement "if (ABS(dVar21 - dVar16) < dVar22) {\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }" if (parenthesized_expression "(ABS(dVar21 - dVar16) < dVar22)" ( (binary_expression "ABS(dVar21 - dVar16) < dVar22" (call_expression "ABS(dVar21 - dVar16)" identifier (argument_list "(dVar21 - dVar16)" ( (binary_expression "dVar21 - dVar16" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          *pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);\n          return;\n        }" { (expression_statement "*pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78);" (assignment_expression "*pdStack_c0 = *(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78)" (pointer_expression "*pdStack_c0" * identifier) = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c135c) + 0x1a78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c135c) + 0x1a78)" ( (binary_expression "*(int *)(pcVar13 + 0x2c135c) + 0x1a78" (pointer_expression "*(int *)(pcVar13 + 0x2c135c)" * (cast_expression "(int *)(pcVar13 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c135c)" ( (binary_expression "pcVar13 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (return_statement "return;" return ;) })) (if_statement "if (ABS(red - dVar16) < dVar22) {\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }" if (parenthesized_expression "(ABS(red - dVar16) < dVar22)" ( (binary_expression "ABS(red - dVar16) < dVar22" (call_expression "ABS(red - dVar16)" identifier (argument_list "(red - dVar16)" ( (binary_expression "red - dVar16" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          dVar17 = green - dVar17;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);\n        }" { (expression_statement "dVar17 = green - dVar17;" (assignment_expression "dVar17 = green - dVar17" identifier = (binary_expression "green - dVar17" identifier - identifier)) ;) (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1364) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1364) + -0x3cd8" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) }) (else_clause "else if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }" else (if_statement "if (ABS(green - dVar16) < dVar22) {\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }" if (parenthesized_expression "(ABS(green - dVar16) < dVar22)" ( (binary_expression "ABS(green - dVar16) < dVar22" (call_expression "ABS(green - dVar16)" identifier (argument_list "(green - dVar16)" ( (binary_expression "green - dVar16" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          dVar17 = dVar17 - red;\n          dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n        }" { (expression_statement "dVar17 = dVar17 - red;" (assignment_expression "dVar17 = dVar17 - red" identifier = (binary_expression "dVar17 - red" identifier - identifier)) ;) (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) }) (else_clause "else {\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }" else (compound_statement "{\n          dVar17 = red - green;\n          if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }\n        }" { (expression_statement "dVar17 = red - green;" (assignment_expression "dVar17 = red - green" identifier = (binary_expression "red - green" identifier - identifier)) ;) (if_statement "if (ABS(green - dVar16) < dVar22) {\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }" if (parenthesized_expression "(ABS(green - dVar16) < dVar22)" ( (binary_expression "ABS(green - dVar16) < dVar22" (call_expression "ABS(green - dVar16)" identifier (argument_list "(green - dVar16)" ( (binary_expression "green - dVar16" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);\n          }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1364) + -0x3a50)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) })) }))))) (expression_statement "*pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50);" (assignment_expression "*pdStack_c0 = (dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50)" (pointer_expression "*pdStack_c0" * identifier) = (binary_expression "(dVar18 - dVar17 / (dVar21 - dVar16)) /\n                      *(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50)" (parenthesized_expression "(dVar18 - dVar17 / (dVar21 - dVar16))" ( (binary_expression "dVar18 - dVar17 / (dVar21 - dVar16)" identifier - (binary_expression "dVar17 / (dVar21 - dVar16)" identifier / (parenthesized_expression "(dVar21 - dVar16)" ( (binary_expression "dVar21 - dVar16" identifier - identifier) )))) )) / (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1364) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1364) + -0x2e50)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1364) + -0x2e50" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) )))))) ;) (return_statement "return;" return ;) })) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0;" (assignment_expression "iVar4 = *(int *)(pcVar13 + 0x2c1364) + 0x78e0" identifier = (binary_expression "*(int *)(pcVar13 + 0x2c1364) + 0x78e0" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar13 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2084))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2084)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2084)" * (cast_expression "(code **)(pcVar13 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2084)" ( (binary_expression "pcVar13 + 0x2c2084" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x4e6,*(int *)(pcVar13 + 0x2c1364) + 0x7a68)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar13 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar13 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2084))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2084)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2084)" * (cast_expression "(code **)(pcVar13 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2084)" ( (binary_expression "pcVar13 + 0x2c2084" identifier + number_literal) ))))) )) (argument_list "(iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar13 + 0x2c1364) + 0x7a68)" ( (binary_expression "iVar4 + 0x78c0" identifier + number_literal) , identifier , number_literal , (binary_expression "*(int *)(pcVar13 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar11 = *(code **)(pcVar13 + 0x2c2084);" (assignment_expression "pcVar11 = *(code **)(pcVar13 + 0x2c2084)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c2084)" * (cast_expression "(code **)(pcVar13 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2084)" ( (binary_expression "pcVar13 + 0x2c2084" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar11)(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar13 + 0x2c1364) + 0x7a68);" (call_expression "(*pcVar11)(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar13 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar13 + 0x2c1364) + 0x7a68)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1364) + 0x77d8" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar6 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "*(int *)(pcVar13 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar13 + 0x2c1364)" * (cast_expression "(int *)(pcVar13 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1364)" ( (binary_expression "pcVar13 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar11 + 0x2c20c0))();" (assignment_expression "dVar18 = (double)(**(code **)(pcVar11 + 0x2c20c0))()" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c20c0))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c20c0))()" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c20c0)" * (cast_expression "(code **)(pcVar11 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c20c0)" ( (binary_expression "pcVar11 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c1174) + 0x1440)" ( (binary_expression "*(int *)(pcVar11 + 0x2c1174) + 0x1440" (pointer_expression "*(int *)(pcVar11 + 0x2c1174)" * (cast_expression "(int *)(pcVar11 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c1174)" ( (binary_expression "pcVar11 + 0x2c1174" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar18 = dVar18 * dVar19;" (assignment_expression "dVar18 = dVar18 * dVar19" identifier = (binary_expression "dVar18 * dVar19" identifier * identifier)) ;) (expression_statement "dVar17 = green;" (assignment_expression "dVar17 = green" identifier = identifier) ;) (expression_statement "dVar16 = (double)(**(code **)(pcVar11 + 0x2c20c0))(green);" (assignment_expression "dVar16 = (double)(**(code **)(pcVar11 + 0x2c20c0))(green)" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c20c0))(green)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c20c0))(green)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c20c0)" * (cast_expression "(code **)(pcVar11 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c20c0)" ( (binary_expression "pcVar11 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "(green)" ( identifier ))))) ;) (expression_statement "dVar16 = dVar16 * dVar19;" (assignment_expression "dVar16 = dVar16 * dVar19" identifier = (binary_expression "dVar16 * dVar19" identifier * identifier)) ;) (expression_statement "dVar21 = (double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4));" (assignment_expression "dVar21 = (double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4))" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c20c0))(CONCAT44(pcVar13 + 0x2c932c,uStack_e4))" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c20c0)" * (cast_expression "(code **)(pcVar11 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c20c0)" ( (binary_expression "pcVar11 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar13 + 0x2c932c,uStack_e4))" ( (call_expression "CONCAT44(pcVar13 + 0x2c932c,uStack_e4)" identifier (argument_list "(pcVar13 + 0x2c932c,uStack_e4)" ( (binary_expression "pcVar13 + 0x2c932c" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar21 = dVar21 * dVar19;" (assignment_expression "dVar21 = dVar21 * dVar19" identifier = (binary_expression "dVar21 * dVar19" identifier * identifier)) ;) (expression_statement "dVar19 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40);" (assignment_expression "dVar19 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40)" identifier = (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40)" (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48)" (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d38)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d38" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d48)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d48" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d40)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d40" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar22 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28);" (assignment_expression "dVar22 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28)" identifier = (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28)" (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30)" (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d20)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d20" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d30)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d30" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d28)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d28" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10);" (assignment_expression "dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10)" identifier = (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18) +\n           dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10)" (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08) +\n           dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18)" (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d08)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d08" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d18)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d18" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3d10)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3d10" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c117c);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" if (parenthesized_expression "(pdStack_e0 != (double *)0x0)" ( (binary_expression "pdStack_e0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(pcVar11 + 0x2c117c);\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" { (expression_statement "iVar6 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }" if (parenthesized_expression "((double *)pcVar14 != (double *)0x0)" ( (binary_expression "(double *)pcVar14 != (double *)0x0" (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }\n      (*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();\n    }" { (if_statement "if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }" if (parenthesized_expression "(pdStack_d8 != (double *)0x0)" ( (binary_expression "pdStack_d8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar6 = *(int *)(pcVar11 + 0x2c117c);\n        dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);\n        if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);\n        *pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;\n        *pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;\n        return;\n      }" { (expression_statement "iVar6 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8);" (assignment_expression "dVar17 = dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" identifier = (binary_expression "dVar19 / *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar17 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }" if (parenthesized_expression "(dVar17 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar17 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }" { (expression_statement "iVar4 = *(int *)(pcVar11 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar11 + 0x2c1174)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c1174)" * (cast_expression "(int *)(pcVar11 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c1174)" ( (binary_expression "pcVar11 + 0x2c1174" identifier + number_literal) ))))) ;) (expression_statement "iVar9 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar9 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);" (assignment_expression "dVar17 = ((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0)" identifier = (binary_expression "((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0)" (parenthesized_expression "((dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" (parenthesized_expression "(dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8))" ( (binary_expression "dVar19 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x39e8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) )))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar22) goto LAB_000e79e4;" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar22)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar22" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_000e79e4;" goto statement_identifier ;)) (labeled_statement "LAB_000e78cc:\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);" statement_identifier : (expression_statement "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "dVar19 = dVar18 / dVar21;" (assignment_expression "dVar19 = dVar18 / dVar21" identifier = (binary_expression "dVar18 / dVar21" identifier / identifier)) ;) (expression_statement "dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);" (assignment_expression "dVar16 = (dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0)" identifier = (binary_expression "(dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0)" (parenthesized_expression "(dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar22 * *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }" if (parenthesized_expression "(dVar19 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar19 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n            iVar2 = *(int *)(pcVar11 + 0x2c117c);\nLAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);\n            goto LAB_000e7920;\n          }" { (expression_statement "iVar2 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e7904:\n            dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);" statement_identifier : (expression_statement "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0)" identifier = (binary_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar9 + -0x3cf0)" (parenthesized_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)\n                     )" ( (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar21" (parenthesized_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8))" ( (binary_expression "dVar18 * *(double *)(iVar2 + -0x3ce8)" identifier * (pointer_expression "*(double *)(iVar2 + -0x3ce8)" * (cast_expression "(double *)(iVar2 + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3ce8)" ( (binary_expression "iVar2 + -0x3ce8" identifier + number_literal) ))))) )) / identifier) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) )))))) ;)) (goto_statement "goto LAB_000e7920;" goto statement_identifier ;) })) }) (else_clause "else {\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }" else (compound_statement "{\n          iVar4 = *(int *)(pcVar11 + 0x2c1174);\n          iVar9 = *(int *)(pcVar11 + 0x2c117c);\n          dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);\n          dVar19 = dVar18 / dVar21;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n          if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar11 + 0x2c117c);\n        }" { (expression_statement "iVar4 = *(int *)(pcVar11 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar11 + 0x2c1174)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c1174)" * (cast_expression "(int *)(pcVar11 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c1174)" ( (binary_expression "pcVar11 + 0x2c1174" identifier + number_literal) ))))) ;) (expression_statement "iVar9 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar9 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar17 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar11 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c1fb0)" ( (binary_expression "pcVar11 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar17,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (if_statement "if (dVar22 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;" if (parenthesized_expression "(dVar22 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar22 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000e78cc;" goto statement_identifier ;)) (labeled_statement "LAB_000e79e4:\n          dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );" statement_identifier : (expression_statement "dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar16 = (double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c1fb0))\n                                     (dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar11 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c1fb0)" ( (binary_expression "pcVar11 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar22,*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))) ))))) ;)) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x39e0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar18 / dVar21;" (assignment_expression "dVar19 = dVar18 / dVar21" identifier = (binary_expression "dVar18 / dVar21" identifier / identifier)) ;) (expression_statement "iVar2 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if (dVar19 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;" if (parenthesized_expression "(dVar19 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar19 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000e7904;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar11 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar11 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) ))))) ;) }))) (expression_statement "dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar18 = (double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c1fb0))(dVar19,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar11 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c1fb0)" ( (binary_expression "pcVar11 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar19,*(undefined8 *)(iVar2 + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" * (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3cf8)" ( (binary_expression "iVar2 + -0x3cf8" identifier + number_literal) )))) ))))) ;) (labeled_statement "LAB_000e7920:\n        dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);" statement_identifier : (expression_statement "dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x5ae8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c1174) + 0x1400)" ( (binary_expression "*(int *)(pcVar11 + 0x2c1174) + 0x1400" (pointer_expression "*(int *)(pcVar11 + 0x2c1174)" * (cast_expression "(int *)(pcVar11 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c1174)" ( (binary_expression "pcVar11 + 0x2c1174" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x39f8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x39f8" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c117c) + -0x39f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c117c) + -0x39f0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x39f0" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70);" (assignment_expression "*pdStack_e0 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70)" (pointer_expression "*pdStack_e0" * identifier) = (binary_expression "(dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70)" (parenthesized_expression "(dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar16 * *(double *)(iVar9 + -0x3cf0)" identifier * (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) ))))) - (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c1174) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c1174) + 0x1a70)" ( (binary_expression "*(int *)(pcVar11 + 0x2c1174) + 0x1a70" (pointer_expression "*(int *)(pcVar11 + 0x2c1174)" * (cast_expression "(int *)(pcVar11 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c1174)" ( (binary_expression "pcVar11 + 0x2c1174" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21;" (assignment_expression "*(double *)pcVar14 = ((dVar17 - dVar16) * dVar22) / dVar19 + dVar21" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((dVar17 - dVar16) * dVar22) / dVar19 + dVar21" (binary_expression "((dVar17 - dVar16) * dVar22) / dVar19" (parenthesized_expression "((dVar17 - dVar16) * dVar22)" ( (binary_expression "(dVar17 - dVar16) * dVar22" (parenthesized_expression "(dVar17 - dVar16)" ( (binary_expression "dVar17 - dVar16" identifier - identifier) )) * identifier) )) / identifier) + identifier)) ;) (expression_statement "*pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21;" (assignment_expression "*pdStack_d8 = ((dVar16 - dVar18) * dVar25) / dVar19 + dVar21" (pointer_expression "*pdStack_d8" * identifier) = (binary_expression "((dVar16 - dVar18) * dVar25) / dVar19 + dVar21" (binary_expression "((dVar16 - dVar18) * dVar25) / dVar19" (parenthesized_expression "((dVar16 - dVar18) * dVar25)" ( (binary_expression "(dVar16 - dVar18) * dVar25" (parenthesized_expression "(dVar16 - dVar18)" ( (binary_expression "dVar16 - dVar18" identifier - identifier) )) * identifier) )) / identifier) + identifier)) ;) (return_statement "return;" return ;) })) (expression_statement "(*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))();" (call_expression "(*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0))" ( (pointer_expression "*(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0)" * (cast_expression "(code *)(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c11d4) + 0x39c0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c11d4) + 0x39c0" (pointer_expression "*(int *)(pcVar11 + 0x2c11d4)" * (cast_expression "(int *)(pcVar11 + 0x2c11d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c11d4)" ( (binary_expression "pcVar11 + 0x2c11d4" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) })) (expression_statement "(**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);" (call_expression "(**(code **)(pcVar11 + 0x2c1e9c))\n              (*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c1e9c))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c1e9c)" * (pointer_expression "*(code **)(pcVar11 + 0x2c1e9c)" * (cast_expression "(code **)(pcVar11 + 0x2c1e9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c1e9c)" ( (binary_expression "pcVar11 + 0x2c1e9c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar11 + 0x2c117c) + 31000,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + 31000" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a48" identifier + number_literal) ))) ;) })) (expression_statement "pcVar13 = *(code **)(pcVar11 + 0x2c1e9c);" (assignment_expression "pcVar13 = *(code **)(pcVar11 + 0x2c1e9c)" identifier = (pointer_expression "*(code **)(pcVar11 + 0x2c1e9c)" * (cast_expression "(code **)(pcVar11 + 0x2c1e9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c1e9c)" ( (binary_expression "pcVar11 + 0x2c1e9c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar11 + 0x2c117c) + 0x7a48);" (call_expression "(*pcVar13)(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar11 + 0x2c117c) + 0x7a48)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar11 + 0x2c117c) + 0x7900,*(int *)(pcVar11 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar11 + 0x2c117c) + 0x7a48)" ( (binary_expression "*(int *)(pcVar11 + 0x2c117c) + 0x7900" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar11 + 0x2c117c) + 0x7a48" (pointer_expression "*(int *)(pcVar11 + 0x2c117c)" * (cast_expression "(int *)(pcVar11 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c117c)" ( (binary_expression "pcVar11 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pdStack_140 = (double *)((ulonglong)green >> 0x20);" (assignment_expression "pdStack_140 = (double *)((ulonglong)green >> 0x20)" identifier = (cast_expression "(double *)((ulonglong)green >> 0x20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)green >> 0x20)" ( (binary_expression "(ulonglong)green >> 0x20" (cast_expression "(ulonglong)green" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pdStack_13c = SUB84(green,0);" (assignment_expression "pdStack_13c = SUB84(green,0)" identifier = (call_expression "SUB84(green,0)" identifier (argument_list "(green,0)" ( identifier , number_literal )))) ;) (if_statement "if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;" if (parenthesized_expression "(pdStack_140 == (double *)0x0)" ( (binary_expression "pdStack_140 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e7e18;" goto statement_identifier ;)) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" if (parenthesized_expression "(pdStack_13c != (double *)0x0)" ( (binary_expression "pdStack_13c != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" { (if_statement "if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }" if (parenthesized_expression "(pdStack_138 != (double *)0x0)" ( (binary_expression "pdStack_138 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar6 = *(int *)(pcVar13 + 0x2c0e60);\n      dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);\n      dVar18 = dVar18 * dVar21;\n      dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);\n      dVar17 = dVar17 * dVar21;\n      dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));\n      dVar16 = dVar16 * dVar21;\n      dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);\n      dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);\n      dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);\n      dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);\n      if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);\nLAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);\n      dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);\n      dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);\n      dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);\n      dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);\n      dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;\n      dVar17 = (double)(*pcVar11)(dVar19,dVar18);\n      pcVar11 = *(code **)(pcVar13 + 0x2c1580);\n      *pdStack_13c = dVar17 / dVar22 + dVar25;\n      dVar17 = (double)(*pcVar11)(dVar18,dVar19);\n      dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);\n      if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar17;\n      return;\n    }" { (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))();" (assignment_expression "dVar18 = (double)(**(code **)(pcVar13 + 0x2c1da4))()" identifier = (cast_expression "(double)(**(code **)(pcVar13 + 0x2c1da4))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar13 + 0x2c1da4))()" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1da4)" * (cast_expression "(code **)(pcVar13 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1da4)" ( (binary_expression "pcVar13 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e58) + 0x1440)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e58) + 0x1440" (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar18 = dVar18 * dVar21;" (assignment_expression "dVar18 = dVar18 * dVar21" identifier = (binary_expression "dVar18 * dVar21" identifier * identifier)) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17);" (assignment_expression "dVar17 = (double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17)" identifier = (cast_expression "(double)(**(code **)(pcVar13 + 0x2c1da4))(dVar17)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar13 + 0x2c1da4))(dVar17)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1da4)" * (cast_expression "(code **)(pcVar13 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1da4)" ( (binary_expression "pcVar13 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "(dVar17)" ( identifier ))))) ;) (expression_statement "dVar17 = dVar17 * dVar21;" (assignment_expression "dVar17 = dVar17 * dVar21" identifier = (binary_expression "dVar17 * dVar21" identifier * identifier)) ;) (expression_statement "dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144));" (assignment_expression "dVar16 = (double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144))" identifier = (cast_expression "(double)(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar13 + 0x2c1da4))(CONCAT44(pcVar11 + 0x2c9144,uStack_144))" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1da4)" * (cast_expression "(code **)(pcVar13 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1da4)" ( (binary_expression "pcVar13 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar11 + 0x2c9144,uStack_144))" ( (call_expression "CONCAT44(pcVar11 + 0x2c9144,uStack_144)" identifier (argument_list "(pcVar11 + 0x2c9144,uStack_144)" ( (binary_expression "pcVar11 + 0x2c9144" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar16 = dVar16 * dVar21;" (assignment_expression "dVar16 = dVar16 * dVar21" identifier = (binary_expression "dVar16 * dVar21" identifier * identifier)) ;) (expression_statement "dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40);" (assignment_expression "dVar21 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40)" identifier = (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d38)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d38" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d48)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d48" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d40)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d40" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8);" (assignment_expression "dVar19 = dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" identifier = (binary_expression "dVar21 / *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28);" (assignment_expression "dVar22 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28)" identifier = (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d20)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d20" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d30)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d30" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d28)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d28" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10);" (assignment_expression "dVar17 = dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10)" identifier = (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18) +\n               dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08) +\n               dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d08)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d08" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d18)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d18" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3d10)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3d10" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (dVar19 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }" if (parenthesized_expression "(dVar19 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar19 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);\n      }" { (expression_statement "iVar4 = *(int *)(pcVar13 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar13 + 0x2c0e58)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) ))))) ;) (expression_statement "iVar9 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar9 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0)" identifier = (binary_expression "((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar9 + -0x3cf0)" (parenthesized_expression "((dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" (parenthesized_expression "(dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8))" ( (binary_expression "dVar21 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x39e8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }" else (compound_statement "{\n        iVar4 = *(int *)(pcVar13 + 0x2c0e58);\n        iVar9 = *(int *)(pcVar13 + 0x2c0e60);\n        dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n      }" { (expression_statement "iVar4 = *(int *)(pcVar13 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar13 + 0x2c0e58)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) ))))) ;) (expression_statement "iVar9 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar9 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar18 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1c94)" * (cast_expression "(code **)(pcVar13 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1c94)" ( (binary_expression "pcVar13 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar19,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))) ))))) ;) }))) (if_statement "if (dVar22 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }\n      else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" if (parenthesized_expression "(dVar22 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar22 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n      }" { (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = dVar17 / dVar19;" (assignment_expression "dVar21 = dVar17 / dVar19" identifier = (binary_expression "dVar17 / dVar19" identifier / identifier)) ;) (expression_statement "dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0);" (assignment_expression "dVar16 = (dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0)" identifier = (binary_expression "(dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar9 + -0x3cf0)" (parenthesized_expression "(dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar22 * *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar21) goto LAB_000e7da0;" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar21)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar21" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_000e7da0;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" else (compound_statement "{\n        dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));\n        dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);\n        dVar21 = dVar17 / dVar19;\n        iVar2 = *(int *)(pcVar13 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" { (expression_statement "dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar16 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar13 + 0x2c1c94))\n                                   (dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1c94)" * (cast_expression "(code **)(pcVar13 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1c94)" ( (binary_expression "pcVar13 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar22,*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x39e0)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = dVar17 / dVar19;" (assignment_expression "dVar21 = dVar17 / dVar19" identifier = (binary_expression "dVar17 / dVar19" identifier / identifier)) ;) (expression_statement "iVar2 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar21) {\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar21)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar21" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n          iVar2 = *(int *)(pcVar13 + 0x2c0e60);\nLAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" { (expression_statement "iVar2 = *(int *)(pcVar13 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar13 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e7da0:\n          dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));" statement_identifier : (expression_statement "dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar13 + 0x2c1c94))\n                                     (dVar21,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1c94)" * (cast_expression "(code **)(pcVar13 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1c94)" ( (binary_expression "pcVar13 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar21,*(undefined8 *)(iVar2 + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" * (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3cf8)" ( (binary_expression "iVar2 + -0x3cf8" identifier + number_literal) )))) ))))) ;)) (goto_statement "goto LAB_000e7c44;" goto statement_identifier ;) })) }))) (expression_statement "dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0);" (assignment_expression "dVar17 = ((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0)" identifier = (binary_expression "((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar9 + -0x3cf0)" (parenthesized_expression "((dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar17 * *(double *)(iVar2 + -0x3ce8)) / dVar19" (parenthesized_expression "(dVar17 * *(double *)(iVar2 + -0x3ce8))" ( (binary_expression "dVar17 * *(double *)(iVar2 + -0x3ce8)" identifier * (pointer_expression "*(double *)(iVar2 + -0x3ce8)" * (cast_expression "(double *)(iVar2 + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3ce8)" ( (binary_expression "iVar2 + -0x3ce8" identifier + number_literal) ))))) )) / identifier) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) )))))) ;) (labeled_statement "LAB_000e7c44:\n      pcVar11 = *(code **)(pcVar13 + 0x2c1c90);" statement_identifier : (expression_statement "pcVar11 = *(code **)(pcVar13 + 0x2c1c90);" (assignment_expression "pcVar11 = *(code **)(pcVar13 + 0x2c1c90)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c1c90)" * (cast_expression "(code **)(pcVar13 + 0x2c1c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1c90)" ( (binary_expression "pcVar13 + 0x2c1c90" identifier + number_literal) ))))) ;)) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x5ae8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e58) + 0x1400)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e58) + 0x1400" (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x39f0)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x39f0" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x39f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x39f8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70);" (assignment_expression "*pdStack_140 = (dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70)" (pointer_expression "*pdStack_140" * identifier) = (binary_expression "(dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70)" (parenthesized_expression "(dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar16 * *(double *)(iVar9 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar16 * *(double *)(iVar9 + -0x3cf0)" identifier * (pointer_expression "*(double *)(iVar9 + -0x3cf0)" * (cast_expression "(double *)(iVar9 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x3cf0)" ( (binary_expression "iVar9 + -0x3cf0" identifier + number_literal) ))))) - (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e58) + 0x1a70)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e58) + 0x1a70" (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22;" (assignment_expression "dVar19 = ((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22" identifier = (binary_expression "((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25) * dVar22" (parenthesized_expression "((((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25)" ( (binary_expression "(((dVar18 - dVar16) * dVar19) / dVar22 + dVar25) - dVar25" (parenthesized_expression "(((dVar18 - dVar16) * dVar19) / dVar22 + dVar25)" ( (binary_expression "((dVar18 - dVar16) * dVar19) / dVar22 + dVar25" (binary_expression "((dVar18 - dVar16) * dVar19) / dVar22" (parenthesized_expression "((dVar18 - dVar16) * dVar19)" ( (binary_expression "(dVar18 - dVar16) * dVar19" (parenthesized_expression "(dVar18 - dVar16)" ( (binary_expression "dVar18 - dVar16" identifier - identifier) )) * identifier) )) / identifier) + identifier) )) - identifier) )) * identifier)) ;) (expression_statement "dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22;" (assignment_expression "dVar18 = ((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22" identifier = (binary_expression "((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25) * dVar22" (parenthesized_expression "((((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25)" ( (binary_expression "(((dVar16 - dVar17) * dVar21) / dVar22 + dVar25) - dVar25" (parenthesized_expression "(((dVar16 - dVar17) * dVar21) / dVar22 + dVar25)" ( (binary_expression "((dVar16 - dVar17) * dVar21) / dVar22 + dVar25" (binary_expression "((dVar16 - dVar17) * dVar21) / dVar22" (parenthesized_expression "((dVar16 - dVar17) * dVar21)" ( (binary_expression "(dVar16 - dVar17) * dVar21" (parenthesized_expression "(dVar16 - dVar17)" ( (binary_expression "dVar16 - dVar17" identifier - identifier) )) * identifier) )) / identifier) + identifier) )) - identifier) )) * identifier)) ;) (expression_statement "dVar17 = (double)(*pcVar11)(dVar19,dVar18);" (assignment_expression "dVar17 = (double)(*pcVar11)(dVar19,dVar18)" identifier = (cast_expression "(double)(*pcVar11)(dVar19,dVar18)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar11)(dVar19,dVar18)" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "(dVar19,dVar18)" ( identifier , identifier ))))) ;) (expression_statement "pcVar11 = *(code **)(pcVar13 + 0x2c1580);" (assignment_expression "pcVar11 = *(code **)(pcVar13 + 0x2c1580)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c1580)" * (cast_expression "(code **)(pcVar13 + 0x2c1580)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1580)" ( (binary_expression "pcVar13 + 0x2c1580" identifier + number_literal) ))))) ;) (expression_statement "*pdStack_13c = dVar17 / dVar22 + dVar25;" (assignment_expression "*pdStack_13c = dVar17 / dVar22 + dVar25" (pointer_expression "*pdStack_13c" * identifier) = (binary_expression "dVar17 / dVar22 + dVar25" (binary_expression "dVar17 / dVar22" identifier / identifier) + identifier)) ;) (expression_statement "dVar17 = (double)(*pcVar11)(dVar18,dVar19);" (assignment_expression "dVar17 = (double)(*pcVar11)(dVar18,dVar19)" identifier = (cast_expression "(double)(*pcVar11)(dVar18,dVar19)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar11)(dVar18,dVar19)" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "(dVar18,dVar19)" ( identifier , identifier ))))) ;) (expression_statement "dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0);" (assignment_expression "dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0)" identifier = (binary_expression "((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0)" (parenthesized_expression "((dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8))" ( (binary_expression "(dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)" (parenthesized_expression "(dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0))" ( (binary_expression "dVar17 * *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e58) + 0x1ab0" (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e58) + 0x1ab8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + -0x5aa0" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar17 < 0.0) {\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }" if (parenthesized_expression "(dVar17 < 0.0)" ( (binary_expression "dVar17 < 0.0" identifier < number_literal) )) (compound_statement "{\n        dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);\n      }" { (expression_statement "dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438);" (assignment_expression "dVar17 = dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438)" identifier = (binary_expression "dVar17 + *(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c0e58) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c0e58) + 0x1438)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e58) + 0x1438" (pointer_expression "*(int *)(pcVar13 + 0x2c0e58)" * (cast_expression "(int *)(pcVar13 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e58)" ( (binary_expression "pcVar13 + 0x2c0e58" identifier + number_literal) )))) + number_literal) )))))) ;) })) (expression_statement "*pdStack_138 = dVar17;" (assignment_expression "*pdStack_138 = dVar17" (pointer_expression "*pdStack_138" * identifier) = identifier) ;) (return_statement "return;" return ;) })) (expression_statement "iVar6 = iVar6 + 0x7a34;" (assignment_expression "iVar6 = iVar6 + 0x7a34" identifier = (binary_expression "iVar6 + 0x7a34" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);" (call_expression "(**(code **)(pcVar13 + 0x2c1b80))\n              (*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1b80))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1b80)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1b80)" * (cast_expression "(code **)(pcVar13 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1b80)" ( (binary_expression "pcVar13 + 0x2c1b80" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c0e60) + 0x77d8,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x77d8" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "(**(code **)(pcVar13 + 0x2c1b80))\n            (*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);" (call_expression "(**(code **)(pcVar13 + 0x2c1b80))\n            (*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c1b80))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c1b80)" * (pointer_expression "*(code **)(pcVar13 + 0x2c1b80)" * (cast_expression "(code **)(pcVar13 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1b80)" ( (binary_expression "pcVar13 + 0x2c1b80" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c0e60) + 0x77f0,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x77f0" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a34" identifier + number_literal) ))) ;) (labeled_statement "LAB_000e7e18:\n  pcVar11 = *(code **)(pcVar13 + 0x2c1b80);" statement_identifier : (expression_statement "pcVar11 = *(code **)(pcVar13 + 0x2c1b80);" (assignment_expression "pcVar11 = *(code **)(pcVar13 + 0x2c1b80)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c1b80)" * (cast_expression "(code **)(pcVar13 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c1b80)" ( (binary_expression "pcVar13 + 0x2c1b80" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar11)(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34);" (call_expression "(*pcVar11)(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34)" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c0e60) + 0x780c,*(int *)(pcVar13 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar13 + 0x2c0e60) + 0x7a34)" ( (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x780c" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar13 + 0x2c0e60) + 0x7a34" (pointer_expression "*(int *)(pcVar13 + 0x2c0e60)" * (cast_expression "(int *)(pcVar13 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c0e60)" ( (binary_expression "pcVar13 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar11 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" if (parenthesized_expression "(pdStack_1b0 != (double *)0x0)" ( (binary_expression "pdStack_1b0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(pcVar11 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" { (expression_statement "iVar6 = *(int *)(pcVar11 + 0x2c0aac);" (assignment_expression "iVar6 = *(int *)(pcVar11 + 0x2c0aac)" identifier = (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" if (parenthesized_expression "(pdStack_1ac != (double *)0x0)" ( (binary_expression "pdStack_1ac != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" { (if_statement "if (pdStack_1a8 != (double *)0x0) {\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }" if (parenthesized_expression "(pdStack_1a8 != (double *)0x0)" ( (binary_expression "pdStack_1a8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();\n        dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);\n        dVar18 = dVar18 * dVar21;\n        dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);\n        dVar17 = dVar17 * dVar21;\n        dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));\n        dVar16 = dVar16 * dVar21;\n        dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);\n        dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);\n        dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);\n        if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;\n        if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }\n        pcVar13 = *(code **)(pcVar11 + 0x2c18dc);\n        dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);\n        dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);\n        dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);\n        dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);\n        dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);\n        dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);\n        dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);\n        dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);\n        dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);\n        dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;\n        dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;\n        dVar17 = (double)(*pcVar13)(dVar25,dVar16);\n        pcVar13 = *(code **)(pcVar11 + 0x2c11cc);\n        *pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);\n        dVar17 = (double)(*pcVar13)(dVar16,dVar25);\n        dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);\n        if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar17;\n        return;\n      }" { (expression_statement "dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))();" (assignment_expression "dVar18 = (double)(**(code **)(pcVar11 + 0x2c19f0))()" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c19f0))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c19f0))()" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c19f0)" * (cast_expression "(code **)(pcVar11 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c19f0)" ( (binary_expression "pcVar11 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1440)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1440" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar18 = dVar18 * dVar21;" (assignment_expression "dVar18 = dVar18 * dVar21" identifier = (binary_expression "dVar18 * dVar21" identifier * identifier)) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17);" (assignment_expression "dVar17 = (double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17)" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c19f0))(dVar17)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c19f0))(dVar17)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c19f0)" * (cast_expression "(code **)(pcVar11 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c19f0)" ( (binary_expression "pcVar11 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "(dVar17)" ( identifier ))))) ;) (expression_statement "dVar17 = dVar17 * dVar21;" (assignment_expression "dVar17 = dVar17 * dVar21" identifier = (binary_expression "dVar17 * dVar21" identifier * identifier)) ;) (expression_statement "dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4));" (assignment_expression "dVar16 = (double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4))" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c19f0))(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4))" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c19f0)" * (cast_expression "(code **)(pcVar11 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c19f0)" ( (binary_expression "pcVar11 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4))" ( (call_expression "CONCAT44(pcVar13 + 0x2c8e28,uStack_1b4)" identifier (argument_list "(pcVar13 + 0x2c8e28,uStack_1b4)" ( (binary_expression "pcVar13 + 0x2c8e28" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar16 = dVar16 * dVar21;" (assignment_expression "dVar16 = dVar16 * dVar21" identifier = (binary_expression "dVar16 * dVar21" identifier * identifier)) ;) (expression_statement "dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28);" (assignment_expression "dVar21 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28)" identifier = (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d20)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d20" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d30)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d30" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d28)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d28" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40);" (assignment_expression "dVar19 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40)" identifier = (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d38)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d38" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d48)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d48" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d40)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d40" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10);" (assignment_expression "dVar17 = dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10)" identifier = (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18) +\n                 dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08) +\n                 dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18)" (binary_expression "dVar16 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d08)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d08" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d18)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d18" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d10)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d10" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)) {\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }" if (parenthesized_expression "(dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00))" ( (binary_expression "dVar21 <= *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)" identifier <= (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3d00)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3d00" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);\n        }" { (expression_statement "dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8);" (assignment_expression "dVar18 = dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8)" identifier = (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3ce8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }" else (compound_statement "{\n          dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);\n        }" { (expression_statement "dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     );" (assignment_expression "dVar18 = (double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar11 + 0x2c18e0))\n                                     (dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c18e0))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c18e0)" * (pointer_expression "*(code **)(pcVar11 + 0x2c18e0)" * (cast_expression "(code **)(pcVar11 + 0x2c18e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c18e0)" ( (binary_expression "pcVar11 + 0x2c18e0" identifier + number_literal) ))))) )) (argument_list "(dVar21,*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cf8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8);" (assignment_expression "dVar18 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8)" identifier = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cf0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) - (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1ac8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) }))) (expression_statement "dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19;" (assignment_expression "dVar17 = dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0) + dVar19" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8) +\n                 dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cd8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar21 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3ce0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + identifier)) ;) (if_statement "if (0.0 <= dVar17) {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }\n        else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }" if (parenthesized_expression "(0.0 <= dVar17)" ( (binary_expression "0.0 <= dVar17" number_literal <= identifier) )) (compound_statement "{\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar17;\n        }" { (expression_statement "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dStack_208 = dVar17;" (assignment_expression "dStack_208 = dVar17" identifier = identifier) ;) }) (else_clause "else {\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }" else (compound_statement "{\n          dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar17;\n        }" { (expression_statement "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78);" (assignment_expression "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1a78" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dStack_208 = -dVar17;" (assignment_expression "dStack_208 = -dVar17" identifier = (unary_expression "-dVar17" - identifier)) ;) }))) (if_statement "if (dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)) {\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }" if (parenthesized_expression "(dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8))" ( (binary_expression "dStack_208 < *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" identifier < (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);\n        }" { (expression_statement "dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8);" (assignment_expression "dVar17 = dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" identifier = (binary_expression "dVar16 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }" else (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17;" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17" identifier = (binary_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438) / dVar17" (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))) / identifier)) ;) }))) (expression_statement "pcVar13 = *(code **)(pcVar11 + 0x2c18dc);" (assignment_expression "pcVar13 = *(code **)(pcVar11 + 0x2c18dc)" identifier = (pointer_expression "*(code **)(pcVar11 + 0x2c18dc)" * (cast_expression "(code **)(pcVar11 + 0x2c18dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c18dc)" ( (binary_expression "pcVar11 + 0x2c18dc" identifier + number_literal) ))))) ;) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cb8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98);" (assignment_expression "dVar16 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3c98)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3c98" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cb0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3c90)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3c90" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8);" (assignment_expression "dVar28 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cc8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3ca8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0);" (assignment_expression "dVar24 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cc0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0);" (assignment_expression "dVar27 = *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3ca0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0);" (assignment_expression "dVar23 = dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0)" identifier = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x3cd0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70);" (assignment_expression "*pdStack_1b0 = dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70)" (pointer_expression "*pdStack_1b0" * identifier) = (binary_expression "dVar18 / *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1a70" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25;" (assignment_expression "dVar25 = (((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25" identifier = (binary_expression "(((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20 -\n                 dVar25" (binary_expression "(((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20) * dVar20" (parenthesized_expression "(((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20)" ( (binary_expression "((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25) / dVar20" (parenthesized_expression "((dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25)" ( (binary_expression "(dVar17 * dVar28 * dVar19 - dVar24) * dVar23 + dVar25" (binary_expression "(dVar17 * dVar28 * dVar19 - dVar24) * dVar23" (parenthesized_expression "(dVar17 * dVar28 * dVar19 - dVar24)" ( (binary_expression "dVar17 * dVar28 * dVar19 - dVar24" (binary_expression "dVar17 * dVar28 * dVar19" (binary_expression "dVar17 * dVar28" identifier * identifier) * identifier) - identifier) )) * identifier) + identifier) )) / identifier) )) * identifier) - identifier)) ;) (expression_statement "dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16;" (assignment_expression "dVar16 = (((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16" identifier = (binary_expression "(((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22 -\n                 dVar16" (binary_expression "(((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22) * dVar22" (parenthesized_expression "(((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22)" ( (binary_expression "((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16) / dVar22" (parenthesized_expression "((dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16)" ( (binary_expression "(dVar17 * dVar26 * dVar21 - dVar27) * dVar23 + dVar16" (binary_expression "(dVar17 * dVar26 * dVar21 - dVar27) * dVar23" (parenthesized_expression "(dVar17 * dVar26 * dVar21 - dVar27)" ( (binary_expression "dVar17 * dVar26 * dVar21 - dVar27" (binary_expression "dVar17 * dVar26 * dVar21" (binary_expression "dVar17 * dVar26" identifier * identifier) * identifier) - identifier) )) * identifier) + identifier) )) / identifier) )) * identifier) - identifier)) ;) (expression_statement "dVar17 = (double)(*pcVar13)(dVar25,dVar16);" (assignment_expression "dVar17 = (double)(*pcVar13)(dVar25,dVar16)" identifier = (cast_expression "(double)(*pcVar13)(dVar25,dVar16)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar13)(dVar25,dVar16)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(dVar25,dVar16)" ( identifier , identifier ))))) ;) (expression_statement "pcVar13 = *(code **)(pcVar11 + 0x2c11cc);" (assignment_expression "pcVar13 = *(code **)(pcVar11 + 0x2c11cc)" identifier = (pointer_expression "*(code **)(pcVar11 + 0x2c11cc)" * (cast_expression "(code **)(pcVar11 + 0x2c11cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c11cc)" ( (binary_expression "pcVar11 + 0x2c11cc" identifier + number_literal) ))))) ;) (expression_statement "*pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400);" (assignment_expression "*pdStack_1ac = dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400)" (pointer_expression "*pdStack_1ac" * identifier) = (binary_expression "dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400)" (binary_expression "dVar17 / *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x5ae8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1400)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1400" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar17 = (double)(*pcVar13)(dVar16,dVar25);" (assignment_expression "dVar17 = (double)(*pcVar13)(dVar16,dVar25)" identifier = (cast_expression "(double)(*pcVar13)(dVar16,dVar25)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar13)(dVar16,dVar25)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(dVar16,dVar25)" ( identifier , identifier ))))) ;) (expression_statement "dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0);" (assignment_expression "dVar17 = ((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0)" identifier = (binary_expression "((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0)" (parenthesized_expression "((dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8))" ( (binary_expression "(dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)" (parenthesized_expression "(dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0))" ( (binary_expression "dVar17 * *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1ab8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + -0x5aa0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar17 < 0.0) {\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }" if (parenthesized_expression "(dVar17 < 0.0)" ( (binary_expression "dVar17 < 0.0" identifier < number_literal) )) (compound_statement "{\n          dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);\n        }" { (expression_statement "dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar17 = dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" identifier = (binary_expression "dVar17 + *(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar11 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar11 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aa4)" ( (binary_expression "pcVar11 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) })) (expression_statement "*pdStack_1a8 = dVar17;" (assignment_expression "*pdStack_1a8 = dVar17" (pointer_expression "*pdStack_1a8" * identifier) = identifier) ;) (return_statement "return;" return ;) })) (expression_statement "iVar6 = iVar6 + 0x7a20;" (assignment_expression "iVar6 = iVar6 + 0x7a20" identifier = (binary_expression "iVar6 + 0x7a20" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);" (call_expression "(**(code **)(pcVar11 + 0x2c17cc))\n                (*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c17cc))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c17cc)" * (pointer_expression "*(code **)(pcVar11 + 0x2c17cc)" * (cast_expression "(code **)(pcVar11 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c17cc)" ( (binary_expression "pcVar11 + 0x2c17cc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar11 + 0x2c0aac) + 0x77d8,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x77d8" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "(**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);" (call_expression "(**(code **)(pcVar11 + 0x2c17cc))\n              (*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c17cc))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c17cc)" * (pointer_expression "*(code **)(pcVar11 + 0x2c17cc)" * (cast_expression "(code **)(pcVar11 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c17cc)" ( (binary_expression "pcVar11 + 0x2c17cc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar11 + 0x2c0aac) + 0x77f0,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x77f0" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a20" identifier + number_literal) ))) ;) })) (expression_statement "pcVar13 = *(code **)(pcVar11 + 0x2c17cc);" (assignment_expression "pcVar13 = *(code **)(pcVar11 + 0x2c17cc)" identifier = (pointer_expression "*(code **)(pcVar11 + 0x2c17cc)" * (cast_expression "(code **)(pcVar11 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c17cc)" ( (binary_expression "pcVar11 + 0x2c17cc" identifier + number_literal) ))))) ;) (expression_statement "pdVar5 = (double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c);" (assignment_expression "pdVar5 = (double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c)" identifier = (cast_expression "(double *)(*(int *)(pcVar11 + 0x2c0aac) + 0x780c)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0aac) + 0x780c)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x780c" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar13)(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20);" (call_expression "(*pcVar13)(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(pdVar5,*(int *)(pcVar11 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar11 + 0x2c0aac) + 0x7a20)" ( identifier , (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar11 + 0x2c0aac) + 0x7a20" (pointer_expression "*(int *)(pcVar11 + 0x2c0aac)" * (cast_expression "(int *)(pcVar11 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0aac)" ( (binary_expression "pcVar11 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pdVar5 != (double *)0x0) {\n    dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    if (ABS(dVar17) < 0.0) {\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }\n    return;\n  }" if (parenthesized_expression "(pdVar5 != (double *)0x0)" ( (binary_expression "pdVar5 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    if (ABS(dVar17) < 0.0) {\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }\n    return;\n  }" { (expression_statement "dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];" (assignment_expression "dVar17 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" identifier = (binary_expression "*pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" (binary_expression "*pdVar5 * pdVar5[3]" (pointer_expression "*pdVar5" * identifier) * (subscript_expression "pdVar5[3]" identifier [ number_literal ])) - (binary_expression "pdVar5[1] * pdVar5[2]" (subscript_expression "pdVar5[1]" identifier [ number_literal ]) * (subscript_expression "pdVar5[2]" identifier [ number_literal ])))) ;) (if_statement "if (ABS(dVar17) < 0.0) {\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }" if (parenthesized_expression "(ABS(dVar17) < 0.0)" ( (binary_expression "ABS(dVar17) < 0.0" (call_expression "ABS(dVar17)" identifier (argument_list "(dVar17)" ( identifier ))) < number_literal) )) (compound_statement "{\n      (**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));\n    }" { (expression_statement "(**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17));" (call_expression "(**(code **)(pcVar13 + 0x2c12c4))(ABS(dVar17))" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c12c4))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c12c4)" * (pointer_expression "*(code **)(pcVar13 + 0x2c12c4)" * (cast_expression "(code **)(pcVar13 + 0x2c12c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c12c4)" ( (binary_expression "pcVar13 + 0x2c12c4" identifier + number_literal) ))))) )) (argument_list "(ABS(dVar17))" ( (call_expression "ABS(dVar17)" identifier (argument_list "(dVar17)" ( identifier ))) ))) ;) })) (return_statement "return;" return ;) })) (expression_statement "uVar7 = 0x5b5;" (assignment_expression "uVar7 = 0x5b5" identifier = number_literal) ;) (expression_statement "pcVar11 = *(code **)(pcVar13 + 0x2c144c);" (assignment_expression "pcVar11 = *(code **)(pcVar13 + 0x2c144c)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c144c)" * (cast_expression "(code **)(pcVar13 + 0x2c144c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c144c)" ( (binary_expression "pcVar13 + 0x2c144c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar11)(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,\n             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4);" (call_expression "(*pcVar11)(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,\n             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4)" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c072c) + 0x7930,*(int *)(pcVar13 + 0x2c072c) + 0x7790,0x5b5,\n             *(int *)(pcVar13 + 0x2c072c) + 0x7a10,pcVar13 + 0x2c86f4)" ( (binary_expression "*(int *)(pcVar13 + 0x2c072c) + 0x7930" (pointer_expression "*(int *)(pcVar13 + 0x2c072c)" * (cast_expression "(int *)(pcVar13 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c072c)" ( (binary_expression "pcVar13 + 0x2c072c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c072c) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c072c)" * (cast_expression "(int *)(pcVar13 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c072c)" ( (binary_expression "pcVar13 + 0x2c072c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar13 + 0x2c072c) + 0x7a10" (pointer_expression "*(int *)(pcVar13 + 0x2c072c)" * (cast_expression "(int *)(pcVar13 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c072c)" ( (binary_expression "pcVar13 + 0x2c072c" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar13 + 0x2c86f4" identifier + number_literal) ))) ;) (expression_statement "(**(code **)(pcVar11 + 0x2c0bf8))();" (call_expression "(**(code **)(pcVar11 + 0x2c0bf8))()" (parenthesized_expression "(**(code **)(pcVar11 + 0x2c0bf8))" ( (pointer_expression "**(code **)(pcVar11 + 0x2c0bf8)" * (pointer_expression "*(code **)(pcVar11 + 0x2c0bf8)" * (cast_expression "(code **)(pcVar11 + 0x2c0bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0x2c0bf8)" ( (binary_expression "pcVar11 + 0x2c0bf8" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (if_statement "if (uVar7 < 8) {\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();\n    return;\n  }" if (parenthesized_expression "(uVar7 < 8)" ( (binary_expression "uVar7 < 8" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n    (*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();\n    return;\n  }" { comment comment (expression_statement "(*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))();" (call_expression "(*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))()" (parenthesized_expression "(*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c))" ( (pointer_expression "*(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c)" * (parenthesized_expression "(pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c)" ( (binary_expression "pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4) + 0x2c863c" (binary_expression "pcVar11 + *(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4)" identifier + (pointer_expression "*(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4)" * (cast_expression "(int *)(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4)" ( (binary_expression "*(int *)(pcVar11 + 0x2c0674) + 0x79c0 + uVar7 * 4" (binary_expression "*(int *)(pcVar11 + 0x2c0674) + 0x79c0" (pointer_expression "*(int *)(pcVar11 + 0x2c0674)" * (cast_expression "(int *)(pcVar11 + 0x2c0674)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0x2c0674)" ( (binary_expression "pcVar11 + 0x2c0674" identifier + number_literal) )))) + number_literal) + (binary_expression "uVar7 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (return_statement "return;" return ;) })))
(translation_unit "double FUN_000e6adc(double param_1,double param_2)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}\n\n" (function_definition "double FUN_000e6adc(double param_1,double param_2)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}" primitive_type (function_declarator "FUN_000e6adc(double param_1,double param_2)" identifier (parameter_list "(double param_1,double param_2)" ( (parameter_declaration "double param_1" primitive_type identifier) , (parameter_declaration "double param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}" { (declaration "undefined1 *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "double *pdVar5;" primitive_type (pointer_declarator "*pdVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "float fVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "double *unaff_s0;" primitive_type (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "double *unaff_s1;" primitive_type (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "double *unaff_s2;" primitive_type (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "code *pcVar12;" type_identifier (pointer_declarator "*pcVar12" * identifier) ;) (declaration "code *pcVar13;" type_identifier (pointer_declarator "*pcVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "code *pcVar16;" type_identifier (pointer_declarator "*pcVar16" * identifier) ;) (declaration "double dVar17;" primitive_type identifier ;) (declaration "double dVar18;" primitive_type identifier ;) (declaration "double dVar19;" primitive_type identifier ;) (declaration "double dVar20;" primitive_type identifier ;) (declaration "double dVar21;" primitive_type identifier ;) (declaration "double dVar22;" primitive_type identifier ;) (declaration "double dVar23;" primitive_type identifier ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "double dVar26;" primitive_type identifier ;) (declaration "double dVar27;" primitive_type identifier ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "double in_stack_00000010;" primitive_type identifier ;) (declaration "double *in_stack_00000018;" primitive_type (pointer_declarator "*in_stack_00000018" * identifier) ;) (declaration "double *in_stack_0000001c;" primitive_type (pointer_declarator "*in_stack_0000001c" * identifier) ;) (declaration "double *in_stack_00000020;" primitive_type (pointer_declarator "*in_stack_00000020" * identifier) ;) (declaration "undefined4 uStack_23c;" type_identifier identifier ;) (declaration "double dStack_208;" primitive_type identifier ;) (declaration "undefined4 uStack_1b4;" type_identifier identifier ;) (declaration "double *pdStack_1b0;" primitive_type (pointer_declarator "*pdStack_1b0" * identifier) ;) (declaration "double *pdStack_1ac;" primitive_type (pointer_declarator "*pdStack_1ac" * identifier) ;) (declaration "double *pdStack_1a8;" primitive_type (pointer_declarator "*pdStack_1a8" * identifier) ;) (declaration "undefined4 uStack_144;" type_identifier identifier ;) (declaration "double *pdStack_140;" primitive_type (pointer_declarator "*pdStack_140" * identifier) ;) (declaration "double *pdStack_13c;" primitive_type (pointer_declarator "*pdStack_13c" * identifier) ;) (declaration "double *pdStack_138;" primitive_type (pointer_declarator "*pdStack_138" * identifier) ;) (declaration "undefined4 uStack_e4;" type_identifier identifier ;) (declaration "double *pdStack_e0;" primitive_type (pointer_declarator "*pdStack_e0" * identifier) ;) (declaration "double *pdStack_d8;" primitive_type (pointer_declarator "*pdStack_d8" * identifier) ;) (declaration "undefined4 uStack_c4;" type_identifier identifier ;) (declaration "double *pdStack_c0;" primitive_type (pointer_declarator "*pdStack_c0" * identifier) ;) (declaration "double *pdStack_b8;" primitive_type (pointer_declarator "*pdStack_b8" * identifier) ;) (declaration "undefined4 uStack_a4;" type_identifier identifier ;) (declaration "double *pdStack_a0;" primitive_type (pointer_declarator "*pdStack_a0" * identifier) ;) (declaration "double *pdStack_98;" primitive_type (pointer_declarator "*pdStack_98" * identifier) ;) (declaration "undefined4 uStack_84;" type_identifier identifier ;) (declaration "undefined4 uStack_5c;" type_identifier identifier ;) (declaration "double *pdStack_58;" primitive_type (pointer_declarator "*pdStack_58" * identifier) ;) (declaration "double *pdStack_50;" primitive_type (pointer_declarator "*pdStack_50" * identifier) ;) (declaration "undefined4 uStack_3c;" type_identifier identifier ;) (if_statement "if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" if (parenthesized_expression "(in_stack_00000018 == (double *)0x0)" ( (binary_expression "in_stack_00000018 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }" { (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" identifier = (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;" statement_identifier : (expression_statement "puVar9 = puVar9 + 0x7ab8;" (assignment_expression "puVar9 = puVar9 + 0x7ab8" identifier = (binary_expression "puVar9 + 0x7ab8" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" else (compound_statement "{\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" { (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = identifier) ;) (if_statement "if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }" if (parenthesized_expression "(in_stack_0000001c != (double *)0x0)" ( (binary_expression "in_stack_0000001c != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }" { (if_statement "if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }" if (parenthesized_expression "(in_stack_00000020 != (double *)0x0)" ( (binary_expression "in_stack_00000020 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }" { (expression_statement "dVar18 = in_stack_00000010;" (assignment_expression "dVar18 = in_stack_00000010" identifier = identifier) ;) (if_statement "if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }" if (parenthesized_expression "(in_stack_00000010 < param_2)" ( (binary_expression "in_stack_00000010 < param_2" identifier < identifier) )) (compound_statement "{\n          dVar18 = param_2;\n        }" { (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) })) (expression_statement "dVar19 = param_1;" (assignment_expression "dVar19 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }" if (parenthesized_expression "(param_1 <= dVar18)" ( (binary_expression "param_1 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar19 = dVar18;\n        }" { (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (if_statement "if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }" if (parenthesized_expression "(in_stack_00000010 <= param_2)" ( (binary_expression "in_stack_00000010 <= param_2" identifier <= identifier) )) (compound_statement "{\n          dVar18 = in_stack_00000010;\n        }" { (expression_statement "dVar18 = in_stack_00000010;" (assignment_expression "dVar18 = in_stack_00000010" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }" if (parenthesized_expression "(dVar18 <= param_1)" ( (binary_expression "dVar18 <= param_1" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar18;\n        }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar19 - dVar17;" (assignment_expression "dVar17 = dVar19 - dVar17" identifier = (binary_expression "dVar19 - dVar17" identifier - identifier)) ;) (expression_statement "dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);" (assignment_expression "dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x13f8)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x13f8)" ( (binary_expression "PTR_LAB_003a88e0 + 0x13f8" identifier + number_literal) ))))) ;) (if_statement "if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" if (parenthesized_expression "(dVar18 <= ABS(dVar17))" ( (binary_expression "dVar18 <= ABS(dVar17)" identifier <= (call_expression "ABS(dVar17)" identifier (argument_list "(dVar17)" ( identifier )))) )) (compound_statement "{\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" { (if_statement "if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(param_1 - dVar19) < dVar18)" ( (binary_expression "ABS(param_1 - dVar19) < dVar18" (call_expression "ABS(param_1 - dVar19)" identifier (argument_list "(param_1 - dVar19)" ( (binary_expression "param_1 - dVar19" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);" (assignment_expression "dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" identifier = (cast_expression "(double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" (parenthesized_expression "(*(code *)PTR_fmod_003a99b8)" ( (pointer_expression "*(code *)PTR_fmod_003a99b8" * (cast_expression "(code *)PTR_fmod_003a99b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" ( (binary_expression "(param_2 - in_stack_00000010) / dVar17 + dVar19" (binary_expression "(param_2 - in_stack_00000010) / dVar17" (parenthesized_expression "(param_2 - in_stack_00000010)" ( (binary_expression "param_2 - in_stack_00000010" identifier - identifier) )) / identifier) + identifier) , identifier ))))) ;) (expression_statement "dVar18 = dVar18 / dVar19;" (assignment_expression "dVar18 = dVar18 / dVar19" identifier = (binary_expression "dVar18 / dVar19" identifier / identifier)) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) (if_statement "if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(param_2 - dVar19) < dVar18)" ( (binary_expression "ABS(param_2 - dVar19) < dVar18" (call_expression "ABS(param_2 - dVar19)" identifier (argument_list "(param_2 - dVar19)" ( (binary_expression "param_2 - dVar19" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (binary_expression "((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48))" ( (binary_expression "(in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (binary_expression "(in_stack_00000010 - param_1) / dVar17" (parenthesized_expression "(in_stack_00000010 - param_1)" ( (binary_expression "in_stack_00000010 - param_1" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) )))))) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) (if_statement "if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" if (parenthesized_expression "(ABS(in_stack_00000010 - dVar19) < dVar18)" ( (binary_expression "ABS(in_stack_00000010 - dVar19) < dVar18" (call_expression "ABS(in_stack_00000010 - dVar19)" identifier (argument_list "(in_stack_00000010 - dVar19)" ( (binary_expression "in_stack_00000010 - dVar19" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" { (expression_statement "dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" identifier = (binary_expression "((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8))" ( (binary_expression "(param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar17" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" identifier + number_literal) )))))) ;) (goto_statement "goto LAB_000e6c48;" goto statement_identifier ;) })) })) (expression_statement "dVar18 = 0.0;" (assignment_expression "dVar18 = 0.0" identifier = number_literal) ;) (labeled_statement "LAB_000e6c48:\n        *in_stack_00000018 = dVar18;" statement_identifier : (expression_statement "*in_stack_00000018 = dVar18;" (assignment_expression "*in_stack_00000018 = dVar18" (pointer_expression "*in_stack_00000018" * identifier) = identifier) ;)) (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" identifier = identifier) ;) (expression_statement "dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);" (assignment_expression "dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440)" identifier = (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1440)" * (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1440)" ( (binary_expression "PTR_LAB_003a88e0 + 0x1440" identifier + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);" (assignment_expression "dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90" identifier + number_literal) ))))) ;) (expression_statement "dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" identifier = (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" * (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0" identifier + number_literal) ))))) ;) (expression_statement "*in_stack_0000001c = dVar17 * dVar19;" (assignment_expression "*in_stack_0000001c = dVar17 * dVar19" (pointer_expression "*in_stack_0000001c" * identifier) = (binary_expression "dVar17 * dVar19" identifier * identifier)) ;) (expression_statement "dVar18 = *(double *)(puVar9 + -0x3e78);" (assignment_expression "dVar18 = *(double *)(puVar9 + -0x3e78)" identifier = (pointer_expression "*(double *)(puVar9 + -0x3e78)" * (cast_expression "(double *)(puVar9 + -0x3e78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + -0x3e78)" ( (binary_expression "puVar9 + -0x3e78" identifier + number_literal) ))))) ;) (expression_statement "*in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;" (assignment_expression "*in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19" (pointer_expression "*in_stack_00000020" * identifier) = (binary_expression "(in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19" (parenthesized_expression "(in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23)" ( (binary_expression "in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23" (binary_expression "in_stack_00000010 * dVar18 + param_1 * dVar20" (binary_expression "in_stack_00000010 * dVar18" identifier * identifier) + (binary_expression "param_1 * dVar20" identifier * identifier)) + (binary_expression "param_2 * dVar23" identifier * identifier)) )) * identifier)) ;) (return_statement "return dVar18;" return identifier ;) })) (goto_statement "goto LAB_000e6d3c;" goto statement_identifier ;) })) }))) (expression_statement "pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);" (assignment_expression "pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20)" identifier = (cast_expression "(double *)((ulonglong)in_stack_00000010 >> 0x20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)in_stack_00000010 >> 0x20)" ( (binary_expression "(ulonglong)in_stack_00000010 >> 0x20" (cast_expression "(ulonglong)in_stack_00000010" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pcVar14 = FUN_000e6d7c;" (assignment_expression "pcVar14 = FUN_000e6d7c" identifier = identifier) ;) (expression_statement "puVar11 = PTR___assert_fail_003a9608;" (assignment_expression "puVar11 = PTR___assert_fail_003a9608" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" ( (pointer_expression "*(code *)PTR___assert_fail_003a9608" * (cast_expression "(code *)PTR___assert_fail_003a9608" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8)" ( (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0" identifier + number_literal) , (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "puVar9 + 0x7ab8" identifier + number_literal) ))) ;) (expression_statement "dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);" (assignment_expression "dVar18 = (double)CONCAT44(&_gp_1,uStack_3c)" identifier = (cast_expression "(double)CONCAT44(&_gp_1,uStack_3c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(&_gp_1,uStack_3c)" identifier (argument_list "(&_gp_1,uStack_3c)" ( (pointer_expression "&_gp_1" & identifier) , identifier ))))) ;) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" if (parenthesized_expression "(unaff_s0 == (double *)0x0)" ( (binary_expression "unaff_s0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8" identifier = (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x77d8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar11 + 0x2c288c))" ( (pointer_expression "**(code **)(puVar11 + 0x2c288c)" * (pointer_expression "*(code **)(puVar11 + 0x2c288c)" * (cast_expression "(code **)(puVar11 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2c288c)" ( (binary_expression "puVar11 + 0x2c288c" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;" statement_identifier : (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;)) (expression_statement "iVar4 = iVar4 + 0x7844;" (assignment_expression "iVar4 = iVar4 + 0x7844" identifier = (binary_expression "iVar4 + 0x7844" identifier + number_literal)) ;) (expression_statement "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar11 + 0x2c288c))" ( (pointer_expression "**(code **)(puVar11 + 0x2c288c)" * (pointer_expression "*(code **)(puVar11 + 0x2c288c)" * (cast_expression "(code **)(puVar11 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2c288c)" ( (binary_expression "puVar11 + 0x2c288c" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" else (compound_statement "{\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" { (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }" if (parenthesized_expression "(unaff_s1 != (double *)0x0)" ( (binary_expression "unaff_s1 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }" { (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }" if (parenthesized_expression "(unaff_s2 != (double *)0x0)" ( (binary_expression "unaff_s2 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }" { (expression_statement "*(undefined4 *)((int)unaff_s0 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s0 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s0 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s0 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s0 + 4)" ( (binary_expression "(int)unaff_s0 + 4" (cast_expression "(int)unaff_s0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s0 = 0;" (assignment_expression "*(undefined4 *)unaff_s0 = 0" (pointer_expression "*(undefined4 *)unaff_s0" * (cast_expression "(undefined4 *)unaff_s0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)unaff_s1 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s1 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s1 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s1 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s1 + 4)" ( (binary_expression "(int)unaff_s1 + 4" (cast_expression "(int)unaff_s1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s1 = 0;" (assignment_expression "*(undefined4 *)unaff_s1 = 0" (pointer_expression "*(undefined4 *)unaff_s1" * (cast_expression "(undefined4 *)unaff_s1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "*(undefined4 *)((int)unaff_s2 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s2 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s2 + 4)" * (cast_expression "(undefined4 *)((int)unaff_s2 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s2 + 4)" ( (binary_expression "(int)unaff_s2 + 4" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)unaff_s2 = 0;" (assignment_expression "*(undefined4 *)unaff_s2 = 0" (pointer_expression "*(undefined4 *)unaff_s2" * (cast_expression "(undefined4 *)unaff_s2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" identifier = identifier) ;) (if_statement "if (param_1 < param_2) {\n          dVar19 = param_1;\n        }" if (parenthesized_expression "(param_1 < param_2)" ( (binary_expression "param_1 < param_2" identifier < identifier) )) (compound_statement "{\n          dVar19 = param_1;\n        }" { (expression_statement "dVar19 = param_1;" (assignment_expression "dVar19 = param_1" identifier = identifier) ;) })) (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) (if_statement "if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }" if (parenthesized_expression "(dVar19 <= dVar18)" ( (binary_expression "dVar19 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar19;\n        }" { (expression_statement "dVar17 = dVar19;" (assignment_expression "dVar17 = dVar19" identifier = identifier) ;) })) (expression_statement "uVar3 = SUB84(param_2,0);" (assignment_expression "uVar3 = SUB84(param_2,0)" identifier = (call_expression "SUB84(param_2,0)" identifier (argument_list "(param_2,0)" ( identifier , number_literal )))) ;) (if_statement "if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" if (parenthesized_expression "(param_2 < param_1)" ( (binary_expression "param_2 < param_1" identifier < identifier) )) (compound_statement "{\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }" { (expression_statement "uVar3 = SUB84(param_1,0);" (assignment_expression "uVar3 = SUB84(param_1,0)" identifier = (call_expression "SUB84(param_1,0)" identifier (argument_list "(param_1,0)" ( identifier , number_literal )))) ;) (expression_statement "puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20)" identifier = (cast_expression "(undefined1 *)((ulonglong)param_1 >> 0x20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)param_1 >> 0x20)" ( (binary_expression "(ulonglong)param_1 >> 0x20" (cast_expression "(ulonglong)param_1" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) }) (else_clause "else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" else (compound_statement "{\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" { (expression_statement "puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20)" identifier = (cast_expression "(undefined1 *)((ulonglong)param_2 >> 0x20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)param_2 >> 0x20)" ( (binary_expression "(ulonglong)param_2 >> 0x20" (cast_expression "(ulonglong)param_2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) }))) (if_statement "if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }" if (parenthesized_expression "((double)CONCAT44(puVar1,uVar3) < dVar18)" ( (binary_expression "(double)CONCAT44(puVar1,uVar3) < dVar18" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) < identifier) )) (compound_statement "{\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }" { (expression_statement "puVar1 = &_gp_1;" (assignment_expression "puVar1 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (expression_statement "uVar3 = uStack_3c;" (assignment_expression "uVar3 = uStack_3c" identifier = identifier) ;) })) (expression_statement "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);" (assignment_expression "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" identifier = (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b64) + 0x13f8" (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }" if (parenthesized_expression "(dVar19 <= ABS((double)CONCAT44(puVar1,uVar3)))" ( (binary_expression "dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))" identifier <= (call_expression "ABS((double)CONCAT44(puVar1,uVar3))" identifier (argument_list "((double)CONCAT44(puVar1,uVar3))" ( (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) )))) )) (compound_statement "{\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }" { (expression_statement "dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;" (assignment_expression "dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17" identifier = (binary_expression "(double)CONCAT44(puVar1,uVar3) - dVar17" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) - identifier)) ;) (expression_statement "dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b64) + 0x1440" (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);" (assignment_expression "*unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3)" (pointer_expression "*unaff_s1" * identifier) = (binary_expression "dVar17 / (double)CONCAT44(puVar1,uVar3)" identifier / (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))))) ;) (expression_statement "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;" (assignment_expression "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20" (pointer_expression "*unaff_s2" * identifier) = (binary_expression "(double)CONCAT44(puVar1,uVar3) * dVar20" (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier )))) * identifier)) ;) (if_statement "if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }" if (parenthesized_expression "(dVar19 <= ABS(dVar17))" ( (binary_expression "dVar19 <= ABS(dVar17)" identifier <= (call_expression "ABS(dVar17)" identifier (argument_list "(dVar17)" ( identifier )))) )) (compound_statement "{\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }" { (if_statement "if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" if (parenthesized_expression "(dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3)))" ( (binary_expression "dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))" identifier <= (call_expression "ABS(param_1 - (double)CONCAT44(puVar1,uVar3))" identifier (argument_list "(param_1 - (double)CONCAT44(puVar1,uVar3))" ( (binary_expression "param_1 - (double)CONCAT44(puVar1,uVar3)" identifier - (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier ))))) )))) )) (compound_statement "{\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" { (if_statement "if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" if (parenthesized_expression "(ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19)" ( (binary_expression "ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19" (call_expression "ABS(param_2 - (double)CONCAT44(puVar1,uVar3))" identifier (argument_list "(param_2 - (double)CONCAT44(puVar1,uVar3))" ( (binary_expression "param_2 - (double)CONCAT44(puVar1,uVar3)" identifier - (cast_expression "(double)CONCAT44(puVar1,uVar3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar1,uVar3)" identifier (argument_list "(puVar1,uVar3)" ( identifier , identifier ))))) ))) < identifier) )) (compound_statement "{\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }" { (expression_statement "dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);" (assignment_expression "dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" identifier = (binary_expression "(dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (binary_expression "(dVar18 - param_1) / dVar17" (parenthesized_expression "(dVar18 - param_1)" ( (binary_expression "dVar18 - param_1" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e48" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }) (else_clause "else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" else (compound_statement "{\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" { (expression_statement "dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);" (assignment_expression "dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" identifier = (binary_expression "(param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar17" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }))) (expression_statement "dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" identifier = (binary_expression "dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" identifier / (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b64)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) ))))) ;) }) (else_clause "else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" else (compound_statement "{\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" { (expression_statement "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" identifier = (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" * (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" ( (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = (param_2 - dVar18) / dVar17;" (assignment_expression "dVar17 = (param_2 - dVar18) / dVar17" identifier = (binary_expression "(param_2 - dVar18) / dVar17" (parenthesized_expression "(param_2 - dVar18)" ( (binary_expression "param_2 - dVar18" identifier - identifier) )) / identifier)) ;) (expression_statement "*unaff_s0 = dVar17;" (assignment_expression "*unaff_s0 = dVar17" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) (expression_statement "dVar18 = dVar17 / dVar19;" (assignment_expression "dVar18 = dVar17 / dVar19" identifier = (binary_expression "dVar17 / dVar19" identifier / identifier)) ;) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b64)" identifier = (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" * (cast_expression "(int *)(puVar11 + 0x2c1b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b64)" ( (binary_expression "puVar11 + 0x2c1b64" identifier + number_literal) ))))) ;) }))) (if_statement "if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }" { (expression_statement "dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(iVar6 + 0x1438)" identifier = (binary_expression "dVar18 + *(double *)(iVar6 + 0x1438)" identifier + (pointer_expression "*(double *)(iVar6 + 0x1438)" * (cast_expression "(double *)(iVar6 + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1438)" ( (binary_expression "iVar6 + 0x1438" identifier + number_literal) )))))) ;) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }) (else_clause "else {\n              *unaff_s0 = dVar18;\n            }" else (compound_statement "{\n              *unaff_s0 = dVar18;\n            }" { (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" * identifier) = identifier) ;) }))) })) })) (return_statement "return dVar18;" return identifier ;) })) (goto_statement "goto LAB_000e6fbc;" goto statement_identifier ;) })) }))) (expression_statement "pcVar12 = *(code **)(puVar11 + 0x2c288c);" (assignment_expression "pcVar12 = *(code **)(puVar11 + 0x2c288c)" identifier = (pointer_expression "*(code **)(puVar11 + 0x2c288c)" * (cast_expression "(code **)(puVar11 + 0x2c288c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + 0x2c288c)" ( (binary_expression "puVar11 + 0x2c288c" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = FUN_000e6ff4;" (assignment_expression "pcVar15 = FUN_000e6ff4" identifier = identifier) ;) (expression_statement "(*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" ( (binary_expression "iVar4 + 0x7824" identifier + number_literal) , (binary_expression "iVar6 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" * (cast_expression "(int *)(puVar11 + 0x2c1b6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0x2c1b6c)" ( (binary_expression "puVar11 + 0x2c1b6c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c18f4);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c18f4)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }" if (parenthesized_expression "(pdStack_58 != (double *)0x0)" ( (binary_expression "pdStack_58 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }" { (if_statement "if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" if (parenthesized_expression "((double *)pcVar14 != (double *)0x0)" ( (binary_expression "(double *)pcVar14 != (double *)0x0" (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" { (if_statement "if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }" if (parenthesized_expression "(pdStack_50 != (double *)0x0)" ( (binary_expression "pdStack_50 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" * (cast_expression "(int *)(pcVar12 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18ec)" ( (binary_expression "pcVar12 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = param_1 * dVar18;" (assignment_expression "dVar17 = param_1 * dVar18" identifier = (binary_expression "param_1 * dVar18" identifier * identifier)) ;) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" identifier = (binary_expression "param_2 * dVar18" identifier * identifier)) ;) (expression_statement "dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;" (assignment_expression "dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18" identifier = (binary_expression "(double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18" (cast_expression "(double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(puVar11 + 0x2c9b34,uStack_5c)" identifier (argument_list "(puVar11 + 0x2c9b34,uStack_5c)" ( (binary_expression "puVar11 + 0x2c9b34" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);" (assignment_expression "dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" identifier = (binary_expression "(dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (parenthesized_expression "(dVar17 + param_2 + dVar18)" ( (binary_expression "dVar17 + param_2 + dVar18" (binary_expression "dVar17 + param_2" identifier + identifier) + identifier) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*pdStack_50 = dVar19;" (assignment_expression "*pdStack_50 = dVar19" (pointer_expression "*pdStack_50" * identifier) = identifier) ;) (if_statement "if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }" if (parenthesized_expression "(dVar19 <= 0.0)" ( (binary_expression "dVar19 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }" { (expression_statement "*pdStack_58 = 0.0;" (assignment_expression "*pdStack_58 = 0.0" (pointer_expression "*pdStack_58" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar14 = 0.0;" (assignment_expression "*(double *)pcVar14 = 0.0" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" identifier = identifier) ;) (if_statement "if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }" if (parenthesized_expression "(param_2 < dVar18)" ( (binary_expression "param_2 < dVar18" identifier < identifier) )) (compound_statement "{\n          dVar20 = param_2;\n        }" { (expression_statement "dVar20 = param_2;" (assignment_expression "dVar20 = param_2" identifier = identifier) ;) })) (if_statement "if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }" if (parenthesized_expression "(dVar17 < dVar20)" ( (binary_expression "dVar17 < dVar20" identifier < identifier) )) (compound_statement "{\n          dVar20 = dVar17;\n        }" { (expression_statement "dVar20 = dVar17;" (assignment_expression "dVar20 = dVar17" identifier = identifier) ;) })) (expression_statement "pcVar15 = *(code **)(pcVar12 + 0x2c2014);" (assignment_expression "pcVar15 = *(code **)(pcVar12 + 0x2c2014)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c2014)" * (cast_expression "(code **)(pcVar12 + 0x2c2014)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2014)" ( (binary_expression "pcVar12 + 0x2c2014" identifier + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" * (cast_expression "(int *)(pcVar12 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18ec)" ( (binary_expression "pcVar12 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*(double *)pcVar14 = dVar26 - dVar20 / dVar19;" (assignment_expression "*(double *)pcVar14 = dVar26 - dVar20 / dVar19" (pointer_expression "*(double *)pcVar14" * (cast_expression "(double *)pcVar14" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar26 - dVar20 / dVar19" identifier - (binary_expression "dVar20 / dVar19" identifier / identifier))) ;) (expression_statement "dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));" (assignment_expression "dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" identifier = (cast_expression "(double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" ( (binary_expression "(param_2 - dVar18) * dVar23" (parenthesized_expression "(param_2 - dVar18)" ( (binary_expression "param_2 - dVar18" identifier - identifier) )) * identifier) , (binary_expression "((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" (parenthesized_expression "((param_1 * dVar17 - param_2) - dVar18)" ( (binary_expression "(param_1 * dVar17 - param_2) - dVar18" (parenthesized_expression "(param_1 * dVar17 - param_2)" ( (binary_expression "param_1 * dVar17 - param_2" (binary_expression "param_1 * dVar17" identifier * identifier) - identifier) )) - identifier) )) * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" * (cast_expression "(int *)(pcVar12 + 0x2c18ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18ec)" ( (binary_expression "pcVar12 + 0x2c18ec" identifier + number_literal) )))) + number_literal) ))))) ))))) ;) (expression_statement "dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);" (assignment_expression "dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" identifier = (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0))" ( (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n          dVar18 = dVar18 + dVar26;\n        }" { (expression_statement "dVar18 = dVar18 + dVar26;" (assignment_expression "dVar18 = dVar18 + dVar26" identifier = (binary_expression "dVar18 + dVar26" identifier + identifier)) ;) })) (expression_statement "*pdStack_58 = dVar18;" (assignment_expression "*pdStack_58 = dVar18" (pointer_expression "*pdStack_58" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" identifier = (binary_expression "iVar6 + 0x7a98" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2614))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c2614)" * (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" * (cast_expression "(code **)(pcVar12 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2614)" ( (binary_expression "pcVar12 + 0x2c2614" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7864" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" identifier = (binary_expression "iVar6 + 0x7a98" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);" (call_expression "(**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2614))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c2614)" * (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" * (cast_expression "(code **)(pcVar12 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2614)" ( (binary_expression "pcVar12 + 0x2c2614" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7824" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c2614);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c2614)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" * (cast_expression "(code **)(pcVar12 + 0x2c2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c2614)" ( (binary_expression "pcVar12 + 0x2c2614" identifier + number_literal) ))))) ;) (expression_statement "pcVar16 = ConvertRGBToHSL;" (assignment_expression "pcVar16 = ConvertRGBToHSL" identifier = identifier) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);" (call_expression "(*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" ( (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" * (cast_expression "(int *)(pcVar12 + 0x2c18f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c18f4)" ( (binary_expression "pcVar12 + 0x2c18f4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a98" identifier + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1748);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1748)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) ))))) ;) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" if (parenthesized_expression "(unaff_s0 == (double *)0x0)" ( (binary_expression "unaff_s0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" identifier = (binary_expression "iVar6 + 0x7a88" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);" (call_expression "(**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2468))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c2468)" * (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" * (cast_expression "(code **)(pcVar14 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2468)" ( (binary_expression "pcVar14 + 0x2c2468" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);" statement_identifier : (expression_statement "pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (assignment_expression "pcVar13 = *(code **)(pcVar14 + 0x2c2468)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" * (cast_expression "(code **)(pcVar14 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2468)" ( (binary_expression "pcVar14 + 0x2c2468" identifier + number_literal) ))))) ;)) (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" identifier = (binary_expression "iVar6 + 0x7a88" identifier + number_literal)) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);" (call_expression "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7884" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) }) (else_clause "else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" else (compound_statement "{\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" { (expression_statement "pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (assignment_expression "pcVar13 = *(code **)(pcVar14 + 0x2c2468)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" * (cast_expression "(code **)(pcVar14 + 0x2c2468)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2468)" ( (binary_expression "pcVar14 + 0x2c2468" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }" if (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" ( (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }" { (if_statement "if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }" if (parenthesized_expression "(pdVar5 != (double *)0x0)" ( (binary_expression "pdVar5 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" identifier = (binary_expression "param_2 * dVar18" identifier * identifier)) ;) (expression_statement "dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;" (assignment_expression "dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18" identifier = (binary_expression "(double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18" (cast_expression "(double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar12 + 0x2c98bc,uStack_84)" identifier (argument_list "(pcVar12 + 0x2c98bc,uStack_84)" ( (binary_expression "pcVar12 + 0x2c98bc" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "param_1 = param_1 * dVar18;" (assignment_expression "param_1 = param_1 * dVar18" identifier = (binary_expression "param_1 * dVar18" identifier * identifier)) ;) (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) (if_statement "if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }" if (parenthesized_expression "(dVar19 < param_2)" ( (binary_expression "dVar19 < param_2" identifier < identifier) )) (compound_statement "{\n          dVar18 = param_2;\n        }" { (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }" if (parenthesized_expression "(param_1 <= dVar18)" ( (binary_expression "param_1 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar18;\n        }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (if_statement "if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }" if (parenthesized_expression "(dVar19 <= param_2)" ( (binary_expression "dVar19 <= param_2" identifier <= identifier) )) (compound_statement "{\n          dVar18 = dVar19;\n        }" { (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) })) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1740);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1740)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) ))))) ;) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" identifier = identifier) ;) (if_statement "if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }" if (parenthesized_expression "(dVar18 <= param_1)" ( (binary_expression "dVar18 <= param_1" identifier <= identifier) )) (compound_statement "{\n          dVar20 = dVar18;\n        }" { (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = dVar17 - dVar20;" (assignment_expression "dVar18 = dVar17 - dVar20" identifier = (binary_expression "dVar17 - dVar20" identifier - identifier)) ;) (expression_statement "*pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);" (assignment_expression "*pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400)" (pointer_expression "*pdVar5" * identifier) = (binary_expression "(dVar17 + dVar20) * *(double *)(iVar6 + 0x1400)" (parenthesized_expression "(dVar17 + dVar20)" ( (binary_expression "dVar17 + dVar20" identifier + identifier) )) * (pointer_expression "*(double *)(iVar6 + 0x1400)" * (cast_expression "(double *)(iVar6 + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1400)" ( (binary_expression "iVar6 + 0x1400" identifier + number_literal) )))))) ;) (if_statement "if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }" if (parenthesized_expression "(dVar18 <= 0.0)" ( (binary_expression "dVar18 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }" { (expression_statement "*unaff_s0 = 0.0;" (assignment_expression "*unaff_s0 = 0.0" (pointer_expression "*unaff_s0" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar15 = 0.0;" (assignment_expression "*(double *)pcVar15 = 0.0" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return dVar18;" return identifier ;) })) (if_statement "if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" if (parenthesized_expression "(ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar17 - param_1)" identifier (argument_list "(dVar17 - param_1)" ( (binary_expression "dVar17 - param_1" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }" { (expression_statement "dVar17 = (param_2 - dVar19) / dVar18;" (assignment_expression "dVar17 = (param_2 - dVar19) / dVar18" identifier = (binary_expression "(param_2 - dVar19) / dVar18" (parenthesized_expression "(param_2 - dVar19)" ( (binary_expression "param_2 - dVar19" identifier - identifier) )) / identifier)) ;) (if_statement "if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }" if (parenthesized_expression "(param_2 < dVar19)" ( (binary_expression "param_2 < dVar19" identifier < identifier) )) (compound_statement "{\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }" { (expression_statement "dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);" (assignment_expression "dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" identifier = (binary_expression "dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e50" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) })) }) (else_clause "else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" else (if_statement "if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" if (parenthesized_expression "(ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar17 - param_2)" identifier (argument_list "(dVar17 - param_2)" ( (binary_expression "dVar17 - param_2" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" * (cast_expression "(int *)(pcVar14 + 0x2c1740)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1740)" ( (binary_expression "pcVar14 + 0x2c1740" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }" { (expression_statement "dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;" (assignment_expression "dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" identifier = (binary_expression "(dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (binary_expression "(dVar19 - param_1) / dVar18" (parenthesized_expression "(dVar19 - param_1)" ( (binary_expression "dVar19 - param_1" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" else (compound_statement "{\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" { (expression_statement "dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);" (assignment_expression "dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" identifier = (binary_expression "(param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar18" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x3cc8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) }))))) (expression_statement "dVar20 = *(double *)(iVar6 + 0x1400);" (assignment_expression "dVar20 = *(double *)(iVar6 + 0x1400)" identifier = (pointer_expression "*(double *)(iVar6 + 0x1400)" * (cast_expression "(double *)(iVar6 + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x1400)" ( (binary_expression "iVar6 + 0x1400" identifier + number_literal) ))))) ;) (expression_statement "*unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);" (assignment_expression "*unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (pointer_expression "*unaff_s0" * identifier) = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7bc8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar19 = *pdVar5;" (assignment_expression "dVar19 = *pdVar5" identifier = (pointer_expression "*pdVar5" * identifier)) ;) (expression_statement "dVar17 = dVar19 + dVar19;" (assignment_expression "dVar17 = dVar19 + dVar19" identifier = (binary_expression "dVar19 + dVar19" identifier + identifier)) ;) (if_statement "if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }" if (parenthesized_expression "(dVar20 < dVar19)" ( (binary_expression "dVar20 < dVar19" identifier < identifier) )) (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17" identifier = (binary_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17" (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) )))) - identifier)) ;) })) (expression_statement "*(double *)pcVar15 = dVar18 / dVar17;" (assignment_expression "*(double *)pcVar15 = dVar18 / dVar17" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar18 / dVar17" identifier / identifier)) ;) (return_statement "return dVar18 / dVar17;" return (binary_expression "dVar18 / dVar17" identifier / identifier) ;) })) (goto_statement "goto LAB_000e736c;" goto statement_identifier ;) })) }))) (expression_statement "pcVar12 = FUN_000e73a8;" (assignment_expression "pcVar12 = FUN_000e73a8" identifier = identifier) ;) (expression_statement "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);" (call_expression "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7824" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" * (cast_expression "(int *)(pcVar14 + 0x2c1748)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1748)" ( (binary_expression "pcVar14 + 0x2c1748" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a88" identifier + number_literal) ))) ;) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c1540);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c1540)" identifier = (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" if (parenthesized_expression "(pdStack_a0 == (double *)0x0)" ( (binary_expression "pdStack_a0 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }" { (expression_statement "iVar6 = iVar6 + 0x7a78;" (assignment_expression "iVar6 = iVar6 + 0x7a78" identifier = (binary_expression "iVar6 + 0x7a78" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);" (call_expression "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2260))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2260)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" * (cast_expression "(code **)(pcVar13 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2260)" ( (binary_expression "pcVar13 + 0x2c2260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x77d8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" statement_identifier : (expression_statement "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" (call_expression "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2260))" ( (pointer_expression "**(code **)(pcVar13 + 0x2c2260)" * (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" * (cast_expression "(code **)(pcVar13 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2260)" ( (binary_expression "pcVar13 + 0x2c2260" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x78a4" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a78" identifier + number_literal) ))) ;)) }) (else_clause "else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" else (if_statement "if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" if (parenthesized_expression "((double *)pcVar16 != (double *)0x0)" ( (binary_expression "(double *)pcVar16 != (double *)0x0" (cast_expression "(double *)pcVar16" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" { (if_statement "if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }" if (parenthesized_expression "(pdStack_98 != (double *)0x0)" ( (binary_expression "pdStack_98 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x1440" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" * (cast_expression "(int *)(pcVar13 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1538)" ( (binary_expression "pcVar13 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" identifier = (binary_expression "param_2 * dVar18" identifier * identifier)) ;) (expression_statement "dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;" (assignment_expression "dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18" identifier = (binary_expression "(double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18" (cast_expression "(double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar14 + 0x2c9710,uStack_a4)" identifier (argument_list "(pcVar14 + 0x2c9710,uStack_a4)" ( (binary_expression "pcVar14 + 0x2c9710" identifier + number_literal) , identifier )))) * identifier)) ;) (expression_statement "param_1 = param_1 * dVar18;" (assignment_expression "param_1 = param_1 * dVar18" identifier = (binary_expression "param_1 * dVar18" identifier * identifier)) ;) (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) (if_statement "if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }" if (parenthesized_expression "(dVar19 < param_2)" ( (binary_expression "dVar19 < param_2" identifier < identifier) )) (compound_statement "{\n        dVar18 = param_2;\n      }" { (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }" if (parenthesized_expression "(param_1 <= dVar18)" ( (binary_expression "param_1 <= dVar18" identifier <= identifier) )) (compound_statement "{\n        dVar17 = dVar18;\n      }" { (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (if_statement "if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }" if (parenthesized_expression "(dVar19 <= param_2)" ( (binary_expression "dVar19 <= param_2" identifier <= identifier) )) (compound_statement "{\n        dVar18 = dVar19;\n      }" { (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" identifier = identifier) ;) })) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" identifier = identifier) ;) (if_statement "if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }" if (parenthesized_expression "(dVar18 <= param_1)" ( (binary_expression "dVar18 <= param_1" identifier <= identifier) )) (compound_statement "{\n        dVar20 = dVar18;\n      }" { (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar20 = dVar17 - dVar20;" (assignment_expression "dVar20 = dVar17 - dVar20" identifier = (binary_expression "dVar17 - dVar20" identifier - identifier)) ;) (expression_statement "*pdStack_98 = dVar17;" (assignment_expression "*pdStack_98 = dVar17" (pointer_expression "*pdStack_98" * identifier) = identifier) ;) (if_statement "if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }" if (parenthesized_expression "(dVar20 <= 0.0)" ( (binary_expression "dVar20 <= 0.0" identifier <= number_literal) )) (compound_statement "{\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }" { (expression_statement "*pdStack_a0 = 0.0;" (assignment_expression "*pdStack_a0 = 0.0" (pointer_expression "*pdStack_a0" * identifier) = number_literal) ;) (expression_statement "*(double *)pcVar16 = 0.0;" (assignment_expression "*(double *)pcVar16 = 0.0" (pointer_expression "*(double *)pcVar16" * (cast_expression "(double *)pcVar16" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (return_statement "return dVar19;" return identifier ;) })) (if_statement "if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" if (parenthesized_expression "(ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar17 - param_1)" identifier (argument_list "(dVar17 - param_1)" ( (binary_expression "dVar17 - param_1" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" * (cast_expression "(int *)(pcVar13 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1538)" ( (binary_expression "pcVar13 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }" { (expression_statement "dVar18 = (param_2 - dVar19) / dVar20;" (assignment_expression "dVar18 = (param_2 - dVar19) / dVar20" identifier = (binary_expression "(param_2 - dVar19) / dVar20" (parenthesized_expression "(param_2 - dVar19)" ( (binary_expression "param_2 - dVar19" identifier - identifier) )) / identifier)) ;) (if_statement "if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }" if (parenthesized_expression "(param_2 < dVar19)" ( (binary_expression "param_2 < dVar19" identifier < identifier) )) (compound_statement "{\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }" { (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x2e50" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar18 = dVar18 + dVar19;" (assignment_expression "dVar18 = dVar18 + dVar19" identifier = (binary_expression "dVar18 + dVar19" identifier + identifier)) ;) })) }) (else_clause "else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" else (if_statement "if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" if (parenthesized_expression "(ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8))" ( (binary_expression "ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar17 - param_2)" identifier (argument_list "(dVar17 - param_2)" ( (binary_expression "dVar17 - param_2" identifier - identifier) ))) < (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" * (cast_expression "(int *)(pcVar13 + 0x2c1538)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1538)" ( (binary_expression "pcVar13 + 0x2c1538" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }" { (expression_statement "dVar19 = (dVar19 - param_1) / dVar20;" (assignment_expression "dVar19 = (dVar19 - param_1) / dVar20" identifier = (binary_expression "(dVar19 - param_1) / dVar20" (parenthesized_expression "(dVar19 - param_1)" ( (binary_expression "dVar19 - param_1" identifier - identifier) )) / identifier)) ;) (expression_statement "dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);" (assignment_expression "dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" identifier = (binary_expression "dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x2e48" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" else (compound_statement "{\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" { (expression_statement "dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);" (assignment_expression "dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" identifier = (binary_expression "(param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar20" (parenthesized_expression "(param_1 - param_2)" ( (binary_expression "param_1 - param_2" identifier - identifier) )) / identifier) + (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x3cc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) }))))) (expression_statement "*pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);" (assignment_expression "*pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (pointer_expression "*pdStack_a0" * identifier) = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" * (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7bc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*(double *)pcVar16 = dVar20 / dVar17;" (assignment_expression "*(double *)pcVar16 = dVar20 / dVar17" (pointer_expression "*(double *)pcVar16" * (cast_expression "(double *)pcVar16" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar20 / dVar17" identifier / identifier)) ;) (return_statement "return dVar19;" return identifier ;) })) (goto_statement "goto LAB_000e7548;" goto statement_identifier ;) })))) (expression_statement "pcVar14 = *(code **)(pcVar13 + 0x2c2260);" (assignment_expression "pcVar14 = *(code **)(pcVar13 + 0x2c2260)" identifier = (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" * (cast_expression "(code **)(pcVar13 + 0x2c2260)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x2c2260)" ( (binary_expression "pcVar13 + 0x2c2260" identifier + number_literal) ))))) ;) (expression_statement "pcVar15 = FUN_000e7584;" (assignment_expression "pcVar15 = FUN_000e7584" identifier = identifier) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);" (call_expression "(*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790)" ( (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7824" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" * (cast_expression "(int *)(pcVar13 + 0x2c1540)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar13 + 0x2c1540)" ( (binary_expression "pcVar13 + 0x2c1540" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);" (assignment_expression "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" identifier = (cast_expression "(double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" identifier (argument_list "(pcVar13 + 0x2c9508,uStack_c4)" ( (binary_expression "pcVar13 + 0x2c9508" identifier + number_literal) , identifier ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1364);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1364)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }" if (parenthesized_expression "(pdStack_c0 != (double *)0x0)" ( (binary_expression "pdStack_c0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }" { (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c1364);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c1364)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }" if (parenthesized_expression "((double *)pcVar12 != (double *)0x0)" ( (binary_expression "(double *)pcVar12 != (double *)0x0" (cast_expression "(double *)pcVar12" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }" { (if_statement "if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }" if (parenthesized_expression "(pdStack_b8 != (double *)0x0)" ( (binary_expression "pdStack_b8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }" { (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) (if_statement "if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }" if (parenthesized_expression "(param_2 < dVar18)" ( (binary_expression "param_2 < dVar18" identifier < identifier) )) (compound_statement "{\n          dVar19 = param_2;\n        }" { (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" identifier = identifier) ;) })) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" identifier = identifier) ;) (if_statement "if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }" if (parenthesized_expression "(dVar19 <= param_1)" ( (binary_expression "dVar19 <= param_1" identifier <= identifier) )) (compound_statement "{\n          dVar17 = dVar19;\n        }" { (expression_statement "dVar17 = dVar19;" (assignment_expression "dVar17 = dVar19" identifier = identifier) ;) })) (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" identifier = identifier) ;) (if_statement "if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }" if (parenthesized_expression "(param_2 <= dVar18)" ( (binary_expression "param_2 <= dVar18" identifier <= identifier) )) (compound_statement "{\n          dVar19 = dVar18;\n        }" { (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" identifier = identifier) ;) })) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" identifier = identifier) ;) (if_statement "if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }" if (parenthesized_expression "(param_1 <= dVar19)" ( (binary_expression "param_1 <= dVar19" identifier <= identifier) )) (compound_statement "{\n          dVar20 = dVar19;\n        }" { (expression_statement "dVar20 = dVar19;" (assignment_expression "dVar20 = dVar19" identifier = identifier) ;) })) (expression_statement "dVar19 = dVar20 - dVar17;" (assignment_expression "dVar19 = dVar20 - dVar17" identifier = (binary_expression "dVar20 - dVar17" identifier - identifier)) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1438" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_b8 = dVar23 - dVar20 * dVar26;" (assignment_expression "*pdStack_b8 = dVar23 - dVar20 * dVar26" (pointer_expression "*pdStack_b8" * identifier) = (binary_expression "dVar23 - dVar20 * dVar26" identifier - (binary_expression "dVar20 * dVar26" identifier * identifier))) ;) (expression_statement "*(double *)pcVar12 = dVar17 * dVar26;" (assignment_expression "*(double *)pcVar12 = dVar17 * dVar26" (pointer_expression "*(double *)pcVar12" * (cast_expression "(double *)pcVar12" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "dVar17 * dVar26" identifier * identifier)) ;) (if_statement "if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }" if (parenthesized_expression "(ABS(dVar19) < dVar21)" ( (binary_expression "ABS(dVar19) < dVar21" (call_expression "ABS(dVar19)" identifier (argument_list "(dVar19)" ( identifier ))) < identifier) )) (compound_statement "{\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" ( (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1a78" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" * (cast_expression "(int *)(pcVar14 + 0x2c135c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c135c)" ( (binary_expression "pcVar14 + 0x2c135c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_c0 = dVar18;" (assignment_expression "*pdStack_c0 = dVar18" (pointer_expression "*pdStack_c0" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (if_statement "if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" if (parenthesized_expression "(ABS(param_1 - dVar17) < dVar21)" ( (binary_expression "ABS(param_1 - dVar17) < dVar21" (call_expression "ABS(param_1 - dVar17)" identifier (argument_list "(param_1 - dVar17)" ( (binary_expression "param_1 - dVar17" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }" { (expression_statement "param_1 = param_2 - dVar18;" (assignment_expression "param_1 = param_2 - dVar18" identifier = (binary_expression "param_2 - dVar18" identifier - identifier)) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3cd8" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) }) (else_clause "else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" else (if_statement "if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" if (parenthesized_expression "(ABS(param_2 - dVar17) < dVar21)" ( (binary_expression "ABS(param_2 - dVar17) < dVar21" (call_expression "ABS(param_2 - dVar17)" identifier (argument_list "(param_2 - dVar17)" ( (binary_expression "param_2 - dVar17" identifier - identifier) ))) < identifier) )) (compound_statement "{\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }" { (expression_statement "param_1 = dVar18 - param_1;" (assignment_expression "param_1 = dVar18 - param_1" identifier = (binary_expression "dVar18 - param_1" identifier - identifier)) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) }) (else_clause "else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" else (compound_statement "{\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" { (expression_statement "param_1 = param_1 - param_2;" (assignment_expression "param_1 = param_1 - param_2" identifier = (binary_expression "param_1 - param_2" identifier - identifier)) ;) (if_statement "if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }" if (parenthesized_expression "(ABS(param_2 - dVar17) < dVar21)" ( (binary_expression "ABS(param_2 - dVar17) < dVar21" (call_expression "ABS(param_2 - dVar17)" identifier (argument_list "(param_2 - dVar17)" ( (binary_expression "param_2 - dVar17" identifier - identifier) ))) < identifier) )) (compound_statement "{\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }" { (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))))) ;) })) }))))) (expression_statement "*pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);" (assignment_expression "*pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (pointer_expression "*pdStack_c0" * identifier) = (binary_expression "(dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (parenthesized_expression "(dVar23 - param_1 / dVar19)" ( (binary_expression "dVar23 - param_1 / dVar19" identifier - (binary_expression "param_1 / dVar19" identifier / identifier)) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x2e50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) )))))) ;) (return_statement "return dVar19;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0" identifier = (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x78e0" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2084))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c2084)" * (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" * (cast_expression "(code **)(pcVar14 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2084)" ( (binary_expression "pcVar14 + 0x2c2084" identifier + number_literal) ))))) )) (argument_list "(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" identifier = (binary_expression "iVar6 + 0x7790" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2084))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c2084)" * (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" * (cast_expression "(code **)(pcVar14 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2084)" ( (binary_expression "pcVar14 + 0x2c2084" identifier + number_literal) ))))) )) (argument_list "(iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" ( (binary_expression "iVar4 + 0x78c0" identifier + number_literal) , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c2084);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c2084)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" * (cast_expression "(code **)(pcVar14 + 0x2c2084)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c2084)" ( (binary_expression "pcVar14 + 0x2c2084" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68)" ( (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar6 + 0x7790" identifier + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" * (cast_expression "(int *)(pcVar14 + 0x2c1364)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c1364)" ( (binary_expression "pcVar14 + 0x2c1364" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))()" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c20c0))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" * (cast_expression "(code **)(pcVar12 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c20c0)" ( (binary_expression "pcVar12 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar19 * dVar23;" (assignment_expression "dVar19 = dVar19 * dVar23" identifier = (binary_expression "dVar19 * dVar23" identifier * identifier)) ;) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" identifier = identifier) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2)" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))(param_2)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c20c0))(param_2)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" * (cast_expression "(code **)(pcVar12 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c20c0)" ( (binary_expression "pcVar12 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "(param_2)" ( identifier ))))) ;) (expression_statement "dVar17 = dVar17 * dVar23;" (assignment_expression "dVar17 = dVar17 * dVar23" identifier = (binary_expression "dVar17 * dVar23" identifier * identifier)) ;) (expression_statement "dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));" (assignment_expression "dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" * (cast_expression "(code **)(pcVar12 + 0x2c20c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c20c0)" ( (binary_expression "pcVar12 + 0x2c20c0" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" ( (call_expression "CONCAT44(pcVar14 + 0x2c932c,uStack_e4)" identifier (argument_list "(pcVar14 + 0x2c932c,uStack_e4)" ( (binary_expression "pcVar14 + 0x2c932c" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar20 = dVar20 * dVar23;" (assignment_expression "dVar20 = dVar20 * dVar23" identifier = (binary_expression "dVar20 * dVar23" identifier * identifier)) ;) (expression_statement "dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);" (assignment_expression "dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d38" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d48" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d40" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);" (assignment_expression "dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d20" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d30" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d28" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);" (assignment_expression "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d08" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d18" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d10" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" if (parenthesized_expression "(pdStack_e0 != (double *)0x0)" ( (binary_expression "pdStack_e0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" { (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }" if (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" ( (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }" { (if_statement "if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }" if (parenthesized_expression "(pdStack_d8 != (double *)0x0)" ( (binary_expression "pdStack_d8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }" { (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);" (assignment_expression "dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" identifier = (binary_expression "dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" if (parenthesized_expression "(dVar18 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar18 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }" { (expression_statement "iVar4 = *(int *)(pcVar12 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar12 + 0x2c1174)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar10 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (parenthesized_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8))" ( (binary_expression "dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar26)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar26" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_000e79e4;" goto statement_identifier ;)) (labeled_statement "LAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" statement_identifier : (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "dVar23 = dVar19 / dVar20;" (assignment_expression "dVar23 = dVar19 / dVar20" identifier = (binary_expression "dVar19 / dVar20" identifier / identifier)) ;) (expression_statement "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "(dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "(dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }" if (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }" { (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);" statement_identifier : (expression_statement "dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     )" ( (binary_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20" (parenthesized_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8))" ( (binary_expression "dVar19 * *(double *)(iVar2 + -0x3ce8)" identifier * (pointer_expression "*(double *)(iVar2 + -0x3ce8)" * (cast_expression "(double *)(iVar2 + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3ce8)" ( (binary_expression "iVar2 + -0x3ce8" identifier + number_literal) ))))) )) / identifier) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;)) (goto_statement "goto LAB_000e7920;" goto statement_identifier ;) })) }) (else_clause "else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" else (compound_statement "{\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" { (expression_statement "iVar4 = *(int *)(pcVar12 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar12 + 0x2c1174)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar10 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1fb0)" ( (binary_expression "pcVar12 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (if_statement "if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;" if (parenthesized_expression "(dVar26 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar26 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000e78cc;" goto statement_identifier ;)) (labeled_statement "LAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" statement_identifier : (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1fb0)" ( (binary_expression "pcVar12 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) )))) ))))) ;)) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = dVar19 / dVar20;" (assignment_expression "dVar23 = dVar19 / dVar20" identifier = (binary_expression "dVar19 / dVar20" identifier / identifier)) ;) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;" if (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000e7904;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) ))))) ;) }))) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" * (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1fb0)" ( (binary_expression "pcVar12 + 0x2c1fb0" identifier + number_literal) ))))) )) (argument_list "(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" * (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3cf8)" ( (binary_expression "iVar2 + -0x3cf8" identifier + number_literal) )))) ))))) ;) (labeled_statement "LAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);" statement_identifier : (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x5ae8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;)) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39f8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;" (assignment_expression "dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20" identifier = (binary_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20" (binary_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23" (parenthesized_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0))" ( (binary_expression "(dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" (parenthesized_expression "(dVar17 - dVar19)" ( (binary_expression "dVar17 - dVar19" identifier - identifier) )) * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39f0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))))) )) / identifier) + identifier)) ;) (expression_statement "*pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);" (assignment_expression "*pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (pointer_expression "*pdStack_e0" * identifier) = (binary_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (parenthesized_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0)" identifier * (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) ))))) - (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" ( (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1a70" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" * (cast_expression "(int *)(pcVar12 + 0x2c1174)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c1174)" ( (binary_expression "pcVar12 + 0x2c1174" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;" (assignment_expression "*(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20" (pointer_expression "*(double *)pcVar15" * (cast_expression "(double *)pcVar15" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((dVar18 - dVar17) * dVar26) / dVar23 + dVar20" (binary_expression "((dVar18 - dVar17) * dVar26) / dVar23" (parenthesized_expression "((dVar18 - dVar17) * dVar26)" ( (binary_expression "(dVar18 - dVar17) * dVar26" (parenthesized_expression "(dVar18 - dVar17)" ( (binary_expression "dVar18 - dVar17" identifier - identifier) )) * identifier) )) / identifier) + identifier)) ;) (expression_statement "*pdStack_d8 = dVar19;" (assignment_expression "*pdStack_d8 = dVar19" (pointer_expression "*pdStack_d8" * identifier) = identifier) ;) (return_statement "return dVar19;" return identifier ;) })) (expression_statement "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();" (call_expression "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))" ( (pointer_expression "*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" * (cast_expression "(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c11d4) + 0x39c0" (pointer_expression "*(int *)(pcVar12 + 0x2c11d4)" * (cast_expression "(int *)(pcVar12 + 0x2c11d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c11d4)" ( (binary_expression "pcVar12 + 0x2c11d4" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) })) (expression_statement "(**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);" (call_expression "(**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1e9c))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c1e9c)" * (pointer_expression "*(code **)(pcVar12 + 0x2c1e9c)" * (cast_expression "(code **)(pcVar12 + 0x2c1e9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1e9c)" ( (binary_expression "pcVar12 + 0x2c1e9c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 31000" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a48" identifier + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c1e9c)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c1e9c)" * (cast_expression "(code **)(pcVar12 + 0x2c1e9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c1e9c)" ( (binary_expression "pcVar12 + 0x2c1e9c" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);" (call_expression "(*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 0x7900" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 0x7a48" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" * (cast_expression "(int *)(pcVar12 + 0x2c117c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c117c)" ( (binary_expression "pcVar12 + 0x2c117c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);" (assignment_expression "pdStack_140 = (double *)((ulonglong)param_2 >> 0x20)" identifier = (cast_expression "(double *)((ulonglong)param_2 >> 0x20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulonglong)param_2 >> 0x20)" ( (binary_expression "(ulonglong)param_2 >> 0x20" (cast_expression "(ulonglong)param_2" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "pdStack_13c = SUB84(param_2,0);" (assignment_expression "pdStack_13c = SUB84(param_2,0)" identifier = (call_expression "SUB84(param_2,0)" identifier (argument_list "(param_2,0)" ( identifier , number_literal )))) ;) (if_statement "if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;" if (parenthesized_expression "(pdStack_140 == (double *)0x0)" ( (binary_expression "pdStack_140 == (double *)0x0" identifier == (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000e7e18;" goto statement_identifier ;)) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" if (parenthesized_expression "(pdStack_13c != (double *)0x0)" ( (binary_expression "pdStack_13c != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" { (if_statement "if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }" if (parenthesized_expression "(pdStack_138 != (double *)0x0)" ( (binary_expression "pdStack_138 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }" { (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))()" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1da4))()" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" * (cast_expression "(code **)(pcVar14 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1da4)" ( (binary_expression "pcVar14 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar19 * dVar20;" (assignment_expression "dVar19 = dVar19 * dVar20" identifier = (binary_expression "dVar19 * dVar20" identifier * identifier)) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);" (assignment_expression "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" * (cast_expression "(code **)(pcVar14 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1da4)" ( (binary_expression "pcVar14 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "(dVar18)" ( identifier ))))) ;) (expression_statement "dVar18 = dVar18 * dVar20;" (assignment_expression "dVar18 = dVar18 * dVar20" identifier = (binary_expression "dVar18 * dVar20" identifier * identifier)) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" * (cast_expression "(code **)(pcVar14 + 0x2c1da4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1da4)" ( (binary_expression "pcVar14 + 0x2c1da4" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" ( (call_expression "CONCAT44(pcVar12 + 0x2c9144,uStack_144)" identifier (argument_list "(pcVar12 + 0x2c9144,uStack_144)" ( (binary_expression "pcVar12 + 0x2c9144" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar17 = dVar17 * dVar20;" (assignment_expression "dVar17 = dVar17 * dVar20" identifier = (binary_expression "dVar17 * dVar20" identifier * identifier)) ;) (expression_statement "dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);" (assignment_expression "dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d38" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d48" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d40" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);" (assignment_expression "dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" identifier = (binary_expression "dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);" (assignment_expression "dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d20" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d30" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d28" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);" (assignment_expression "dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d08" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d18" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d10" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" if (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }" { (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c0e58)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar10 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (parenthesized_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8))" ( (binary_expression "dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" else (compound_statement "{\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" { (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c0e58)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar10 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" * (cast_expression "(code **)(pcVar14 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c94)" ( (binary_expression "pcVar14 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))) ))))) ;) }))) (if_statement "if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" if (parenthesized_expression "(dVar26 <= *(double *)(iVar6 + -0x3d00))" ( (binary_expression "dVar26 <= *(double *)(iVar6 + -0x3d00)" identifier <= (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) ))))) )) (compound_statement "{\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }" { (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = dVar18 / dVar23;" (assignment_expression "dVar20 = dVar18 / dVar23" identifier = (binary_expression "dVar18 / dVar23" identifier / identifier)) ;) (expression_statement "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "(dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "(dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar20)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar20" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (goto_statement "goto LAB_000e7da0;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" else (compound_statement "{\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" { (expression_statement "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" * (cast_expression "(code **)(pcVar14 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c94)" ( (binary_expression "pcVar14 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = dVar18 / dVar23;" (assignment_expression "dVar20 = dVar18 / dVar23" identifier = (binary_expression "dVar18 / dVar23" identifier / identifier)) ;) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" if (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar20)" ( (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar20" (pointer_expression "*(double *)(iVar6 + -0x3d00)" * (cast_expression "(double *)(iVar6 + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + -0x3d00)" ( (binary_expression "iVar6 + -0x3d00" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" { (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" identifier = (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));" statement_identifier : (expression_statement "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" identifier = (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" * (cast_expression "(code **)(pcVar14 + 0x2c1c94)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c94)" ( (binary_expression "pcVar14 + 0x2c1c94" identifier + number_literal) ))))) )) (argument_list "(dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" ( identifier , (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" * (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3cf8)" ( (binary_expression "iVar2 + -0x3cf8" identifier + number_literal) )))) ))))) ;)) (goto_statement "goto LAB_000e7c44;" goto statement_identifier ;) })) }))) (expression_statement "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0)" identifier = (binary_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23" (parenthesized_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8))" ( (binary_expression "dVar18 * *(double *)(iVar2 + -0x3ce8)" identifier * (pointer_expression "*(double *)(iVar2 + -0x3ce8)" * (cast_expression "(double *)(iVar2 + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3ce8)" ( (binary_expression "iVar2 + -0x3ce8" identifier + number_literal) ))))) )) / identifier) + (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) )))))) ;) (labeled_statement "LAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);" statement_identifier : (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1c90);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1c90)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c1c90)" * (cast_expression "(code **)(pcVar14 + 0x2c1c90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1c90)" ( (binary_expression "pcVar14 + 0x2c1c90" identifier + number_literal) ))))) ;)) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1400" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39f0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39f8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);" (assignment_expression "*pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (pointer_expression "*pdStack_140" * identifier) = (binary_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (parenthesized_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" ( (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0)" identifier * (pointer_expression "*(double *)(iVar10 + -0x3cf0)" * (cast_expression "(double *)(iVar10 + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x3cf0)" ( (binary_expression "iVar10 + -0x3cf0" identifier + number_literal) ))))) - (pointer_expression "*(double *)(iVar4 + 0x1ac8)" * (cast_expression "(double *)(iVar4 + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x1ac8)" ( (binary_expression "iVar4 + 0x1ac8" identifier + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1a70" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;" (assignment_expression "dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26" identifier = (binary_expression "((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26" (parenthesized_expression "((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21)" ( (binary_expression "(((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21" (parenthesized_expression "(((dVar19 - dVar17) * dVar23) / dVar26 + dVar21)" ( (binary_expression "((dVar19 - dVar17) * dVar23) / dVar26 + dVar21" (binary_expression "((dVar19 - dVar17) * dVar23) / dVar26" (parenthesized_expression "((dVar19 - dVar17) * dVar23)" ( (binary_expression "(dVar19 - dVar17) * dVar23" (parenthesized_expression "(dVar19 - dVar17)" ( (binary_expression "dVar19 - dVar17" identifier - identifier) )) * identifier) )) / identifier) + identifier) )) - identifier) )) * identifier)) ;) (expression_statement "dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;" (assignment_expression "dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26" identifier = (binary_expression "((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26" (parenthesized_expression "((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21)" ( (binary_expression "(((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21" (parenthesized_expression "(((dVar17 - dVar18) * dVar20) / dVar26 + dVar21)" ( (binary_expression "((dVar17 - dVar18) * dVar20) / dVar26 + dVar21" (binary_expression "((dVar17 - dVar18) * dVar20) / dVar26" (parenthesized_expression "((dVar17 - dVar18) * dVar20)" ( (binary_expression "(dVar17 - dVar18) * dVar20" (parenthesized_expression "(dVar17 - dVar18)" ( (binary_expression "dVar17 - dVar18" identifier - identifier) )) * identifier) )) / identifier) + identifier) )) - identifier) )) * identifier)) ;) (expression_statement "dVar18 = (double)(*pcVar12)(dVar23,dVar19);" (assignment_expression "dVar18 = (double)(*pcVar12)(dVar23,dVar19)" identifier = (cast_expression "(double)(*pcVar12)(dVar23,dVar19)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar12)(dVar23,dVar19)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(dVar23,dVar19)" ( identifier , identifier ))))) ;) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1580);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1580)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c1580)" * (cast_expression "(code **)(pcVar14 + 0x2c1580)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1580)" ( (binary_expression "pcVar14 + 0x2c1580" identifier + number_literal) ))))) ;) (expression_statement "*pdStack_13c = dVar18 / dVar26 + dVar21;" (assignment_expression "*pdStack_13c = dVar18 / dVar26 + dVar21" (pointer_expression "*pdStack_13c" * identifier) = (binary_expression "dVar18 / dVar26 + dVar21" (binary_expression "dVar18 / dVar26" identifier / identifier) + identifier)) ;) (expression_statement "dVar18 = (double)(*pcVar12)(dVar19,dVar23);" (assignment_expression "dVar18 = (double)(*pcVar12)(dVar19,dVar23)" identifier = (cast_expression "(double)(*pcVar12)(dVar19,dVar23)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar12)(dVar19,dVar23)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(dVar19,dVar23)" ( identifier , identifier ))))) ;) (expression_statement "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" identifier = (binary_expression "((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (parenthesized_expression "((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8))" ( (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0))" ( (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }" { (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" identifier = (binary_expression "dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1438" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" * (cast_expression "(int *)(pcVar14 + 0x2c0e58)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e58)" ( (binary_expression "pcVar14 + 0x2c0e58" identifier + number_literal) )))) + number_literal) )))))) ;) })) (expression_statement "*pdStack_138 = dVar18;" (assignment_expression "*pdStack_138 = dVar18" (pointer_expression "*pdStack_138" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7a34;" (assignment_expression "iVar6 = iVar6 + 0x7a34" identifier = (binary_expression "iVar6 + 0x7a34" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);" (call_expression "(**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1b80))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1b80)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" * (cast_expression "(code **)(pcVar14 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1b80)" ( (binary_expression "pcVar14 + 0x2c1b80" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "(**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);" (call_expression "(**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1b80))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c1b80)" * (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" * (cast_expression "(code **)(pcVar14 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1b80)" ( (binary_expression "pcVar14 + 0x2c1b80" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x77f0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a34" identifier + number_literal) ))) ;) (labeled_statement "LAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);" statement_identifier : (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1b80);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1b80)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" * (cast_expression "(code **)(pcVar14 + 0x2c1b80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c1b80)" ( (binary_expression "pcVar14 + 0x2c1b80" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34)" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34)" ( (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x780c" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7a34" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" * (cast_expression "(int *)(pcVar14 + 0x2c0e60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c0e60)" ( (binary_expression "pcVar14 + 0x2c0e60" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" if (parenthesized_expression "(pdStack_1b0 != (double *)0x0)" ( (binary_expression "pdStack_1b0 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" { (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c0aac);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c0aac)" identifier = (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) ))))) ;) (if_statement "if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" if (parenthesized_expression "(pdStack_1ac != (double *)0x0)" ( (binary_expression "pdStack_1ac != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" { (if_statement "if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }" if (parenthesized_expression "(pdStack_1a8 != (double *)0x0)" ( (binary_expression "pdStack_1a8 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }" { (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))()" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c19f0))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" * (cast_expression "(code **)(pcVar12 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c19f0)" ( (binary_expression "pcVar12 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar19 = dVar19 * dVar20;" (assignment_expression "dVar19 = dVar19 * dVar20" identifier = (binary_expression "dVar19 * dVar20" identifier * identifier)) ;) (expression_statement "dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);" (assignment_expression "dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" * (cast_expression "(code **)(pcVar12 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c19f0)" ( (binary_expression "pcVar12 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "(dVar18)" ( identifier ))))) ;) (expression_statement "dVar18 = dVar18 * dVar20;" (assignment_expression "dVar18 = dVar18 * dVar20" identifier = (binary_expression "dVar18 * dVar20" identifier * identifier)) ;) (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" * (cast_expression "(code **)(pcVar12 + 0x2c19f0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c19f0)" ( (binary_expression "pcVar12 + 0x2c19f0" identifier + number_literal) ))))) )) (argument_list "(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" ( (call_expression "CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4)" identifier (argument_list "(pcVar14 + 0x2c8e28,uStack_1b4)" ( (binary_expression "pcVar14 + 0x2c8e28" identifier + number_literal) , identifier ))) ))))) ;) (expression_statement "dVar17 = dVar17 * dVar20;" (assignment_expression "dVar17 = dVar17 * dVar20" identifier = (binary_expression "dVar17 * dVar20" identifier * identifier)) ;) (expression_statement "dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);" (assignment_expression "dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d20" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d30" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d28" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);" (assignment_expression "dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d38" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d48" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d40" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (expression_statement "dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);" (assignment_expression "dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" identifier = (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d08" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d18" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d10" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))))) ;) (if_statement "if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" if (parenthesized_expression "(dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00))" ( (binary_expression "dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" identifier <= (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d00" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }" { (expression_statement "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);" (assignment_expression "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" identifier = (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" else (compound_statement "{\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" { (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c18e0))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c18e0)" * (pointer_expression "*(code **)(pcVar12 + 0x2c18e0)" * (cast_expression "(code **)(pcVar12 + 0x2c18e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c18e0)" ( (binary_expression "pcVar12 + 0x2c18e0" identifier + number_literal) ))))) )) (argument_list "(dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" ( identifier , (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" * (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);" (assignment_expression "dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" identifier = (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) - (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) }))) (expression_statement "dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;" (assignment_expression "dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23" identifier = (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) + identifier)) ;) (if_statement "if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" if (parenthesized_expression "(0.0 <= dVar18)" ( (binary_expression "0.0 <= dVar18" number_literal <= identifier) )) (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dStack_208 = dVar18;" (assignment_expression "dStack_208 = dVar18" identifier = identifier) ;) }) (else_clause "else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" else (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" { (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dStack_208 = -dVar18;" (assignment_expression "dStack_208 = -dVar18" identifier = (unary_expression "-dVar18" - identifier)) ;) }))) (if_statement "if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" if (parenthesized_expression "(dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8))" ( (binary_expression "dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" identifier < (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }" { (expression_statement "dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);" (assignment_expression "dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" identifier = (binary_expression "dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" else (compound_statement "{\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" { (expression_statement "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18" identifier = (binary_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18" (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))) / identifier)) ;) }))) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c18dc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c18dc)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c18dc)" * (cast_expression "(code **)(pcVar12 + 0x2c18dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c18dc)" ( (binary_expression "pcVar12 + 0x2c18dc" identifier + number_literal) ))))) ;) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3c98" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3c90" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);" (assignment_expression "dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);" (assignment_expression "dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);" (assignment_expression "dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" identifier = (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);" (assignment_expression "dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" identifier = (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "*pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);" (assignment_expression "*pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (pointer_expression "*pdStack_1b0" * identifier) = (binary_expression "dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;" (assignment_expression "dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21" identifier = (binary_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21" (binary_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22" (parenthesized_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22)" ( (binary_expression "((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22" (parenthesized_expression "((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21)" ( (binary_expression "(dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21" (binary_expression "(dVar18 * dVar29 * dVar23 - dVar25) * dVar24" (parenthesized_expression "(dVar18 * dVar29 * dVar23 - dVar25)" ( (binary_expression "dVar18 * dVar29 * dVar23 - dVar25" (binary_expression "dVar18 * dVar29 * dVar23" (binary_expression "dVar18 * dVar29" identifier * identifier) * identifier) - identifier) )) * identifier) + identifier) )) / identifier) )) * identifier) - identifier)) ;) (expression_statement "dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;" (assignment_expression "dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17" identifier = (binary_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17" (binary_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26" (parenthesized_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26)" ( (binary_expression "((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26" (parenthesized_expression "((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17)" ( (binary_expression "(dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17" (binary_expression "(dVar18 * dVar27 * dVar20 - dVar28) * dVar24" (parenthesized_expression "(dVar18 * dVar27 * dVar20 - dVar28)" ( (binary_expression "dVar18 * dVar27 * dVar20 - dVar28" (binary_expression "dVar18 * dVar27 * dVar20" (binary_expression "dVar18 * dVar27" identifier * identifier) * identifier) - identifier) )) * identifier) + identifier) )) / identifier) )) * identifier) - identifier)) ;) (expression_statement "dVar18 = (double)(*pcVar14)(dVar21,dVar17);" (assignment_expression "dVar18 = (double)(*pcVar14)(dVar21,dVar17)" identifier = (cast_expression "(double)(*pcVar14)(dVar21,dVar17)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar14)(dVar21,dVar17)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(dVar21,dVar17)" ( identifier , identifier ))))) ;) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c11cc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c11cc)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c11cc)" * (cast_expression "(code **)(pcVar12 + 0x2c11cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c11cc)" ( (binary_expression "pcVar12 + 0x2c11cc" identifier + number_literal) ))))) ;) (expression_statement "*pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);" (assignment_expression "*pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (pointer_expression "*pdStack_1ac" * identifier) = (binary_expression "dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (binary_expression "dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" identifier / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))))) + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) (expression_statement "dVar18 = (double)(*pcVar14)(dVar17,dVar21);" (assignment_expression "dVar18 = (double)(*pcVar14)(dVar17,dVar21)" identifier = (cast_expression "(double)(*pcVar14)(dVar17,dVar21)" ( (type_descriptor "double" primitive_type) ) (call_expression "(*pcVar14)(dVar17,dVar21)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(dVar17,dVar21)" ( identifier , identifier ))))) ;) (expression_statement "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" identifier = (binary_expression "((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (parenthesized_expression "((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8))" ( (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0))" ( (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) ))))) )) / (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))))) ;) (if_statement "if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }" if (parenthesized_expression "(dVar18 < 0.0)" ( (binary_expression "dVar18 < 0.0" identifier < number_literal) )) (compound_statement "{\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }" { (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" identifier = (binary_expression "dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" identifier + (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" * (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aa4)" ( (binary_expression "pcVar12 + 0x2c0aa4" identifier + number_literal) )))) + number_literal) )))))) ;) })) (expression_statement "*pdStack_1a8 = dVar18;" (assignment_expression "*pdStack_1a8 = dVar18" (pointer_expression "*pdStack_1a8" * identifier) = identifier) ;) (return_statement "return dVar18;" return identifier ;) })) (expression_statement "iVar6 = iVar6 + 0x7a20;" (assignment_expression "iVar6 = iVar6 + 0x7a20" identifier = (binary_expression "iVar6 + 0x7a20" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c17cc))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c17cc)" * (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" * (cast_expression "(code **)(pcVar12 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c17cc)" ( (binary_expression "pcVar12 + 0x2c17cc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) })) (expression_statement "(**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);" (call_expression "(**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c17cc))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c17cc)" * (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" * (cast_expression "(code **)(pcVar12 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c17cc)" ( (binary_expression "pcVar12 + 0x2c17cc" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x77f0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "iVar6 + 0x7a20" identifier + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c17cc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c17cc)" identifier = (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" * (cast_expression "(code **)(pcVar12 + 0x2c17cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c17cc)" ( (binary_expression "pcVar12 + 0x2c17cc" identifier + number_literal) ))))) ;) (expression_statement "pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);" (assignment_expression "pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" identifier = (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x780c" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);" (call_expression "(*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20)" ( identifier , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7a20" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" * (cast_expression "(int *)(pcVar12 + 0x2c0aac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0aac)" ( (binary_expression "pcVar12 + 0x2c0aac" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }" if (parenthesized_expression "(pdVar5 != (double *)0x0)" ( (binary_expression "pdVar5 != (double *)0x0" identifier != (cast_expression "(double *)0x0" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }" { (expression_statement "dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];" (assignment_expression "dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" identifier = (binary_expression "*pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" (binary_expression "*pdVar5 * pdVar5[3]" (pointer_expression "*pdVar5" * identifier) * (subscript_expression "pdVar5[3]" identifier [ number_literal ])) - (binary_expression "pdVar5[1] * pdVar5[2]" (subscript_expression "pdVar5[1]" identifier [ number_literal ]) * (subscript_expression "pdVar5[2]" identifier [ number_literal ])))) ;) (expression_statement "dVar19 = SQRT(ABS(dVar18));" (assignment_expression "dVar19 = SQRT(ABS(dVar18))" identifier = (call_expression "SQRT(ABS(dVar18))" identifier (argument_list "(ABS(dVar18))" ( (call_expression "ABS(dVar18)" identifier (argument_list "(dVar18)" ( identifier ))) )))) ;) (if_statement "if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }" if (parenthesized_expression "(ABS(dVar18) < 0.0)" ( (binary_expression "ABS(dVar18) < 0.0" (call_expression "ABS(dVar18)" identifier (argument_list "(dVar18)" ( identifier ))) < number_literal) )) (compound_statement "{\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }" { (expression_statement "(**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));" (call_expression "(**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c12c4))" ( (pointer_expression "**(code **)(pcVar14 + 0x2c12c4)" * (pointer_expression "*(code **)(pcVar14 + 0x2c12c4)" * (cast_expression "(code **)(pcVar14 + 0x2c12c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c12c4)" ( (binary_expression "pcVar14 + 0x2c12c4" identifier + number_literal) ))))) )) (argument_list "(ABS(dVar18))" ( (call_expression "ABS(dVar18)" identifier (argument_list "(dVar18)" ( identifier ))) ))) ;) })) (return_statement "return dVar19;" return identifier ;) })) (expression_statement "uVar8 = 0x5b5;" (assignment_expression "uVar8 = 0x5b5" identifier = number_literal) ;) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c144c);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c144c)" identifier = (pointer_expression "*(code **)(pcVar14 + 0x2c144c)" * (cast_expression "(code **)(pcVar14 + 0x2c144c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0x2c144c)" ( (binary_expression "pcVar14 + 0x2c144c" identifier + number_literal) ))))) ;) (expression_statement "fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);" (assignment_expression "fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" identifier = (cast_expression "(float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" ( (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" * (cast_expression "(int *)(pcVar14 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c072c)" ( (binary_expression "pcVar14 + 0x2c072c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            )" (parenthesized_expression "(*pcVar12)" ( (pointer_expression "*pcVar12" * identifier) )) (argument_list "(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            )" ( (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7930" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" * (cast_expression "(int *)(pcVar14 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c072c)" ( (binary_expression "pcVar14 + 0x2c072c" identifier + number_literal) )))) + number_literal) , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7a10" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" * (cast_expression "(int *)(pcVar14 + 0x2c072c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0x2c072c)" ( (binary_expression "pcVar14 + 0x2c072c" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);" (assignment_expression "dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" identifier = (cast_expression "(double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" identifier (argument_list "(pcVar14 + 0x2c86f4,uStack_23c)" ( (binary_expression "pcVar14 + 0x2c86f4" identifier + number_literal) , identifier ))))) ;) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))()" identifier = (cast_expression "(double)(**(code **)(pcVar12 + 0x2c0bf8))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcVar12 + 0x2c0bf8))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c0bf8))" ( (pointer_expression "**(code **)(pcVar12 + 0x2c0bf8)" * (pointer_expression "*(code **)(pcVar12 + 0x2c0bf8)" * (cast_expression "(code **)(pcVar12 + 0x2c0bf8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar12 + 0x2c0bf8)" ( (binary_expression "pcVar12 + 0x2c0bf8" identifier + number_literal) ))))) )) (argument_list "()" ( ))))) ;) (if_statement "if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }" if (parenthesized_expression "(uVar8 < 8)" ( (binary_expression "uVar8 < 8" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }" { (expression_statement "dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();" (assignment_expression "dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" identifier = (cast_expression "(double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" ( (type_descriptor "double" primitive_type) ) (call_expression "(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" (parenthesized_expression "(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))" ( (pointer_expression "*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c)" * (parenthesized_expression "(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c)" ( (binary_expression "pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c" (binary_expression "pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" identifier + (pointer_expression "*(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" * (cast_expression "(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4" (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x79c0" (pointer_expression "*(int *)(pcVar12 + 0x2c0674)" * (cast_expression "(int *)(pcVar12 + 0x2c0674)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0674)" ( (binary_expression "pcVar12 + 0x2c0674" identifier + number_literal) )))) + number_literal) + (binary_expression "uVar8 * 4" identifier * number_literal)) ))))) + number_literal) ))) )) (argument_list "()" ( ))))) ;) (return_statement "return dVar18;" return identifier ;) })) (return_statement "return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;" return (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400))" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" ( (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x7bd0" (pointer_expression "*(int *)(pcVar12 + 0x2c0674)" * (cast_expression "(int *)(pcVar12 + 0x2c0674)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c0674)" ( (binary_expression "pcVar12 + 0x2c0674" identifier + number_literal) )))) + number_literal) ))))) * (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" ( (binary_expression "*(int *)(pcVar12 + 0x2c066c) + 0x1a58" (pointer_expression "*(int *)(pcVar12 + 0x2c066c)" * (cast_expression "(int *)(pcVar12 + 0x2c066c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c066c)" ( (binary_expression "pcVar12 + 0x2c066c" identifier + number_literal) )))) + number_literal) ))))) * (parenthesized_expression "(dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400))" ( (binary_expression "dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" identifier - (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" * (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" ( (binary_expression "*(int *)(pcVar12 + 0x2c066c) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c066c)" * (cast_expression "(int *)(pcVar12 + 0x2c066c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar12 + 0x2c066c)" ( (binary_expression "pcVar12 + 0x2c066c" identifier + number_literal) )))) + number_literal) ))))) ))) + (cast_expression "(double)fVar7" ( (type_descriptor "double" primitive_type) ) identifier)) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (call_expression IDENT (argument_list ( IDENT )))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + IDENT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * IDENT) + (binary_expression IDENT * IDENT)) + (binary_expression IDENT * IDENT)) )) * IDENT)) ;) (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT / (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (call_expression IDENT (argument_list ( IDENT )))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (call_expression IDENT (argument_list ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) )))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }))) })) })) (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) + IDENT) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT - (binary_expression IDENT / IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) * IDENT) , (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT * IDENT) - IDENT) )) - IDENT) )) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression IDENT + IDENT) )) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }))))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) - IDENT)) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT / IDENT)) ;) (return_statement return (binary_expression IDENT / IDENT) ;) })) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT )))) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }))))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT / IDENT)) ;) (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT - (binary_expression IDENT * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (binary_expression IDENT - IDENT) ))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) })) }))))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression IDENT - (binary_expression IDENT / IDENT)) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;)) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / IDENT) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) * IDENT) )) / IDENT) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (return_statement return IDENT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;)) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) * IDENT) )) / IDENT) + IDENT) )) - IDENT) )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) * IDENT) )) / IDENT) + IDENT) )) - IDENT) )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (binary_expression IDENT / IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) / IDENT)) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * IDENT) * IDENT) - IDENT) )) * IDENT) + IDENT) )) / IDENT) )) * IDENT) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * IDENT) * IDENT) - IDENT) )) * IDENT) + IDENT) )) / IDENT) )) * IDENT) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (binary_expression IDENT / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) / (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * IDENT) * (subscript_expression IDENT [ LIT ])) - (binary_expression (subscript_expression IDENT [ LIT ]) * (subscript_expression IDENT [ LIT ])))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (call_expression IDENT (argument_list ( IDENT ))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT ))) < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (call_expression IDENT (argument_list ( IDENT ))) ))) ;) })) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (parenthesized_expression ( (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) + (binary_expression IDENT * LIT)) ))))) + LIT) ))) )) (argument_list ( ))))) ;) (return_statement return IDENT ;) })) (return_statement return (binary_expression (binary_expression (binary_expression (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) * (parenthesized_expression ( (binary_expression IDENT - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ))) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) })))
(function_definition "double FUN_000e6adc(double param_1,double param_2)\n\n{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}" (primitive_type "double") (function_declarator "FUN_000e6adc(double param_1,double param_2)" (identifier "FUN_000e6adc") (parameter_list "(double param_1,double param_2)" (( "(") (parameter_declaration "double param_1" (primitive_type "double") (identifier "param_1")) (, ",") (parameter_declaration "double param_2" (primitive_type "double") (identifier "param_2")) () ")"))) (compound_statement "{\n  undefined1 *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  double *pdVar5;\n  int iVar6;\n  float fVar7;\n  uint uVar8;\n  undefined *puVar9;\n  double *unaff_s0;\n  double *unaff_s1;\n  double *unaff_s2;\n  int iVar10;\n  undefined *puVar11;\n  code *pcVar12;\n  code *pcVar13;\n  code *pcVar14;\n  code *pcVar15;\n  code *pcVar16;\n  double dVar17;\n  double dVar18;\n  double dVar19;\n  double dVar20;\n  double dVar21;\n  double dVar22;\n  double dVar23;\n  double dVar24;\n  double dVar25;\n  double dVar26;\n  double dVar27;\n  double dVar28;\n  double dVar29;\n  double in_stack_00000010;\n  double *in_stack_00000018;\n  double *in_stack_0000001c;\n  double *in_stack_00000020;\n  undefined4 uStack_23c;\n  double dStack_208;\n  undefined4 uStack_1b4;\n  double *pdStack_1b0;\n  double *pdStack_1ac;\n  double *pdStack_1a8;\n  undefined4 uStack_144;\n  double *pdStack_140;\n  double *pdStack_13c;\n  double *pdStack_138;\n  undefined4 uStack_e4;\n  double *pdStack_e0;\n  double *pdStack_d8;\n  undefined4 uStack_c4;\n  double *pdStack_c0;\n  double *pdStack_b8;\n  undefined4 uStack_a4;\n  double *pdStack_a0;\n  double *pdStack_98;\n  undefined4 uStack_84;\n  undefined4 uStack_5c;\n  double *pdStack_58;\n  double *pdStack_50;\n  undefined4 uStack_3c;\n  \n  if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }\n  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);\n  pcVar14 = FUN_000e6d7c;\n  puVar11 = PTR___assert_fail_003a9608;\n  (*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);\n  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);\n  iVar6 = *(int *)(puVar11 + 0x2c1b6c);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }\n  pcVar12 = *(code **)(puVar11 + 0x2c288c);\n  pcVar15 = FUN_000e6ff4;\n  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  iVar6 = *(int *)(pcVar12 + 0x2c18f4);\n  if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c2614);\n  pcVar16 = ConvertRGBToHSL;\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);\n  iVar6 = *(int *)(pcVar14 + 0x2c1748);\n  if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }\n  pcVar12 = FUN_000e73a8;\n  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);\n  iVar6 = *(int *)(pcVar13 + 0x2c1540);\n  if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }\n  pcVar14 = *(code **)(pcVar13 + 0x2c2260);\n  pcVar15 = FUN_000e7584;\n  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);\n  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);\n  iVar6 = *(int *)(pcVar14 + 0x2c1364);\n  if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }\n  pcVar12 = *(code **)(pcVar14 + 0x2c2084);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();\n  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);\n  dVar19 = dVar19 * dVar23;\n  dVar18 = param_2;\n  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);\n  dVar17 = dVar17 * dVar23;\n  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));\n  dVar20 = dVar20 * dVar23;\n  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);\n  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);\n  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);\n  if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);\n  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);\n  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);\n  pdStack_13c = SUB84(param_2,0);\n  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;\n  iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n  if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }\n  (**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);\nLAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);\n  if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }\n  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);\n  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);\n  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);\n  if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }\n  uVar8 = 0x5b5;\n  pcVar12 = *(code **)(pcVar14 + 0x2c144c);\n  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);\n  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );\n  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);\n  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();\n  if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }\n  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;\n}" ({ "{") (declaration "undefined1 *puVar1;" (type_identifier "undefined1") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "double *pdVar5;" (primitive_type "double") (pointer_declarator "*pdVar5" (* "*") (identifier "pdVar5")) (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "float fVar7;" (primitive_type "float") (identifier "fVar7") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "undefined *puVar9;" (type_identifier "undefined") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "double *unaff_s0;" (primitive_type "double") (pointer_declarator "*unaff_s0" (* "*") (identifier "unaff_s0")) (; ";")) (declaration "double *unaff_s1;" (primitive_type "double") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1")) (; ";")) (declaration "double *unaff_s2;" (primitive_type "double") (pointer_declarator "*unaff_s2" (* "*") (identifier "unaff_s2")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined *puVar11;" (type_identifier "undefined") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "code *pcVar12;" (type_identifier "code") (pointer_declarator "*pcVar12" (* "*") (identifier "pcVar12")) (; ";")) (declaration "code *pcVar13;" (type_identifier "code") (pointer_declarator "*pcVar13" (* "*") (identifier "pcVar13")) (; ";")) (declaration "code *pcVar14;" (type_identifier "code") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "code *pcVar15;" (type_identifier "code") (pointer_declarator "*pcVar15" (* "*") (identifier "pcVar15")) (; ";")) (declaration "code *pcVar16;" (type_identifier "code") (pointer_declarator "*pcVar16" (* "*") (identifier "pcVar16")) (; ";")) (declaration "double dVar17;" (primitive_type "double") (identifier "dVar17") (; ";")) (declaration "double dVar18;" (primitive_type "double") (identifier "dVar18") (; ";")) (declaration "double dVar19;" (primitive_type "double") (identifier "dVar19") (; ";")) (declaration "double dVar20;" (primitive_type "double") (identifier "dVar20") (; ";")) (declaration "double dVar21;" (primitive_type "double") (identifier "dVar21") (; ";")) (declaration "double dVar22;" (primitive_type "double") (identifier "dVar22") (; ";")) (declaration "double dVar23;" (primitive_type "double") (identifier "dVar23") (; ";")) (declaration "double dVar24;" (primitive_type "double") (identifier "dVar24") (; ";")) (declaration "double dVar25;" (primitive_type "double") (identifier "dVar25") (; ";")) (declaration "double dVar26;" (primitive_type "double") (identifier "dVar26") (; ";")) (declaration "double dVar27;" (primitive_type "double") (identifier "dVar27") (; ";")) (declaration "double dVar28;" (primitive_type "double") (identifier "dVar28") (; ";")) (declaration "double dVar29;" (primitive_type "double") (identifier "dVar29") (; ";")) (declaration "double in_stack_00000010;" (primitive_type "double") (identifier "in_stack_00000010") (; ";")) (declaration "double *in_stack_00000018;" (primitive_type "double") (pointer_declarator "*in_stack_00000018" (* "*") (identifier "in_stack_00000018")) (; ";")) (declaration "double *in_stack_0000001c;" (primitive_type "double") (pointer_declarator "*in_stack_0000001c" (* "*") (identifier "in_stack_0000001c")) (; ";")) (declaration "double *in_stack_00000020;" (primitive_type "double") (pointer_declarator "*in_stack_00000020" (* "*") (identifier "in_stack_00000020")) (; ";")) (declaration "undefined4 uStack_23c;" (type_identifier "undefined4") (identifier "uStack_23c") (; ";")) (declaration "double dStack_208;" (primitive_type "double") (identifier "dStack_208") (; ";")) (declaration "undefined4 uStack_1b4;" (type_identifier "undefined4") (identifier "uStack_1b4") (; ";")) (declaration "double *pdStack_1b0;" (primitive_type "double") (pointer_declarator "*pdStack_1b0" (* "*") (identifier "pdStack_1b0")) (; ";")) (declaration "double *pdStack_1ac;" (primitive_type "double") (pointer_declarator "*pdStack_1ac" (* "*") (identifier "pdStack_1ac")) (; ";")) (declaration "double *pdStack_1a8;" (primitive_type "double") (pointer_declarator "*pdStack_1a8" (* "*") (identifier "pdStack_1a8")) (; ";")) (declaration "undefined4 uStack_144;" (type_identifier "undefined4") (identifier "uStack_144") (; ";")) (declaration "double *pdStack_140;" (primitive_type "double") (pointer_declarator "*pdStack_140" (* "*") (identifier "pdStack_140")) (; ";")) (declaration "double *pdStack_13c;" (primitive_type "double") (pointer_declarator "*pdStack_13c" (* "*") (identifier "pdStack_13c")) (; ";")) (declaration "double *pdStack_138;" (primitive_type "double") (pointer_declarator "*pdStack_138" (* "*") (identifier "pdStack_138")) (; ";")) (declaration "undefined4 uStack_e4;" (type_identifier "undefined4") (identifier "uStack_e4") (; ";")) (declaration "double *pdStack_e0;" (primitive_type "double") (pointer_declarator "*pdStack_e0" (* "*") (identifier "pdStack_e0")) (; ";")) (declaration "double *pdStack_d8;" (primitive_type "double") (pointer_declarator "*pdStack_d8" (* "*") (identifier "pdStack_d8")) (; ";")) (declaration "undefined4 uStack_c4;" (type_identifier "undefined4") (identifier "uStack_c4") (; ";")) (declaration "double *pdStack_c0;" (primitive_type "double") (pointer_declarator "*pdStack_c0" (* "*") (identifier "pdStack_c0")) (; ";")) (declaration "double *pdStack_b8;" (primitive_type "double") (pointer_declarator "*pdStack_b8" (* "*") (identifier "pdStack_b8")) (; ";")) (declaration "undefined4 uStack_a4;" (type_identifier "undefined4") (identifier "uStack_a4") (; ";")) (declaration "double *pdStack_a0;" (primitive_type "double") (pointer_declarator "*pdStack_a0" (* "*") (identifier "pdStack_a0")) (; ";")) (declaration "double *pdStack_98;" (primitive_type "double") (pointer_declarator "*pdStack_98" (* "*") (identifier "pdStack_98")) (; ";")) (declaration "undefined4 uStack_84;" (type_identifier "undefined4") (identifier "uStack_84") (; ";")) (declaration "undefined4 uStack_5c;" (type_identifier "undefined4") (identifier "uStack_5c") (; ";")) (declaration "double *pdStack_58;" (primitive_type "double") (pointer_declarator "*pdStack_58" (* "*") (identifier "pdStack_58")) (; ";")) (declaration "double *pdStack_50;" (primitive_type "double") (pointer_declarator "*pdStack_50" (* "*") (identifier "pdStack_50")) (; ";")) (declaration "undefined4 uStack_3c;" (type_identifier "undefined4") (identifier "uStack_3c") (; ";")) (if_statement "if (in_stack_00000018 == (double *)0x0) {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }\n  else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" (if "if") (parenthesized_expression "(in_stack_00000018 == (double *)0x0)" (( "(") (binary_expression "in_stack_00000018 == (double *)0x0" (identifier "in_stack_00000018") (== "==") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);\nLAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;\n    (*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);\n  }" ({ "{") (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" (identifier "puVar9") (= "=") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x7ab8"))) (; ";")) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_003a9608" (* "*") (cast_expression "(code *)PTR___assert_fail_003a9608" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_003a9608"))) () ")")) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x39a") (, ",") (identifier "puVar9") () ")"))) (; ";")) (labeled_statement "LAB_000e6d3c:\n    puVar9 = puVar9 + 0x7ab8;" (statement_identifier "LAB_000e6d3c") (: ":") (expression_statement "puVar9 = puVar9 + 0x7ab8;" (assignment_expression "puVar9 = puVar9 + 0x7ab8" (identifier "puVar9") (= "=") (binary_expression "puVar9 + 0x7ab8" (identifier "puVar9") (+ "+") (number_literal "0x7ab8"))) (; ";"))) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_003a9608" (* "*") (cast_expression "(code *)PTR___assert_fail_003a9608" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_003a9608"))) () ")")) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,\n               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x780c")) (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x39c") (, ",") (identifier "puVar9") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" (else "else") (compound_statement "{\n    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n    if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }\n  }" ({ "{") (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" (identifier "puVar9") (= "=") (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8")) (; ";")) (if_statement "if (in_stack_0000001c != (double *)0x0) {\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }" (if "if") (parenthesized_expression "(in_stack_0000001c != (double *)0x0)" (( "(") (binary_expression "in_stack_0000001c != (double *)0x0" (identifier "in_stack_0000001c") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }\n      goto LAB_000e6d3c;\n    }" ({ "{") (if_statement "if (in_stack_00000020 != (double *)0x0) {\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }" (if "if") (parenthesized_expression "(in_stack_00000020 != (double *)0x0)" (( "(") (binary_expression "in_stack_00000020 != (double *)0x0" (identifier "in_stack_00000020") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        dVar18 = in_stack_00000010;\n        if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar19 = param_1;\n        if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar18 = param_2;\n        if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }\n        dVar17 = param_1;\n        if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }\n        dVar17 = dVar19 - dVar17;\n        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);\n        if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }\n        dVar18 = 0.0;\nLAB_000e6c48:\n        *in_stack_00000018 = dVar18;\n        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;\n        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);\n        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);\n        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);\n        *in_stack_0000001c = dVar17 * dVar19;\n        dVar18 = *(double *)(puVar9 + -0x3e78);\n        *in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;\n        return dVar18;\n      }" ({ "{") (expression_statement "dVar18 = in_stack_00000010;" (assignment_expression "dVar18 = in_stack_00000010" (identifier "dVar18") (= "=") (identifier "in_stack_00000010")) (; ";")) (if_statement "if (in_stack_00000010 < param_2) {\n          dVar18 = param_2;\n        }" (if "if") (parenthesized_expression "(in_stack_00000010 < param_2)" (( "(") (binary_expression "in_stack_00000010 < param_2" (identifier "in_stack_00000010") (< "<") (identifier "param_2")) () ")")) (compound_statement "{\n          dVar18 = param_2;\n        }" ({ "{") (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (expression_statement "dVar19 = param_1;" (assignment_expression "dVar19 = param_1" (identifier "dVar19") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 <= dVar18) {\n          dVar19 = dVar18;\n        }" (if "if") (parenthesized_expression "(param_1 <= dVar18)" (( "(") (binary_expression "param_1 <= dVar18" (identifier "param_1") (<= "<=") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar19 = dVar18;\n        }" ({ "{") (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" (identifier "dVar19") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (in_stack_00000010 <= param_2) {\n          dVar18 = in_stack_00000010;\n        }" (if "if") (parenthesized_expression "(in_stack_00000010 <= param_2)" (( "(") (binary_expression "in_stack_00000010 <= param_2" (identifier "in_stack_00000010") (<= "<=") (identifier "param_2")) () ")")) (compound_statement "{\n          dVar18 = in_stack_00000010;\n        }" ({ "{") (expression_statement "dVar18 = in_stack_00000010;" (assignment_expression "dVar18 = in_stack_00000010" (identifier "dVar18") (= "=") (identifier "in_stack_00000010")) (; ";")) (} "}"))) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" (identifier "dVar17") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (dVar18 <= param_1) {\n          dVar17 = dVar18;\n        }" (if "if") (parenthesized_expression "(dVar18 <= param_1)" (( "(") (binary_expression "dVar18 <= param_1" (identifier "dVar18") (<= "<=") (identifier "param_1")) () ")")) (compound_statement "{\n          dVar17 = dVar18;\n        }" ({ "{") (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" (identifier "dVar17") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar17 = dVar19 - dVar17;" (assignment_expression "dVar17 = dVar19 - dVar17" (identifier "dVar17") (= "=") (binary_expression "dVar19 - dVar17" (identifier "dVar19") (- "-") (identifier "dVar17"))) (; ";")) (expression_statement "dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);" (assignment_expression "dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8)" (identifier "dVar18") (= "=") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x13f8)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x13f8)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x13f8" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x13f8")) () ")"))))) (; ";")) (if_statement "if (dVar18 <= ABS(dVar17)) {\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" (if "if") (parenthesized_expression "(dVar18 <= ABS(dVar17))" (( "(") (binary_expression "dVar18 <= ABS(dVar17)" (identifier "dVar18") (<= "<=") (call_expression "ABS(dVar17)" (identifier "ABS") (argument_list "(dVar17)" (( "(") (identifier "dVar17") () ")")))) () ")")) (compound_statement "{\n          if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }\n          if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n          if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }\n        }" ({ "{") (if_statement "if (ABS(param_1 - dVar19) < dVar18) {\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }" (if "if") (parenthesized_expression "(ABS(param_1 - dVar19) < dVar18)" (( "(") (binary_expression "ABS(param_1 - dVar19) < dVar18" (call_expression "ABS(param_1 - dVar19)" (identifier "ABS") (argument_list "(param_1 - dVar19)" (( "(") (binary_expression "param_1 - dVar19" (identifier "param_1") (- "-") (identifier "dVar19")) () ")"))) (< "<") (identifier "dVar18")) () ")")) (compound_statement "{\n            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);\n            dVar18 = dVar18 / dVar19;\n            goto LAB_000e6c48;\n          }" ({ "{") (expression_statement "dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (identifier "dVar19") (= "=") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x2e50")) () ")"))))) (; ";")) (expression_statement "dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);" (assignment_expression "dVar18 = (double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" (identifier "dVar18") (= "=") (cast_expression "(double)(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(code *)PTR_fmod_003a99b8)\n                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" (parenthesized_expression "(*(code *)PTR_fmod_003a99b8)" (( "(") (pointer_expression "*(code *)PTR_fmod_003a99b8" (* "*") (cast_expression "(code *)PTR_fmod_003a99b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_fmod_003a99b8"))) () ")")) (argument_list "((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19)" (( "(") (binary_expression "(param_2 - in_stack_00000010) / dVar17 + dVar19" (binary_expression "(param_2 - in_stack_00000010) / dVar17" (parenthesized_expression "(param_2 - in_stack_00000010)" (( "(") (binary_expression "param_2 - in_stack_00000010" (identifier "param_2") (- "-") (identifier "in_stack_00000010")) () ")")) (/ "/") (identifier "dVar17")) (+ "+") (identifier "dVar19")) (, ",") (identifier "dVar19") () ")"))))) (; ";")) (expression_statement "dVar18 = dVar18 / dVar19;" (assignment_expression "dVar18 = dVar18 / dVar19" (identifier "dVar18") (= "=") (binary_expression "dVar18 / dVar19" (identifier "dVar18") (/ "/") (identifier "dVar19"))) (; ";")) (goto_statement "goto LAB_000e6c48;" (goto "goto") (statement_identifier "LAB_000e6c48") (; ";")) (} "}"))) (if_statement "if (ABS(param_2 - dVar19) < dVar18) {\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" (if "if") (parenthesized_expression "(ABS(param_2 - dVar19) < dVar18)" (( "(") (binary_expression "ABS(param_2 - dVar19) < dVar18" (call_expression "ABS(param_2 - dVar19)" (identifier "ABS") (argument_list "(param_2 - dVar19)" (( "(") (binary_expression "param_2 - dVar19" (identifier "param_2") (- "-") (identifier "dVar19")) () ")"))) (< "<") (identifier "dVar18")) () ")")) (compound_statement "{\n            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" ({ "{") (expression_statement "dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = ((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (identifier "dVar18") (= "=") (binary_expression "((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48))" (( "(") (binary_expression "(in_stack_00000010 - param_1) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (binary_expression "(in_stack_00000010 - param_1) / dVar17" (parenthesized_expression "(in_stack_00000010 - param_1)" (( "(") (binary_expression "in_stack_00000010 - param_1" (identifier "in_stack_00000010") (- "-") (identifier "param_1")) () ")")) (/ "/") (identifier "dVar17")) (+ "+") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x2e48")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x2e50")) () ")")))))) (; ";")) (goto_statement "goto LAB_000e6c48;" (goto "goto") (statement_identifier "LAB_000e6c48") (; ";")) (} "}"))) (if_statement "if (ABS(in_stack_00000010 - dVar19) < dVar18) {\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" (if "if") (parenthesized_expression "(ABS(in_stack_00000010 - dVar19) < dVar18)" (( "(") (binary_expression "ABS(in_stack_00000010 - dVar19) < dVar18" (call_expression "ABS(in_stack_00000010 - dVar19)" (identifier "ABS") (argument_list "(in_stack_00000010 - dVar19)" (( "(") (binary_expression "in_stack_00000010 - dVar19" (identifier "in_stack_00000010") (- "-") (identifier "dVar19")) () ")"))) (< "<") (identifier "dVar18")) () ")")) (compound_statement "{\n            dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);\n            goto LAB_000e6c48;\n          }" ({ "{") (expression_statement "dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);" (assignment_expression "dVar18 = ((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (identifier "dVar18") (= "=") (binary_expression "((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (parenthesized_expression "((param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8))" (( "(") (binary_expression "(param_1 - param_2) / dVar17 +\n                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar17" (parenthesized_expression "(param_1 - param_2)" (( "(") (binary_expression "param_1 - param_2" (identifier "param_1") (- "-") (identifier "param_2")) () ")")) (/ "/") (identifier "dVar17")) (+ "+") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x3cc8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x2e50")) () ")")))))) (; ";")) (goto_statement "goto LAB_000e6c48;" (goto "goto") (statement_identifier "LAB_000e6c48") (; ";")) (} "}"))) (} "}"))) (expression_statement "dVar18 = 0.0;" (assignment_expression "dVar18 = 0.0" (identifier "dVar18") (= "=") (number_literal "0.0")) (; ";")) (labeled_statement "LAB_000e6c48:\n        *in_stack_00000018 = dVar18;" (statement_identifier "LAB_000e6c48") (: ":") (expression_statement "*in_stack_00000018 = dVar18;" (assignment_expression "*in_stack_00000018 = dVar18" (pointer_expression "*in_stack_00000018" (* "*") (identifier "in_stack_00000018")) (= "=") (identifier "dVar18")) (; ";"))) (expression_statement "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;" (assignment_expression "puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8" (identifier "puVar9") (= "=") (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8")) (; ";")) (expression_statement "dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);" (assignment_expression "dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440)" (identifier "dVar19") (= "=") (pointer_expression "*(double *)(PTR_LAB_003a88e0 + 0x1440)" (* "*") (cast_expression "(double *)(PTR_LAB_003a88e0 + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_003a88e0 + 0x1440)" (( "(") (binary_expression "PTR_LAB_003a88e0 + 0x1440" (identifier "PTR_LAB_003a88e0") (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);" (assignment_expression "dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x3e90")) () ")"))))) (; ";")) (expression_statement "dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);" (assignment_expression "dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" (* "*") (cast_expression "(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "-0x3ea0")) () ")"))))) (; ";")) (expression_statement "*in_stack_0000001c = dVar17 * dVar19;" (assignment_expression "*in_stack_0000001c = dVar17 * dVar19" (pointer_expression "*in_stack_0000001c" (* "*") (identifier "in_stack_0000001c")) (= "=") (binary_expression "dVar17 * dVar19" (identifier "dVar17") (* "*") (identifier "dVar19"))) (; ";")) (expression_statement "dVar18 = *(double *)(puVar9 + -0x3e78);" (assignment_expression "dVar18 = *(double *)(puVar9 + -0x3e78)" (identifier "dVar18") (= "=") (pointer_expression "*(double *)(puVar9 + -0x3e78)" (* "*") (cast_expression "(double *)(puVar9 + -0x3e78)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar9 + -0x3e78)" (( "(") (binary_expression "puVar9 + -0x3e78" (identifier "puVar9") (+ "+") (number_literal "-0x3e78")) () ")"))))) (; ";")) (expression_statement "*in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;" (assignment_expression "*in_stack_00000020 =\n             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19" (pointer_expression "*in_stack_00000020" (* "*") (identifier "in_stack_00000020")) (= "=") (binary_expression "(in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19" (parenthesized_expression "(in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23)" (( "(") (binary_expression "in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23" (binary_expression "in_stack_00000010 * dVar18 + param_1 * dVar20" (binary_expression "in_stack_00000010 * dVar18" (identifier "in_stack_00000010") (* "*") (identifier "dVar18")) (+ "+") (binary_expression "param_1 * dVar20" (identifier "param_1") (* "*") (identifier "dVar20"))) (+ "+") (binary_expression "param_2 * dVar23" (identifier "param_2") (* "*") (identifier "dVar23"))) () ")")) (* "*") (identifier "dVar19"))) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (goto_statement "goto LAB_000e6d3c;" (goto "goto") (statement_identifier "LAB_000e6d3c") (; ";")) (} "}"))) (} "}")))) (expression_statement "pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);" (assignment_expression "pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20)" (identifier "pdVar5") (= "=") (cast_expression "(double *)((ulonglong)in_stack_00000010 >> 0x20)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulonglong)in_stack_00000010 >> 0x20)" (( "(") (binary_expression "(ulonglong)in_stack_00000010 >> 0x20" (cast_expression "(ulonglong)in_stack_00000010" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "in_stack_00000010")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "pcVar14 = FUN_000e6d7c;" (assignment_expression "pcVar14 = FUN_000e6d7c" (identifier "pcVar14") (= "=") (identifier "FUN_000e6d7c")) (; ";")) (expression_statement "puVar11 = PTR___assert_fail_003a9608;" (assignment_expression "puVar11 = PTR___assert_fail_003a9608" (identifier "puVar11") (= "=") (identifier "PTR___assert_fail_003a9608")) (; ";")) (expression_statement "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);" (call_expression "(*(code *)PTR___assert_fail_003a9608)\n            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8)" (parenthesized_expression "(*(code *)PTR___assert_fail_003a9608)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_003a9608" (* "*") (cast_expression "(code *)PTR___assert_fail_003a9608" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_003a9608"))) () ")")) (argument_list "(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,\n             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8)" (( "(") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x77f0")) (, ",") (binary_expression "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790" (identifier "PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8") (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x39b") (, ",") (binary_expression "puVar9 + 0x7ab8" (identifier "puVar9") (+ "+") (number_literal "0x7ab8")) () ")"))) (; ";")) (expression_statement "dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);" (assignment_expression "dVar18 = (double)CONCAT44(&_gp_1,uStack_3c)" (identifier "dVar18") (= "=") (cast_expression "(double)CONCAT44(&_gp_1,uStack_3c)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(&_gp_1,uStack_3c)" (identifier "CONCAT44") (argument_list "(&_gp_1,uStack_3c)" (( "(") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (, ",") (identifier "uStack_3c") () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b6c)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")"))))) (; ";")) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }\n  else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" (if "if") (parenthesized_expression "(unaff_s0 == (double *)0x0)" (( "(") (binary_expression "unaff_s0 == (double *)0x0" (identifier "unaff_s0") (== "==") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\nLAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;\n    iVar4 = iVar4 + 0x7844;\n    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);\n  }" ({ "{") (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7790" (identifier "iVar6") (+ "+") (number_literal "0x7790"))) (; ";")) (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8" (identifier "iVar4") (= "=") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x77d8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "0x77d8"))) (; ";")) (expression_statement "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar11 + 0x2c288c))" (( "(") (pointer_expression "**(code **)(puVar11 + 0x2c288c)" (* "*") (pointer_expression "*(code **)(puVar11 + 0x2c288c)" (* "*") (cast_expression "(code **)(puVar11 + 0x2c288c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + 0x2c288c)" (( "(") (binary_expression "puVar11 + 0x2c288c" (identifier "puVar11") (+ "+") (number_literal "0x2c288c")) () ")"))))) () ")")) (argument_list "(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (( "(") (identifier "iVar4") (, ",") (identifier "iVar6") (, ",") (number_literal "0x3d7") (, ",") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "0x7aa8")) () ")"))) (; ";")) (labeled_statement "LAB_000e6fbc:\n    iVar6 = iVar6 + 0x7790;" (statement_identifier "LAB_000e6fbc") (: ":") (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7790" (identifier "iVar6") (+ "+") (number_literal "0x7790"))) (; ";"))) (expression_statement "iVar4 = iVar4 + 0x7844;" (assignment_expression "iVar4 = iVar4 + 0x7844" (identifier "iVar4") (= "=") (binary_expression "iVar4 + 0x7844" (identifier "iVar4") (+ "+") (number_literal "0x7844"))) (; ";")) (expression_statement "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(**(code **)(puVar11 + 0x2c288c))" (( "(") (pointer_expression "**(code **)(puVar11 + 0x2c288c)" (* "*") (pointer_expression "*(code **)(puVar11 + 0x2c288c)" (* "*") (cast_expression "(code **)(puVar11 + 0x2c288c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + 0x2c288c)" (( "(") (binary_expression "puVar11 + 0x2c288c" (identifier "puVar11") (+ "+") (number_literal "0x2c288c")) () ")"))))) () ")")) (argument_list "(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (( "(") (identifier "iVar4") (, ",") (identifier "iVar6") (, ",") (number_literal "0x3d9") (, ",") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "0x7aa8")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" (else "else") (compound_statement "{\n    iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n    if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }\n  }" ({ "{") (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")"))))) (; ";")) (if_statement "if (unaff_s1 != (double *)0x0) {\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }" (if "if") (parenthesized_expression "(unaff_s1 != (double *)0x0)" (( "(") (binary_expression "unaff_s1 != (double *)0x0" (identifier "unaff_s1") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      iVar4 = *(int *)(puVar11 + 0x2c1b6c);\n      if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }\n      goto LAB_000e6fbc;\n    }" ({ "{") (expression_statement "iVar4 = *(int *)(puVar11 + 0x2c1b6c);" (assignment_expression "iVar4 = *(int *)(puVar11 + 0x2c1b6c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")"))))) (; ";")) (if_statement "if (unaff_s2 != (double *)0x0) {\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }" (if "if") (parenthesized_expression "(unaff_s2 != (double *)0x0)" (( "(") (binary_expression "unaff_s2 != (double *)0x0" (identifier "unaff_s2") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        *(undefined4 *)((int)unaff_s0 + 4) = 0;\n        *(undefined4 *)unaff_s0 = 0;\n        *(undefined4 *)((int)unaff_s1 + 4) = 0;\n        *(undefined4 *)unaff_s1 = 0;\n        *(undefined4 *)((int)unaff_s2 + 4) = 0;\n        *(undefined4 *)unaff_s2 = 0;\n        dVar19 = param_2;\n        if (param_1 < param_2) {\n          dVar19 = param_1;\n        }\n        dVar17 = dVar18;\n        if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }\n        uVar3 = SUB84(param_2,0);\n        if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }\n        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }\n        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);\n        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }\n        return dVar18;\n      }" ({ "{") (expression_statement "*(undefined4 *)((int)unaff_s0 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s0 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s0 + 4)" (* "*") (cast_expression "(undefined4 *)((int)unaff_s0 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s0 + 4)" (( "(") (binary_expression "(int)unaff_s0 + 4" (cast_expression "(int)unaff_s0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s0")) (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)unaff_s0 = 0;" (assignment_expression "*(undefined4 *)unaff_s0 = 0" (pointer_expression "*(undefined4 *)unaff_s0" (* "*") (cast_expression "(undefined4 *)unaff_s0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s0"))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)((int)unaff_s1 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s1 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s1 + 4)" (* "*") (cast_expression "(undefined4 *)((int)unaff_s1 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s1 + 4)" (( "(") (binary_expression "(int)unaff_s1 + 4" (cast_expression "(int)unaff_s1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s1")) (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)unaff_s1 = 0;" (assignment_expression "*(undefined4 *)unaff_s1 = 0" (pointer_expression "*(undefined4 *)unaff_s1" (* "*") (cast_expression "(undefined4 *)unaff_s1" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s1"))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)((int)unaff_s2 + 4) = 0;" (assignment_expression "*(undefined4 *)((int)unaff_s2 + 4) = 0" (pointer_expression "*(undefined4 *)((int)unaff_s2 + 4)" (* "*") (cast_expression "(undefined4 *)((int)unaff_s2 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s2 + 4)" (( "(") (binary_expression "(int)unaff_s2 + 4" (cast_expression "(int)unaff_s2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)unaff_s2 = 0;" (assignment_expression "*(undefined4 *)unaff_s2 = 0" (pointer_expression "*(undefined4 *)unaff_s2" (* "*") (cast_expression "(undefined4 *)unaff_s2" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s2"))) (= "=") (number_literal "0")) (; ";")) (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" (identifier "dVar19") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (param_1 < param_2) {\n          dVar19 = param_1;\n        }" (if "if") (parenthesized_expression "(param_1 < param_2)" (( "(") (binary_expression "param_1 < param_2" (identifier "param_1") (< "<") (identifier "param_2")) () ")")) (compound_statement "{\n          dVar19 = param_1;\n        }" ({ "{") (expression_statement "dVar19 = param_1;" (assignment_expression "dVar19 = param_1" (identifier "dVar19") (= "=") (identifier "param_1")) (; ";")) (} "}"))) (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" (identifier "dVar17") (= "=") (identifier "dVar18")) (; ";")) (if_statement "if (dVar19 <= dVar18) {\n          dVar17 = dVar19;\n        }" (if "if") (parenthesized_expression "(dVar19 <= dVar18)" (( "(") (binary_expression "dVar19 <= dVar18" (identifier "dVar19") (<= "<=") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar17 = dVar19;\n        }" ({ "{") (expression_statement "dVar17 = dVar19;" (assignment_expression "dVar17 = dVar19" (identifier "dVar17") (= "=") (identifier "dVar19")) (; ";")) (} "}"))) (expression_statement "uVar3 = SUB84(param_2,0);" (assignment_expression "uVar3 = SUB84(param_2,0)" (identifier "uVar3") (= "=") (call_expression "SUB84(param_2,0)" (identifier "SUB84") (argument_list "(param_2,0)" (( "(") (identifier "param_2") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (param_2 < param_1) {\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }\n        else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" (if "if") (parenthesized_expression "(param_2 < param_1)" (( "(") (binary_expression "param_2 < param_1" (identifier "param_2") (< "<") (identifier "param_1")) () ")")) (compound_statement "{\n          uVar3 = SUB84(param_1,0);\n          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);\n        }" ({ "{") (expression_statement "uVar3 = SUB84(param_1,0);" (assignment_expression "uVar3 = SUB84(param_1,0)" (identifier "uVar3") (= "=") (call_expression "SUB84(param_1,0)" (identifier "SUB84") (argument_list "(param_1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20)" (identifier "puVar1") (= "=") (cast_expression "(undefined1 *)((ulonglong)param_1 >> 0x20)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulonglong)param_1 >> 0x20)" (( "(") (binary_expression "(ulonglong)param_1 >> 0x20" (cast_expression "(ulonglong)param_1" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "param_1")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" (else "else") (compound_statement "{\n          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);\n        }" ({ "{") (expression_statement "puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);" (assignment_expression "puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20)" (identifier "puVar1") (= "=") (cast_expression "(undefined1 *)((ulonglong)param_2 >> 0x20)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulonglong)param_2 >> 0x20)" (( "(") (binary_expression "(ulonglong)param_2 >> 0x20" (cast_expression "(ulonglong)param_2" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "param_2")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (} "}")))) (if_statement "if ((double)CONCAT44(puVar1,uVar3) < dVar18) {\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }" (if "if") (parenthesized_expression "((double)CONCAT44(puVar1,uVar3) < dVar18)" (( "(") (binary_expression "(double)CONCAT44(puVar1,uVar3) < dVar18" (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")")))) (< "<") (identifier "dVar18")) () ")")) (compound_statement "{\n          puVar1 = &_gp_1;\n          uVar3 = uStack_3c;\n        }" ({ "{") (expression_statement "puVar1 = &_gp_1;" (assignment_expression "puVar1 = &_gp_1" (identifier "puVar1") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (expression_statement "uVar3 = uStack_3c;" (assignment_expression "uVar3 = uStack_3c" (identifier "uVar3") (= "=") (identifier "uStack_3c")) (; ";")) (} "}"))) (expression_statement "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);" (assignment_expression "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" (identifier "dVar19") (= "=") (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b64) + 0x13f8)" (( "(") (binary_expression "*(int *)(puVar11 + 0x2c1b64) + 0x13f8" (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b64)" (( "(") (binary_expression "puVar11 + 0x2c1b64" (identifier "puVar11") (+ "+") (number_literal "0x2c1b64")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) (; ";")) (if_statement "if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }" (if "if") (parenthesized_expression "(dVar19 <= ABS((double)CONCAT44(puVar1,uVar3)))" (( "(") (binary_expression "dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))" (identifier "dVar19") (<= "<=") (call_expression "ABS((double)CONCAT44(puVar1,uVar3))" (identifier "ABS") (argument_list "((double)CONCAT44(puVar1,uVar3))" (( "(") (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")")))) () ")")))) () ")")) (compound_statement "{\n          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;\n          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);\n          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);\n          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;\n          if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }\n        }" ({ "{") (expression_statement "dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;" (assignment_expression "dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17" (identifier "dVar17") (= "=") (binary_expression "(double)CONCAT44(puVar1,uVar3) - dVar17" (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")")))) (- "-") (identifier "dVar17"))) (; ";")) (expression_statement "dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b64) + 0x1440)" (( "(") (binary_expression "*(int *)(puVar11 + 0x2c1b64) + 0x1440" (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b64)" (( "(") (binary_expression "puVar11 + 0x2c1b64" (identifier "puVar11") (+ "+") (number_literal "0x2c1b64")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "*unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);" (assignment_expression "*unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3)" (pointer_expression "*unaff_s1" (* "*") (identifier "unaff_s1")) (= "=") (binary_expression "dVar17 / (double)CONCAT44(puVar1,uVar3)" (identifier "dVar17") (/ "/") (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")")))))) (; ";")) (expression_statement "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;" (assignment_expression "*unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20" (pointer_expression "*unaff_s2" (* "*") (identifier "unaff_s2")) (= "=") (binary_expression "(double)CONCAT44(puVar1,uVar3) * dVar20" (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")")))) (* "*") (identifier "dVar20"))) (; ";")) (if_statement "if (dVar19 <= ABS(dVar17)) {\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }" (if "if") (parenthesized_expression "(dVar19 <= ABS(dVar17))" (( "(") (binary_expression "dVar19 <= ABS(dVar17)" (identifier "dVar19") (<= "<=") (call_expression "ABS(dVar17)" (identifier "ABS") (argument_list "(dVar17)" (( "(") (identifier "dVar17") () ")")))) () ")")) (compound_statement "{\n            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }\n          }" ({ "{") (if_statement "if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }\n            else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" (if "if") (parenthesized_expression "(dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3)))" (( "(") (binary_expression "dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))" (identifier "dVar19") (<= "<=") (call_expression "ABS(param_1 - (double)CONCAT44(puVar1,uVar3))" (identifier "ABS") (argument_list "(param_1 - (double)CONCAT44(puVar1,uVar3))" (( "(") (binary_expression "param_1 - (double)CONCAT44(puVar1,uVar3)" (identifier "param_1") (- "-") (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")"))))) () ")")))) () ")")) (compound_statement "{\n              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }\n              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" ({ "{") (if_statement "if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }\n              else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" (if "if") (parenthesized_expression "(ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19)" (( "(") (binary_expression "ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19" (call_expression "ABS(param_2 - (double)CONCAT44(puVar1,uVar3))" (identifier "ABS") (argument_list "(param_2 - (double)CONCAT44(puVar1,uVar3))" (( "(") (binary_expression "param_2 - (double)CONCAT44(puVar1,uVar3)" (identifier "param_2") (- "-") (cast_expression "(double)CONCAT44(puVar1,uVar3)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar1,uVar3)" (identifier "CONCAT44") (argument_list "(puVar1,uVar3)" (( "(") (identifier "puVar1") (, ",") (identifier "uVar3") () ")"))))) () ")"))) (< "<") (identifier "dVar19")) () ")")) (compound_statement "{\n                dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);\n                *unaff_s0 = dVar18;\n              }" ({ "{") (expression_statement "dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);" (assignment_expression "dVar18 = (dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (identifier "dVar18") (= "=") (binary_expression "(dVar18 - param_1) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (binary_expression "(dVar18 - param_1) / dVar17" (parenthesized_expression "(dVar18 - param_1)" (( "(") (binary_expression "dVar18 - param_1" (identifier "dVar18") (- "-") (identifier "param_1")) () ")")) (/ "/") (identifier "dVar17")) (+ "+") (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (* "*") (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48)" (( "(") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e48" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "-0x2e48")) () ")")))))) (; ";")) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (identifier "dVar18")) (; ";")) (} "}")) (else_clause "else {\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" (else "else") (compound_statement "{\n                dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);\n                *unaff_s0 = dVar18;\n              }" ({ "{") (expression_statement "dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);" (assignment_expression "dVar18 = (param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (identifier "dVar18") (= "=") (binary_expression "(param_1 - param_2) / dVar17 +\n                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar17" (parenthesized_expression "(param_1 - param_2)" (( "(") (binary_expression "param_1 - param_2" (identifier "param_1") (- "-") (identifier "param_2")) () ")")) (/ "/") (identifier "dVar17")) (+ "+") (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (* "*") (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8)" (( "(") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "-0x3cc8")) () ")")))))) (; ";")) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (identifier "dVar18")) (; ";")) (} "}")))) (expression_statement "dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (identifier "dVar18") (= "=") (binary_expression "dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (identifier "dVar18") (/ "/") (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (* "*") (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (( "(") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "-0x2e50")) () ")")))))) (; ";")) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b64)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b64)" (( "(") (binary_expression "puVar11 + 0x2c1b64" (identifier "puVar11") (+ "+") (number_literal "0x2c1b64")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" (else "else") (compound_statement "{\n              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);\n              dVar17 = (param_2 - dVar18) / dVar17;\n              *unaff_s0 = dVar17;\n              dVar18 = dVar17 / dVar19;\n              iVar6 = *(int *)(puVar11 + 0x2c1b64);\n            }" ({ "{") (expression_statement "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);" (assignment_expression "dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (identifier "dVar19") (= "=") (pointer_expression "*(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (* "*") (cast_expression "(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50)" (( "(") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + -0x2e50" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "-0x2e50")) () ")"))))) (; ";")) (expression_statement "dVar17 = (param_2 - dVar18) / dVar17;" (assignment_expression "dVar17 = (param_2 - dVar18) / dVar17" (identifier "dVar17") (= "=") (binary_expression "(param_2 - dVar18) / dVar17" (parenthesized_expression "(param_2 - dVar18)" (( "(") (binary_expression "param_2 - dVar18" (identifier "param_2") (- "-") (identifier "dVar18")) () ")")) (/ "/") (identifier "dVar17"))) (; ";")) (expression_statement "*unaff_s0 = dVar17;" (assignment_expression "*unaff_s0 = dVar17" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (identifier "dVar17")) (; ";")) (expression_statement "dVar18 = dVar17 / dVar19;" (assignment_expression "dVar18 = dVar17 / dVar19" (identifier "dVar18") (= "=") (binary_expression "dVar17 / dVar19" (identifier "dVar17") (/ "/") (identifier "dVar19"))) (; ";")) (expression_statement "iVar6 = *(int *)(puVar11 + 0x2c1b64);" (assignment_expression "iVar6 = *(int *)(puVar11 + 0x2c1b64)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(puVar11 + 0x2c1b64)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b64)" (( "(") (binary_expression "puVar11 + 0x2c1b64" (identifier "puVar11") (+ "+") (number_literal "0x2c1b64")) () ")"))))) (; ";")) (} "}")))) (if_statement "if (dVar18 < 0.0) {\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }\n            else {\n              *unaff_s0 = dVar18;\n            }" (if "if") (parenthesized_expression "(dVar18 < 0.0)" (( "(") (binary_expression "dVar18 < 0.0" (identifier "dVar18") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);\n              *unaff_s0 = dVar18;\n            }" ({ "{") (expression_statement "dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(iVar6 + 0x1438)" (identifier "dVar18") (= "=") (binary_expression "dVar18 + *(double *)(iVar6 + 0x1438)" (identifier "dVar18") (+ "+") (pointer_expression "*(double *)(iVar6 + 0x1438)" (* "*") (cast_expression "(double *)(iVar6 + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x1438)" (( "(") (binary_expression "iVar6 + 0x1438" (identifier "iVar6") (+ "+") (number_literal "0x1438")) () ")")))))) (; ";")) (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (identifier "dVar18")) (; ";")) (} "}")) (else_clause "else {\n              *unaff_s0 = dVar18;\n            }" (else "else") (compound_statement "{\n              *unaff_s0 = dVar18;\n            }" ({ "{") (expression_statement "*unaff_s0 = dVar18;" (assignment_expression "*unaff_s0 = dVar18" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (identifier "dVar18")) (; ";")) (} "}")))) (} "}"))) (} "}"))) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (goto_statement "goto LAB_000e6fbc;" (goto "goto") (statement_identifier "LAB_000e6fbc") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar12 = *(code **)(puVar11 + 0x2c288c);" (assignment_expression "pcVar12 = *(code **)(puVar11 + 0x2c288c)" (identifier "pcVar12") (= "=") (pointer_expression "*(code **)(puVar11 + 0x2c288c)" (* "*") (cast_expression "(code **)(puVar11 + 0x2c288c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + 0x2c288c)" (( "(") (binary_expression "puVar11 + 0x2c288c" (identifier "puVar11") (+ "+") (number_literal "0x2c288c")) () ")"))))) (; ";")) (expression_statement "pcVar15 = FUN_000e6ff4;" (assignment_expression "pcVar15 = FUN_000e6ff4" (identifier "pcVar15") (= "=") (identifier "FUN_000e6ff4")) (; ";")) (expression_statement "(*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);" (call_expression "(*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (parenthesized_expression "(*pcVar12)" (( "(") (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) () ")")) (argument_list "(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8)" (( "(") (binary_expression "iVar4 + 0x7824" (identifier "iVar4") (+ "+") (number_literal "0x7824")) (, ",") (binary_expression "iVar6 + 0x7790" (identifier "iVar6") (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x3d8") (, ",") (binary_expression "*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8" (pointer_expression "*(int *)(puVar11 + 0x2c1b6c)" (* "*") (cast_expression "(int *)(puVar11 + 0x2c1b6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0x2c1b6c)" (( "(") (binary_expression "puVar11 + 0x2c1b6c" (identifier "puVar11") (+ "+") (number_literal "0x2c1b6c")) () ")")))) (+ "+") (number_literal "0x7aa8")) () ")"))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c18f4);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c18f4)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")"))))) (; ";")) (if_statement "if (pdStack_58 != (double *)0x0) {\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }" (if "if") (parenthesized_expression "(pdStack_58 != (double *)0x0)" (( "(") (binary_expression "pdStack_58 != (double *)0x0" (identifier "pdStack_58") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }\n    iVar6 = iVar6 + 0x7a98;\n    (**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);\n  }" ({ "{") (if_statement "if ((double *)pcVar14 != (double *)0x0) {\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" (if "if") (parenthesized_expression "((double *)pcVar14 != (double *)0x0)" (( "(") (binary_expression "(double *)pcVar14 != (double *)0x0" (cast_expression "(double *)pcVar14" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14")) (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a98;\n      (**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);\n    }" ({ "{") (if_statement "if (pdStack_50 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }" (if "if") (parenthesized_expression "(pdStack_50 != (double *)0x0)" (( "(") (binary_expression "pdStack_50 != (double *)0x0" (identifier "pdStack_50") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);\n        dVar17 = param_1 * dVar18;\n        param_2 = param_2 * dVar18;\n        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;\n        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);\n        *pdStack_50 = dVar19;\n        if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }\n        dVar20 = dVar18;\n        if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }\n        if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }\n        pcVar15 = *(code **)(pcVar12 + 0x2c2014);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);\n        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;\n        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));\n        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }\n        *pdStack_58 = dVar18;\n        return dVar18;\n      }" ({ "{") (expression_statement "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" (identifier "dVar18") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18ec)" (( "(") (binary_expression "pcVar12 + 0x2c18ec" (identifier "pcVar12") (+ "+") (number_literal "0x2c18ec")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "dVar17 = param_1 * dVar18;" (assignment_expression "dVar17 = param_1 * dVar18" (identifier "dVar17") (= "=") (binary_expression "param_1 * dVar18" (identifier "param_1") (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" (identifier "param_2") (= "=") (binary_expression "param_2 * dVar18" (identifier "param_2") (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;" (assignment_expression "dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18" (identifier "dVar18") (= "=") (binary_expression "(double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18" (cast_expression "(double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(puVar11 + 0x2c9b34,uStack_5c)" (identifier "CONCAT44") (argument_list "(puVar11 + 0x2c9b34,uStack_5c)" (( "(") (binary_expression "puVar11 + 0x2c9b34" (identifier "puVar11") (+ "+") (number_literal "0x2c9b34")) (, ",") (identifier "uStack_5c") () ")")))) (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);" (assignment_expression "dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (identifier "dVar19") (= "=") (binary_expression "(dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (parenthesized_expression "(dVar17 + param_2 + dVar18)" (( "(") (binary_expression "dVar17 + param_2 + dVar18" (binary_expression "dVar17 + param_2" (identifier "dVar17") (+ "+") (identifier "param_2")) (+ "+") (identifier "dVar18")) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "-0x3cd8")) () ")")))))) (; ";")) (expression_statement "*pdStack_50 = dVar19;" (assignment_expression "*pdStack_50 = dVar19" (pointer_expression "*pdStack_50" (* "*") (identifier "pdStack_50")) (= "=") (identifier "dVar19")) (; ";")) (if_statement "if (dVar19 <= 0.0) {\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }" (if "if") (parenthesized_expression "(dVar19 <= 0.0)" (( "(") (binary_expression "dVar19 <= 0.0" (identifier "dVar19") (<= "<=") (number_literal "0.0")) () ")")) (compound_statement "{\n          *pdStack_58 = 0.0;\n          *(double *)pcVar14 = 0.0;\n          return dVar18;\n        }" ({ "{") (expression_statement "*pdStack_58 = 0.0;" (assignment_expression "*pdStack_58 = 0.0" (pointer_expression "*pdStack_58" (* "*") (identifier "pdStack_58")) (= "=") (number_literal "0.0")) (; ";")) (expression_statement "*(double *)pcVar14 = 0.0;" (assignment_expression "*(double *)pcVar14 = 0.0" (pointer_expression "*(double *)pcVar14" (* "*") (cast_expression "(double *)pcVar14" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14"))) (= "=") (number_literal "0.0")) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" (identifier "dVar20") (= "=") (identifier "dVar18")) (; ";")) (if_statement "if (param_2 < dVar18) {\n          dVar20 = param_2;\n        }" (if "if") (parenthesized_expression "(param_2 < dVar18)" (( "(") (binary_expression "param_2 < dVar18" (identifier "param_2") (< "<") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar20 = param_2;\n        }" ({ "{") (expression_statement "dVar20 = param_2;" (assignment_expression "dVar20 = param_2" (identifier "dVar20") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (if_statement "if (dVar17 < dVar20) {\n          dVar20 = dVar17;\n        }" (if "if") (parenthesized_expression "(dVar17 < dVar20)" (( "(") (binary_expression "dVar17 < dVar20" (identifier "dVar17") (< "<") (identifier "dVar20")) () ")")) (compound_statement "{\n          dVar20 = dVar17;\n        }" ({ "{") (expression_statement "dVar20 = dVar17;" (assignment_expression "dVar20 = dVar17" (identifier "dVar20") (= "=") (identifier "dVar17")) (; ";")) (} "}"))) (expression_statement "pcVar15 = *(code **)(pcVar12 + 0x2c2014);" (assignment_expression "pcVar15 = *(code **)(pcVar12 + 0x2c2014)" (identifier "pcVar15") (= "=") (pointer_expression "*(code **)(pcVar12 + 0x2c2014)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c2014)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c2014)" (( "(") (binary_expression "pcVar12 + 0x2c2014" (identifier "pcVar12") (+ "+") (number_literal "0x2c2014")) () ")"))))) (; ";")) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1438)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18ec)" (( "(") (binary_expression "pcVar12 + 0x2c18ec" (identifier "pcVar12") (+ "+") (number_literal "0x2c18ec")) () ")")))) (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" (identifier "dVar17") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7bb0")) () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7bb8")) () ")"))))) (; ";")) (expression_statement "*(double *)pcVar14 = dVar26 - dVar20 / dVar19;" (assignment_expression "*(double *)pcVar14 = dVar26 - dVar20 / dVar19" (pointer_expression "*(double *)pcVar14" (* "*") (cast_expression "(double *)pcVar14" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14"))) (= "=") (binary_expression "dVar26 - dVar20 / dVar19" (identifier "dVar26") (- "-") (binary_expression "dVar20 / dVar19" (identifier "dVar20") (/ "/") (identifier "dVar19")))) (; ";")) (expression_statement "dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));" (assignment_expression "dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" (identifier "dVar18") (= "=") (cast_expression "(double)(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar15)((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "((param_2 - dVar18) * dVar23,\n                                    ((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400))" (( "(") (binary_expression "(param_2 - dVar18) * dVar23" (parenthesized_expression "(param_2 - dVar18)" (( "(") (binary_expression "param_2 - dVar18" (identifier "param_2") (- "-") (identifier "dVar18")) () ")")) (* "*") (identifier "dVar23")) (, ",") (binary_expression "((param_1 * dVar17 - param_2) - dVar18) *\n                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" (parenthesized_expression "((param_1 * dVar17 - param_2) - dVar18)" (( "(") (binary_expression "(param_1 * dVar17 - param_2) - dVar18" (parenthesized_expression "(param_1 * dVar17 - param_2)" (( "(") (binary_expression "param_1 * dVar17 - param_2" (binary_expression "param_1 * dVar17" (identifier "param_1") (* "*") (identifier "dVar17")) (- "-") (identifier "param_2")) () ")")) (- "-") (identifier "dVar18")) () ")")) (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18ec) + 0x1400)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18ec) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c18ec)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18ec)" (( "(") (binary_expression "pcVar12 + 0x2c18ec" (identifier "pcVar12") (+ "+") (number_literal "0x2c18ec")) () ")")))) (+ "+") (number_literal "0x1400")) () ")"))))) () ")"))))) (; ";")) (expression_statement "dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);" (assignment_expression "dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (identifier "dVar18") (= "=") (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0))" (( "(") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7bc0")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "-0x5aa0")) () ")")))))) (; ";")) (if_statement "if (dVar18 < 0.0) {\n          dVar18 = dVar18 + dVar26;\n        }" (if "if") (parenthesized_expression "(dVar18 < 0.0)" (( "(") (binary_expression "dVar18 < 0.0" (identifier "dVar18") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n          dVar18 = dVar18 + dVar26;\n        }" ({ "{") (expression_statement "dVar18 = dVar18 + dVar26;" (assignment_expression "dVar18 = dVar18 + dVar26" (identifier "dVar18") (= "=") (binary_expression "dVar18 + dVar26" (identifier "dVar18") (+ "+") (identifier "dVar26"))) (; ";")) (} "}"))) (expression_statement "*pdStack_58 = dVar18;" (assignment_expression "*pdStack_58 = dVar18" (pointer_expression "*pdStack_58" (* "*") (identifier "pdStack_58")) (= "=") (identifier "dVar18")) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a98" (identifier "iVar6") (+ "+") (number_literal "0x7a98"))) (; ";")) (expression_statement "(**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c2614))\n                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2614))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c2614)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c2614)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c2614)" (( "(") (binary_expression "pcVar12 + 0x2c2614" (identifier "pcVar12") (+ "+") (number_literal "0x2c2614")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,\n                 iVar6)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7864" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7864")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x41e") (, ",") (identifier "iVar6") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 0x7a98;" (assignment_expression "iVar6 = iVar6 + 0x7a98" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a98" (identifier "iVar6") (+ "+") (number_literal "0x7a98"))) (; ";")) (expression_statement "(**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);" (call_expression "(**(code **)(pcVar12 + 0x2c2614))\n              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c2614))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c2614)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c2614)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c2614)" (( "(") (binary_expression "pcVar12 + 0x2c2614" (identifier "pcVar12") (+ "+") (number_literal "0x2c2614")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7824" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7824")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7790")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c2614);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c2614)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar12 + 0x2c2614)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c2614)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c2614)" (( "(") (binary_expression "pcVar12 + 0x2c2614" (identifier "pcVar12") (+ "+") (number_literal "0x2c2614")) () ")"))))) (; ";")) (expression_statement "pcVar16 = ConvertRGBToHSL;" (assignment_expression "pcVar16 = ConvertRGBToHSL" (identifier "pcVar16") (= "=") (identifier "ConvertRGBToHSL")) (; ";")) (expression_statement "(*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98);" (call_expression "(*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,\n             iVar6 + 0x7a98)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c18f4) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c18f4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c18f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18f4)" (( "(") (binary_expression "pcVar12 + 0x2c18f4" (identifier "pcVar12") (+ "+") (number_literal "0x2c18f4")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x41c") (, ",") (binary_expression "iVar6 + 0x7a98" (identifier "iVar6") (+ "+") (number_literal "0x7a98")) () ")"))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1748);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1748)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")"))))) (; ";")) (if_statement "if (unaff_s0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }\n  else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" (if "if") (parenthesized_expression "(unaff_s0 == (double *)0x0)" (( "(") (binary_expression "unaff_s0 == (double *)0x0" (identifier "unaff_s0") (== "==") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar6 = iVar6 + 0x7a88;\n    (**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);\nLAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    iVar6 = iVar6 + 0x7a88;\n    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);\n  }" ({ "{") (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a88" (identifier "iVar6") (+ "+") (number_literal "0x7a88"))) (; ";")) (expression_statement "(**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6);" (call_expression "(**(code **)(pcVar14 + 0x2c2468))\n              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2468))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c2468)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c2468)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c2468)" (( "(") (binary_expression "pcVar14 + 0x2c2468" (identifier "pcVar14") (+ "+") (number_literal "0x2c2468")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,\n               iVar6)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x456") (, ",") (identifier "iVar6") () ")"))) (; ";")) (labeled_statement "LAB_000e736c:\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (statement_identifier "LAB_000e736c") (: ":") (expression_statement "pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (assignment_expression "pcVar13 = *(code **)(pcVar14 + 0x2c2468)" (identifier "pcVar13") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c2468)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c2468)" (( "(") (binary_expression "pcVar14 + 0x2c2468" (identifier "pcVar14") (+ "+") (number_literal "0x2c2468")) () ")"))))) (; ";"))) (expression_statement "iVar6 = iVar6 + 0x7a88;" (assignment_expression "iVar6 = iVar6 + 0x7a88" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a88" (identifier "iVar6") (+ "+") (number_literal "0x7a88"))) (; ";")) (expression_statement "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6);" (call_expression "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" (parenthesized_expression "(*pcVar13)" (( "(") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13")) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,\n               iVar6)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7884" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x7884")) (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x458") (, ",") (identifier "iVar6") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" (else "else") (compound_statement "{\n    pcVar13 = *(code **)(pcVar14 + 0x2c2468);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }\n  }" ({ "{") (expression_statement "pcVar13 = *(code **)(pcVar14 + 0x2c2468);" (assignment_expression "pcVar13 = *(code **)(pcVar14 + 0x2c2468)" (identifier "pcVar13") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c2468)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c2468)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c2468)" (( "(") (binary_expression "pcVar14 + 0x2c2468" (identifier "pcVar14") (+ "+") (number_literal "0x2c2468")) () ")"))))) (; ";")) (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }" (if "if") (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" (( "(") (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15")) (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }\n      goto LAB_000e736c;\n    }" ({ "{") (if_statement "if (pdVar5 != (double *)0x0) {\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }" (if "if") (parenthesized_expression "(pdVar5 != (double *)0x0)" (( "(") (binary_expression "pdVar5 != (double *)0x0" (identifier "pdVar5") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);\n        param_2 = param_2 * dVar18;\n        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;\n        param_1 = param_1 * dVar18;\n        dVar18 = dVar19;\n        if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }\n        dVar17 = param_1;\n        if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }\n        dVar18 = param_2;\n        if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }\n        iVar6 = *(int *)(pcVar14 + 0x2c1740);\n        dVar20 = param_1;\n        if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }\n        dVar18 = dVar17 - dVar20;\n        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);\n        if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }\n        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }\n        dVar20 = *(double *)(iVar6 + 0x1400);\n        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);\n        dVar19 = *pdVar5;\n        dVar17 = dVar19 + dVar19;\n        if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }\n        *(double *)pcVar15 = dVar18 / dVar17;\n        return dVar18 / dVar17;\n      }" ({ "{") (expression_statement "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" (identifier "dVar18") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1740)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1740)" (( "(") (binary_expression "pcVar14 + 0x2c1740" (identifier "pcVar14") (+ "+") (number_literal "0x2c1740")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" (identifier "param_2") (= "=") (binary_expression "param_2 * dVar18" (identifier "param_2") (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;" (assignment_expression "dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18" (identifier "dVar19") (= "=") (binary_expression "(double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18" (cast_expression "(double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(pcVar12 + 0x2c98bc,uStack_84)" (identifier "CONCAT44") (argument_list "(pcVar12 + 0x2c98bc,uStack_84)" (( "(") (binary_expression "pcVar12 + 0x2c98bc" (identifier "pcVar12") (+ "+") (number_literal "0x2c98bc")) (, ",") (identifier "uStack_84") () ")")))) (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "param_1 = param_1 * dVar18;" (assignment_expression "param_1 = param_1 * dVar18" (identifier "param_1") (= "=") (binary_expression "param_1 * dVar18" (identifier "param_1") (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" (identifier "dVar18") (= "=") (identifier "dVar19")) (; ";")) (if_statement "if (dVar19 < param_2) {\n          dVar18 = param_2;\n        }" (if "if") (parenthesized_expression "(dVar19 < param_2)" (( "(") (binary_expression "dVar19 < param_2" (identifier "dVar19") (< "<") (identifier "param_2")) () ")")) (compound_statement "{\n          dVar18 = param_2;\n        }" ({ "{") (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" (identifier "dVar17") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 <= dVar18) {\n          dVar17 = dVar18;\n        }" (if "if") (parenthesized_expression "(param_1 <= dVar18)" (( "(") (binary_expression "param_1 <= dVar18" (identifier "param_1") (<= "<=") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar17 = dVar18;\n        }" ({ "{") (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" (identifier "dVar17") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (dVar19 <= param_2) {\n          dVar18 = dVar19;\n        }" (if "if") (parenthesized_expression "(dVar19 <= param_2)" (( "(") (binary_expression "dVar19 <= param_2" (identifier "dVar19") (<= "<=") (identifier "param_2")) () ")")) (compound_statement "{\n          dVar18 = dVar19;\n        }" ({ "{") (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" (identifier "dVar18") (= "=") (identifier "dVar19")) (; ";")) (} "}"))) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1740);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1740)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1740)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1740)" (( "(") (binary_expression "pcVar14 + 0x2c1740" (identifier "pcVar14") (+ "+") (number_literal "0x2c1740")) () ")"))))) (; ";")) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" (identifier "dVar20") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (dVar18 <= param_1) {\n          dVar20 = dVar18;\n        }" (if "if") (parenthesized_expression "(dVar18 <= param_1)" (( "(") (binary_expression "dVar18 <= param_1" (identifier "dVar18") (<= "<=") (identifier "param_1")) () ")")) (compound_statement "{\n          dVar20 = dVar18;\n        }" ({ "{") (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" (identifier "dVar20") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar18 = dVar17 - dVar20;" (assignment_expression "dVar18 = dVar17 - dVar20" (identifier "dVar18") (= "=") (binary_expression "dVar17 - dVar20" (identifier "dVar17") (- "-") (identifier "dVar20"))) (; ";")) (expression_statement "*pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);" (assignment_expression "*pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400)" (pointer_expression "*pdVar5" (* "*") (identifier "pdVar5")) (= "=") (binary_expression "(dVar17 + dVar20) * *(double *)(iVar6 + 0x1400)" (parenthesized_expression "(dVar17 + dVar20)" (( "(") (binary_expression "dVar17 + dVar20" (identifier "dVar17") (+ "+") (identifier "dVar20")) () ")")) (* "*") (pointer_expression "*(double *)(iVar6 + 0x1400)" (* "*") (cast_expression "(double *)(iVar6 + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x1400)" (( "(") (binary_expression "iVar6 + 0x1400" (identifier "iVar6") (+ "+") (number_literal "0x1400")) () ")")))))) (; ";")) (if_statement "if (dVar18 <= 0.0) {\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }" (if "if") (parenthesized_expression "(dVar18 <= 0.0)" (( "(") (binary_expression "dVar18 <= 0.0" (identifier "dVar18") (<= "<=") (number_literal "0.0")) () ")")) (compound_statement "{\n          *unaff_s0 = 0.0;\n          *(double *)pcVar15 = 0.0;\n          return dVar18;\n        }" ({ "{") (expression_statement "*unaff_s0 = 0.0;" (assignment_expression "*unaff_s0 = 0.0" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (number_literal "0.0")) (; ";")) (expression_statement "*(double *)pcVar15 = 0.0;" (assignment_expression "*(double *)pcVar15 = 0.0" (pointer_expression "*(double *)pcVar15" (* "*") (cast_expression "(double *)pcVar15" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (= "=") (number_literal "0.0")) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (if_statement "if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }\n        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" (if "if") (parenthesized_expression "(ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8))" (( "(") (binary_expression "ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar17 - param_1)" (identifier "ABS") (argument_list "(dVar17 - param_1)" (( "(") (binary_expression "dVar17 - param_1" (identifier "dVar17") (- "-") (identifier "param_1")) () ")"))) (< "<") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1740)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1740)" (( "(") (binary_expression "pcVar14 + 0x2c1740" (identifier "pcVar14") (+ "+") (number_literal "0x2c1740")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) () ")")) (compound_statement "{\n          dVar17 = (param_2 - dVar19) / dVar18;\n          if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }\n        }" ({ "{") (expression_statement "dVar17 = (param_2 - dVar19) / dVar18;" (assignment_expression "dVar17 = (param_2 - dVar19) / dVar18" (identifier "dVar17") (= "=") (binary_expression "(param_2 - dVar19) / dVar18" (parenthesized_expression "(param_2 - dVar19)" (( "(") (binary_expression "param_2 - dVar19" (identifier "param_2") (- "-") (identifier "dVar19")) () ")")) (/ "/") (identifier "dVar18"))) (; ";")) (if_statement "if (param_2 < dVar19) {\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }" (if "if") (parenthesized_expression "(param_2 < dVar19)" (( "(") (binary_expression "param_2 < dVar19" (identifier "param_2") (< "<") (identifier "dVar19")) () ")")) (compound_statement "{\n            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);\n          }" ({ "{") (expression_statement "dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);" (assignment_expression "dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" (identifier "dVar17") (= "=") (binary_expression "dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" (identifier "dVar17") (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e50)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e50" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "-0x2e50")) () ")")))))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" (else "else") (if_statement "if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }\n        else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" (if "if") (parenthesized_expression "(ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8))" (( "(") (binary_expression "ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (call_expression "ABS(dVar17 - param_2)" (identifier "ABS") (argument_list "(dVar17 - param_2)" (( "(") (binary_expression "dVar17 - param_2" (identifier "dVar17") (- "-") (identifier "param_2")) () ")"))) (< "<") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1740) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c1740)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1740)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1740)" (( "(") (binary_expression "pcVar14 + 0x2c1740" (identifier "pcVar14") (+ "+") (number_literal "0x2c1740")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) () ")")) (compound_statement "{\n          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;\n        }" ({ "{") (expression_statement "dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)\n          ;" (assignment_expression "dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (identifier "dVar17") (= "=") (binary_expression "(dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (binary_expression "(dVar19 - param_1) / dVar18" (parenthesized_expression "(dVar19 - param_1)" (( "(") (binary_expression "dVar19 - param_1" (identifier "dVar19") (- "-") (identifier "param_1")) () ")")) (/ "/") (identifier "dVar18")) (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "-0x2e48")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" (else "else") (compound_statement "{\n          dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);\n        }" ({ "{") (expression_statement "dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);" (assignment_expression "dVar17 = (param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (identifier "dVar17") (= "=") (binary_expression "(param_1 - param_2) / dVar18 +\n                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar18" (parenthesized_expression "(param_1 - param_2)" (( "(") (binary_expression "param_1 - param_2" (identifier "param_1") (- "-") (identifier "param_2")) () ")")) (/ "/") (identifier "dVar18")) (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x3cc8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "-0x3cc8")) () ")")))))) (; ";")) (} "}")))))) (expression_statement "dVar20 = *(double *)(iVar6 + 0x1400);" (assignment_expression "dVar20 = *(double *)(iVar6 + 0x1400)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(iVar6 + 0x1400)" (* "*") (cast_expression "(double *)(iVar6 + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x1400)" (( "(") (binary_expression "iVar6 + 0x1400" (identifier "iVar6") (+ "+") (number_literal "0x1400")) () ")"))))) (; ";")) (expression_statement "*unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);" (assignment_expression "*unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (pointer_expression "*unaff_s0" (* "*") (identifier "unaff_s0")) (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7bc8" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x7bc8")) () ")")))))) (; ";")) (expression_statement "dVar19 = *pdVar5;" (assignment_expression "dVar19 = *pdVar5" (identifier "dVar19") (= "=") (pointer_expression "*pdVar5" (* "*") (identifier "pdVar5"))) (; ";")) (expression_statement "dVar17 = dVar19 + dVar19;" (assignment_expression "dVar17 = dVar19 + dVar19" (identifier "dVar17") (= "=") (binary_expression "dVar19 + dVar19" (identifier "dVar19") (+ "+") (identifier "dVar19"))) (; ";")) (if_statement "if (dVar20 < dVar19) {\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }" (if "if") (parenthesized_expression "(dVar20 < dVar19)" (( "(") (binary_expression "dVar20 < dVar19" (identifier "dVar20") (< "<") (identifier "dVar19")) () ")")) (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;\n        }" ({ "{") (expression_statement "dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17" (identifier "dVar17") (= "=") (binary_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17" (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + -0x2e48" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "-0x2e48")) () ")")))) (- "-") (identifier "dVar17"))) (; ";")) (} "}"))) (expression_statement "*(double *)pcVar15 = dVar18 / dVar17;" (assignment_expression "*(double *)pcVar15 = dVar18 / dVar17" (pointer_expression "*(double *)pcVar15" (* "*") (cast_expression "(double *)pcVar15" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (= "=") (binary_expression "dVar18 / dVar17" (identifier "dVar18") (/ "/") (identifier "dVar17"))) (; ";")) (return_statement "return dVar18 / dVar17;" (return "return") (binary_expression "dVar18 / dVar17" (identifier "dVar18") (/ "/") (identifier "dVar17")) (; ";")) (} "}"))) (goto_statement "goto LAB_000e736c;" (goto "goto") (statement_identifier "LAB_000e736c") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar12 = FUN_000e73a8;" (assignment_expression "pcVar12 = FUN_000e73a8" (identifier "pcVar12") (= "=") (identifier "FUN_000e73a8")) (; ";")) (expression_statement "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88);" (call_expression "(*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" (parenthesized_expression "(*pcVar13)" (( "(") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13")) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,\n             iVar6 + 0x7a88)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7824" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x7824")) (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c1748) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c1748)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1748)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1748)" (( "(") (binary_expression "pcVar14 + 0x2c1748" (identifier "pcVar14") (+ "+") (number_literal "0x2c1748")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x457") (, ",") (binary_expression "iVar6 + 0x7a88" (identifier "iVar6") (+ "+") (number_literal "0x7a88")) () ")"))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar13 + 0x2c1540);" (assignment_expression "iVar6 = *(int *)(pcVar13 + 0x2c1540)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")"))))) (; ";")) (if_statement "if (pdStack_a0 == (double *)0x0) {\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }\n  else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" (if "if") (parenthesized_expression "(pdStack_a0 == (double *)0x0)" (( "(") (binary_expression "pdStack_a0 == (double *)0x0" (identifier "pdStack_a0") (== "==") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar6 = iVar6 + 0x7a78;\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);\nLAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);\n  }" ({ "{") (expression_statement "iVar6 = iVar6 + 0x7a78;" (assignment_expression "iVar6 = iVar6 + 0x7a78" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a78" (identifier "iVar6") (+ "+") (number_literal "0x7a78"))) (; ";")) (expression_statement "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6);" (call_expression "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2260))" (( "(") (pointer_expression "**(code **)(pcVar13 + 0x2c2260)" (* "*") (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" (* "*") (cast_expression "(code **)(pcVar13 + 0x2c2260)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar13 + 0x2c2260)" (( "(") (binary_expression "pcVar13 + 0x2c2260" (identifier "pcVar13") (+ "+") (number_literal "0x2c2260")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,\n               iVar6)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x77d8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x49e") (, ",") (identifier "iVar6") () ")"))) (; ";")) (labeled_statement "LAB_000e7548:\n    (**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" (statement_identifier "LAB_000e7548") (: ":") (expression_statement "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78);" (call_expression "(**(code **)(pcVar13 + 0x2c2260))\n              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" (parenthesized_expression "(**(code **)(pcVar13 + 0x2c2260))" (( "(") (pointer_expression "**(code **)(pcVar13 + 0x2c2260)" (* "*") (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" (* "*") (cast_expression "(code **)(pcVar13 + 0x2c2260)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar13 + 0x2c2260)" (( "(") (binary_expression "pcVar13 + 0x2c2260" (identifier "pcVar13") (+ "+") (number_literal "0x2c2260")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,\n               iVar6 + 0x7a78)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x78a4" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x78a4")) (, ",") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x4a0") (, ",") (binary_expression "iVar6 + 0x7a78" (identifier "iVar6") (+ "+") (number_literal "0x7a78")) () ")"))) (; ";"))) (} "}")) (else_clause "else if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" (else "else") (if_statement "if ((double *)pcVar16 != (double *)0x0) {\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" (if "if") (parenthesized_expression "((double *)pcVar16 != (double *)0x0)" (( "(") (binary_expression "(double *)pcVar16 != (double *)0x0" (cast_expression "(double *)pcVar16" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar16")) (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }\n    goto LAB_000e7548;\n  }" ({ "{") (if_statement "if (pdStack_98 != (double *)0x0) {\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }" (if "if") (parenthesized_expression "(pdStack_98 != (double *)0x0)" (( "(") (binary_expression "pdStack_98 != (double *)0x0" (identifier "pdStack_98") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);\n      param_2 = param_2 * dVar18;\n      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;\n      param_1 = param_1 * dVar18;\n      dVar18 = dVar19;\n      if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }\n      dVar17 = param_1;\n      if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }\n      dVar18 = param_2;\n      if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }\n      dVar20 = param_1;\n      if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }\n      dVar20 = dVar17 - dVar20;\n      *pdStack_98 = dVar17;\n      if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }\n      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }\n      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);\n      *(double *)pcVar16 = dVar20 / dVar17;\n      return dVar19;\n    }" ({ "{") (expression_statement "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" (identifier "dVar18") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x1440" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1538)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1538)" (( "(") (binary_expression "pcVar13 + 0x2c1538" (identifier "pcVar13") (+ "+") (number_literal "0x2c1538")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "param_2 = param_2 * dVar18;" (assignment_expression "param_2 = param_2 * dVar18" (identifier "param_2") (= "=") (binary_expression "param_2 * dVar18" (identifier "param_2") (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;" (assignment_expression "dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18" (identifier "dVar19") (= "=") (binary_expression "(double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18" (cast_expression "(double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(pcVar14 + 0x2c9710,uStack_a4)" (identifier "CONCAT44") (argument_list "(pcVar14 + 0x2c9710,uStack_a4)" (( "(") (binary_expression "pcVar14 + 0x2c9710" (identifier "pcVar14") (+ "+") (number_literal "0x2c9710")) (, ",") (identifier "uStack_a4") () ")")))) (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "param_1 = param_1 * dVar18;" (assignment_expression "param_1 = param_1 * dVar18" (identifier "param_1") (= "=") (binary_expression "param_1 * dVar18" (identifier "param_1") (* "*") (identifier "dVar18"))) (; ";")) (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" (identifier "dVar18") (= "=") (identifier "dVar19")) (; ";")) (if_statement "if (dVar19 < param_2) {\n        dVar18 = param_2;\n      }" (if "if") (parenthesized_expression "(dVar19 < param_2)" (( "(") (binary_expression "dVar19 < param_2" (identifier "dVar19") (< "<") (identifier "param_2")) () ")")) (compound_statement "{\n        dVar18 = param_2;\n      }" ({ "{") (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" (identifier "dVar17") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 <= dVar18) {\n        dVar17 = dVar18;\n      }" (if "if") (parenthesized_expression "(param_1 <= dVar18)" (( "(") (binary_expression "param_1 <= dVar18" (identifier "param_1") (<= "<=") (identifier "dVar18")) () ")")) (compound_statement "{\n        dVar17 = dVar18;\n      }" ({ "{") (expression_statement "dVar17 = dVar18;" (assignment_expression "dVar17 = dVar18" (identifier "dVar17") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (dVar19 <= param_2) {\n        dVar18 = dVar19;\n      }" (if "if") (parenthesized_expression "(dVar19 <= param_2)" (( "(") (binary_expression "dVar19 <= param_2" (identifier "dVar19") (<= "<=") (identifier "param_2")) () ")")) (compound_statement "{\n        dVar18 = dVar19;\n      }" ({ "{") (expression_statement "dVar18 = dVar19;" (assignment_expression "dVar18 = dVar19" (identifier "dVar18") (= "=") (identifier "dVar19")) (; ";")) (} "}"))) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" (identifier "dVar20") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (dVar18 <= param_1) {\n        dVar20 = dVar18;\n      }" (if "if") (parenthesized_expression "(dVar18 <= param_1)" (( "(") (binary_expression "dVar18 <= param_1" (identifier "dVar18") (<= "<=") (identifier "param_1")) () ")")) (compound_statement "{\n        dVar20 = dVar18;\n      }" ({ "{") (expression_statement "dVar20 = dVar18;" (assignment_expression "dVar20 = dVar18" (identifier "dVar20") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar20 = dVar17 - dVar20;" (assignment_expression "dVar20 = dVar17 - dVar20" (identifier "dVar20") (= "=") (binary_expression "dVar17 - dVar20" (identifier "dVar17") (- "-") (identifier "dVar20"))) (; ";")) (expression_statement "*pdStack_98 = dVar17;" (assignment_expression "*pdStack_98 = dVar17" (pointer_expression "*pdStack_98" (* "*") (identifier "pdStack_98")) (= "=") (identifier "dVar17")) (; ";")) (if_statement "if (dVar20 <= 0.0) {\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }" (if "if") (parenthesized_expression "(dVar20 <= 0.0)" (( "(") (binary_expression "dVar20 <= 0.0" (identifier "dVar20") (<= "<=") (number_literal "0.0")) () ")")) (compound_statement "{\n        *pdStack_a0 = 0.0;\n        *(double *)pcVar16 = 0.0;\n        return dVar19;\n      }" ({ "{") (expression_statement "*pdStack_a0 = 0.0;" (assignment_expression "*pdStack_a0 = 0.0" (pointer_expression "*pdStack_a0" (* "*") (identifier "pdStack_a0")) (= "=") (number_literal "0.0")) (; ";")) (expression_statement "*(double *)pcVar16 = 0.0;" (assignment_expression "*(double *)pcVar16 = 0.0" (pointer_expression "*(double *)pcVar16" (* "*") (cast_expression "(double *)pcVar16" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar16"))) (= "=") (number_literal "0.0")) (; ";")) (return_statement "return dVar19;" (return "return") (identifier "dVar19") (; ";")) (} "}"))) (if_statement "if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }\n      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" (if "if") (parenthesized_expression "(ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8))" (( "(") (binary_expression "ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar17 - param_1)" (identifier "ABS") (argument_list "(dVar17 - param_1)" (( "(") (binary_expression "dVar17 - param_1" (identifier "dVar17") (- "-") (identifier "param_1")) () ")"))) (< "<") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1538)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1538)" (( "(") (binary_expression "pcVar13 + 0x2c1538" (identifier "pcVar13") (+ "+") (number_literal "0x2c1538")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) () ")")) (compound_statement "{\n        dVar18 = (param_2 - dVar19) / dVar20;\n        if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }\n      }" ({ "{") (expression_statement "dVar18 = (param_2 - dVar19) / dVar20;" (assignment_expression "dVar18 = (param_2 - dVar19) / dVar20" (identifier "dVar18") (= "=") (binary_expression "(param_2 - dVar19) / dVar20" (parenthesized_expression "(param_2 - dVar19)" (( "(") (binary_expression "param_2 - dVar19" (identifier "param_2") (- "-") (identifier "dVar19")) () ")")) (/ "/") (identifier "dVar20"))) (; ";")) (if_statement "if (param_2 < dVar19) {\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }" (if "if") (parenthesized_expression "(param_2 < dVar19)" (( "(") (binary_expression "param_2 < dVar19" (identifier "param_2") (< "<") (identifier "dVar19")) () ")")) (compound_statement "{\n          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);\n          dVar18 = dVar18 + dVar19;\n        }" ({ "{") (expression_statement "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);" (assignment_expression "dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" (identifier "dVar19") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x2e50)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x2e50" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "-0x2e50")) () ")"))))) (; ";")) (expression_statement "dVar18 = dVar18 + dVar19;" (assignment_expression "dVar18 = dVar18 + dVar19" (identifier "dVar18") (= "=") (binary_expression "dVar18 + dVar19" (identifier "dVar18") (+ "+") (identifier "dVar19"))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" (else "else") (if_statement "if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }\n      else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" (if "if") (parenthesized_expression "(ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8))" (( "(") (binary_expression "ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (call_expression "ABS(dVar17 - param_2)" (identifier "ABS") (argument_list "(dVar17 - param_2)" (( "(") (binary_expression "dVar17 - param_2" (identifier "dVar17") (- "-") (identifier "param_2")) () ")"))) (< "<") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1538) + 0x13f8" (pointer_expression "*(int *)(pcVar13 + 0x2c1538)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1538)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1538)" (( "(") (binary_expression "pcVar13 + 0x2c1538" (identifier "pcVar13") (+ "+") (number_literal "0x2c1538")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) () ")")) (compound_statement "{\n        dVar19 = (dVar19 - param_1) / dVar20;\n        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);\n      }" ({ "{") (expression_statement "dVar19 = (dVar19 - param_1) / dVar20;" (assignment_expression "dVar19 = (dVar19 - param_1) / dVar20" (identifier "dVar19") (= "=") (binary_expression "(dVar19 - param_1) / dVar20" (parenthesized_expression "(dVar19 - param_1)" (( "(") (binary_expression "dVar19 - param_1" (identifier "dVar19") (- "-") (identifier "param_1")) () ")")) (/ "/") (identifier "dVar20"))) (; ";")) (expression_statement "dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);" (assignment_expression "dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" (identifier "dVar18") (= "=") (binary_expression "dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" (identifier "dVar19") (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x2e48)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x2e48" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "-0x2e48")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" (else "else") (compound_statement "{\n        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);\n      }" ({ "{") (expression_statement "dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);" (assignment_expression "dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (identifier "dVar18") (= "=") (binary_expression "(param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (binary_expression "(param_1 - param_2) / dVar20" (parenthesized_expression "(param_1 - param_2)" (( "(") (binary_expression "param_1 - param_2" (identifier "param_1") (- "-") (identifier "param_2")) () ")")) (/ "/") (identifier "dVar20")) (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + -0x3cc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "-0x3cc8")) () ")")))))) (; ";")) (} "}")))))) (expression_statement "*pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);" (assignment_expression "*pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (pointer_expression "*pdStack_a0" (* "*") (identifier "pdStack_a0")) (= "=") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7bc8" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x7bc8")) () ")")))))) (; ";")) (expression_statement "*(double *)pcVar16 = dVar20 / dVar17;" (assignment_expression "*(double *)pcVar16 = dVar20 / dVar17" (pointer_expression "*(double *)pcVar16" (* "*") (cast_expression "(double *)pcVar16" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar16"))) (= "=") (binary_expression "dVar20 / dVar17" (identifier "dVar20") (/ "/") (identifier "dVar17"))) (; ";")) (return_statement "return dVar19;" (return "return") (identifier "dVar19") (; ";")) (} "}"))) (goto_statement "goto LAB_000e7548;" (goto "goto") (statement_identifier "LAB_000e7548") (; ";")) (} "}"))))) (expression_statement "pcVar14 = *(code **)(pcVar13 + 0x2c2260);" (assignment_expression "pcVar14 = *(code **)(pcVar13 + 0x2c2260)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar13 + 0x2c2260)" (* "*") (cast_expression "(code **)(pcVar13 + 0x2c2260)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar13 + 0x2c2260)" (( "(") (binary_expression "pcVar13 + 0x2c2260" (identifier "pcVar13") (+ "+") (number_literal "0x2c2260")) () ")"))))) (; ";")) (expression_statement "pcVar15 = FUN_000e7584;" (assignment_expression "pcVar15 = FUN_000e7584" (identifier "pcVar15") (= "=") (identifier "FUN_000e7584")) (; ";")) (expression_statement "(*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);" (call_expression "(*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790)" (( "(") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7824" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x7824")) (, ",") (binary_expression "*(int *)(pcVar13 + 0x2c1540) + 0x7790" (pointer_expression "*(int *)(pcVar13 + 0x2c1540)" (* "*") (cast_expression "(int *)(pcVar13 + 0x2c1540)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar13 + 0x2c1540)" (( "(") (binary_expression "pcVar13 + 0x2c1540" (identifier "pcVar13") (+ "+") (number_literal "0x2c1540")) () ")")))) (+ "+") (number_literal "0x7790")) () ")"))) (; ";")) (expression_statement "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);" (assignment_expression "dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" (identifier "dVar18") (= "=") (cast_expression "(double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(pcVar13 + 0x2c9508,uStack_c4)" (identifier "CONCAT44") (argument_list "(pcVar13 + 0x2c9508,uStack_c4)" (( "(") (binary_expression "pcVar13 + 0x2c9508" (identifier "pcVar13") (+ "+") (number_literal "0x2c9508")) (, ",") (identifier "uStack_c4") () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c1364);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c1364)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")"))))) (; ";")) (if_statement "if (pdStack_c0 != (double *)0x0) {\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }" (if "if") (parenthesized_expression "(pdStack_c0 != (double *)0x0)" (( "(") (binary_expression "pdStack_c0 != (double *)0x0" (identifier "pdStack_c0") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar4 = *(int *)(pcVar14 + 0x2c1364);\n    if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }\n    iVar6 = iVar6 + 0x7790;\n    (**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n  }" ({ "{") (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c1364);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c1364)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")"))))) (; ";")) (if_statement "if ((double *)pcVar12 != (double *)0x0) {\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }" (if "if") (parenthesized_expression "((double *)pcVar12 != (double *)0x0)" (( "(") (binary_expression "(double *)pcVar12 != (double *)0x0" (cast_expression "(double *)pcVar12" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar12")) (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }\n      iVar6 = iVar6 + 0x7790;\n      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;\n      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);\n    }" ({ "{") (if_statement "if (pdStack_b8 != (double *)0x0) {\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }" (if "if") (parenthesized_expression "(pdStack_b8 != (double *)0x0)" (( "(") (binary_expression "pdStack_b8 != (double *)0x0" (identifier "pdStack_b8") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        dVar19 = dVar18;\n        if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }\n        dVar17 = param_1;\n        if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }\n        dVar19 = param_2;\n        if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }\n        dVar20 = param_1;\n        if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }\n        dVar19 = dVar20 - dVar17;\n        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);\n        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);\n        *pdStack_b8 = dVar23 - dVar20 * dVar26;\n        *(double *)pcVar12 = dVar17 * dVar26;\n        if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }\n        if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }\n        *pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);\n        return dVar19;\n      }" ({ "{") (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" (identifier "dVar19") (= "=") (identifier "dVar18")) (; ";")) (if_statement "if (param_2 < dVar18) {\n          dVar19 = param_2;\n        }" (if "if") (parenthesized_expression "(param_2 < dVar18)" (( "(") (binary_expression "param_2 < dVar18" (identifier "param_2") (< "<") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar19 = param_2;\n        }" ({ "{") (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" (identifier "dVar19") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (expression_statement "dVar17 = param_1;" (assignment_expression "dVar17 = param_1" (identifier "dVar17") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (dVar19 <= param_1) {\n          dVar17 = dVar19;\n        }" (if "if") (parenthesized_expression "(dVar19 <= param_1)" (( "(") (binary_expression "dVar19 <= param_1" (identifier "dVar19") (<= "<=") (identifier "param_1")) () ")")) (compound_statement "{\n          dVar17 = dVar19;\n        }" ({ "{") (expression_statement "dVar17 = dVar19;" (assignment_expression "dVar17 = dVar19" (identifier "dVar17") (= "=") (identifier "dVar19")) (; ";")) (} "}"))) (expression_statement "dVar19 = param_2;" (assignment_expression "dVar19 = param_2" (identifier "dVar19") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (param_2 <= dVar18) {\n          dVar19 = dVar18;\n        }" (if "if") (parenthesized_expression "(param_2 <= dVar18)" (( "(") (binary_expression "param_2 <= dVar18" (identifier "param_2") (<= "<=") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar19 = dVar18;\n        }" ({ "{") (expression_statement "dVar19 = dVar18;" (assignment_expression "dVar19 = dVar18" (identifier "dVar19") (= "=") (identifier "dVar18")) (; ";")) (} "}"))) (expression_statement "dVar20 = param_1;" (assignment_expression "dVar20 = param_1" (identifier "dVar20") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 <= dVar19) {\n          dVar20 = dVar19;\n        }" (if "if") (parenthesized_expression "(param_1 <= dVar19)" (( "(") (binary_expression "param_1 <= dVar19" (identifier "param_1") (<= "<=") (identifier "dVar19")) () ")")) (compound_statement "{\n          dVar20 = dVar19;\n        }" ({ "{") (expression_statement "dVar20 = dVar19;" (assignment_expression "dVar20 = dVar19" (identifier "dVar20") (= "=") (identifier "dVar19")) (; ";")) (} "}"))) (expression_statement "dVar19 = dVar20 - dVar17;" (assignment_expression "dVar19 = dVar20 - dVar17" (identifier "dVar19") (= "=") (binary_expression "dVar20 - dVar17" (identifier "dVar20") (- "-") (identifier "dVar17"))) (; ";")) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c135c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c135c)" (( "(") (binary_expression "pcVar14 + 0x2c135c" (identifier "pcVar14") (+ "+") (number_literal "0x2c135c")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1438)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1438" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c135c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c135c)" (( "(") (binary_expression "pcVar14 + 0x2c135c" (identifier "pcVar14") (+ "+") (number_literal "0x2c135c")) () ")")))) (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" (identifier "dVar21") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x13f8" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c135c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c135c)" (( "(") (binary_expression "pcVar14 + 0x2c135c" (identifier "pcVar14") (+ "+") (number_literal "0x2c135c")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) (; ";")) (expression_statement "*pdStack_b8 = dVar23 - dVar20 * dVar26;" (assignment_expression "*pdStack_b8 = dVar23 - dVar20 * dVar26" (pointer_expression "*pdStack_b8" (* "*") (identifier "pdStack_b8")) (= "=") (binary_expression "dVar23 - dVar20 * dVar26" (identifier "dVar23") (- "-") (binary_expression "dVar20 * dVar26" (identifier "dVar20") (* "*") (identifier "dVar26")))) (; ";")) (expression_statement "*(double *)pcVar12 = dVar17 * dVar26;" (assignment_expression "*(double *)pcVar12 = dVar17 * dVar26" (pointer_expression "*(double *)pcVar12" (* "*") (cast_expression "(double *)pcVar12" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar12"))) (= "=") (binary_expression "dVar17 * dVar26" (identifier "dVar17") (* "*") (identifier "dVar26"))) (; ";")) (if_statement "if (ABS(dVar19) < dVar21) {\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }" (if "if") (parenthesized_expression "(ABS(dVar19) < dVar21)" (( "(") (binary_expression "ABS(dVar19) < dVar21" (call_expression "ABS(dVar19)" (identifier "ABS") (argument_list "(dVar19)" (( "(") (identifier "dVar19") () ")"))) (< "<") (identifier "dVar21")) () ")")) (compound_statement "{\n          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);\n          *pdStack_c0 = dVar18;\n          return dVar18;\n        }" ({ "{") (expression_statement "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" (identifier "dVar18") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c135c) + 0x1a78)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c135c) + 0x1a78" (pointer_expression "*(int *)(pcVar14 + 0x2c135c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c135c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c135c)" (( "(") (binary_expression "pcVar14 + 0x2c135c" (identifier "pcVar14") (+ "+") (number_literal "0x2c135c")) () ")")))) (+ "+") (number_literal "0x1a78")) () ")"))))) (; ";")) (expression_statement "*pdStack_c0 = dVar18;" (assignment_expression "*pdStack_c0 = dVar18" (pointer_expression "*pdStack_c0" (* "*") (identifier "pdStack_c0")) (= "=") (identifier "dVar18")) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (if_statement "if (ABS(param_1 - dVar17) < dVar21) {\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }\n        else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" (if "if") (parenthesized_expression "(ABS(param_1 - dVar17) < dVar21)" (( "(") (binary_expression "ABS(param_1 - dVar17) < dVar21" (call_expression "ABS(param_1 - dVar17)" (identifier "ABS") (argument_list "(param_1 - dVar17)" (( "(") (binary_expression "param_1 - dVar17" (identifier "param_1") (- "-") (identifier "dVar17")) () ")"))) (< "<") (identifier "dVar21")) () ")")) (compound_statement "{\n          param_1 = param_2 - dVar18;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);\n        }" ({ "{") (expression_statement "param_1 = param_2 - dVar18;" (assignment_expression "param_1 = param_2 - dVar18" (identifier "param_1") (= "=") (binary_expression "param_2 - dVar18" (identifier "param_2") (- "-") (identifier "dVar18"))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3cd8" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "-0x3cd8")) () ")"))))) (; ";")) (} "}")) (else_clause "else if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" (else "else") (if_statement "if (ABS(param_2 - dVar17) < dVar21) {\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }\n        else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" (if "if") (parenthesized_expression "(ABS(param_2 - dVar17) < dVar21)" (( "(") (binary_expression "ABS(param_2 - dVar17) < dVar21" (call_expression "ABS(param_2 - dVar17)" (identifier "ABS") (argument_list "(param_2 - dVar17)" (( "(") (binary_expression "param_2 - dVar17" (identifier "param_2") (- "-") (identifier "dVar17")) () ")"))) (< "<") (identifier "dVar21")) () ")")) (compound_statement "{\n          param_1 = dVar18 - param_1;\n          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n        }" ({ "{") (expression_statement "param_1 = dVar18 - param_1;" (assignment_expression "param_1 = dVar18 - param_1" (identifier "param_1") (= "=") (binary_expression "dVar18 - param_1" (identifier "dVar18") (- "-") (identifier "param_1"))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "-0x3a50")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" (else "else") (compound_statement "{\n          param_1 = param_1 - param_2;\n          if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }\n        }" ({ "{") (expression_statement "param_1 = param_1 - param_2;" (assignment_expression "param_1 = param_1 - param_2" (identifier "param_1") (= "=") (binary_expression "param_1 - param_2" (identifier "param_1") (- "-") (identifier "param_2"))) (; ";")) (if_statement "if (ABS(param_2 - dVar17) < dVar21) {\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }" (if "if") (parenthesized_expression "(ABS(param_2 - dVar17) < dVar21)" (( "(") (binary_expression "ABS(param_2 - dVar17) < dVar21" (call_expression "ABS(param_2 - dVar17)" (identifier "ABS") (argument_list "(param_2 - dVar17)" (( "(") (binary_expression "param_2 - dVar17" (identifier "param_2") (- "-") (identifier "dVar17")) () ")"))) (< "<") (identifier "dVar21")) () ")")) (compound_statement "{\n            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);\n          }" ({ "{") (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x3a50)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x3a50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "-0x3a50")) () ")"))))) (; ";")) (} "}"))) (} "}")))))) (expression_statement "*pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);" (assignment_expression "*pdStack_c0 = (dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (pointer_expression "*pdStack_c0" (* "*") (identifier "pdStack_c0")) (= "=") (binary_expression "(dVar23 - param_1 / dVar19) /\n                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (parenthesized_expression "(dVar23 - param_1 / dVar19)" (( "(") (binary_expression "dVar23 - param_1 / dVar19" (identifier "dVar23") (- "-") (binary_expression "param_1 / dVar19" (identifier "param_1") (/ "/") (identifier "dVar19"))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c1364) + -0x2e50)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + -0x2e50" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "-0x2e50")) () ")")))))) (; ";")) (return_statement "return dVar19;" (return "return") (identifier "dVar19") (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7790" (identifier "iVar6") (+ "+") (number_literal "0x7790"))) (; ";")) (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0" (identifier "iVar4") (= "=") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x78e0" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "0x78e0"))) (; ";")) (expression_statement "(**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2084))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c2084)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c2084)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c2084)" (( "(") (binary_expression "pcVar14 + 0x2c2084" (identifier "pcVar14") (+ "+") (number_literal "0x2c2084")) () ")"))))) () ")")) (argument_list "(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (( "(") (identifier "iVar4") (, ",") (identifier "iVar6") (, ",") (number_literal "0x4e6") (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "0x7a68")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 0x7790;" (assignment_expression "iVar6 = iVar6 + 0x7790" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7790" (identifier "iVar6") (+ "+") (number_literal "0x7790"))) (; ";")) (expression_statement "(**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(**(code **)(pcVar14 + 0x2c2084))\n              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c2084))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c2084)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c2084)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c2084)" (( "(") (binary_expression "pcVar14 + 0x2c2084" (identifier "pcVar14") (+ "+") (number_literal "0x2c2084")) () ")"))))) () ")")) (argument_list "(iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (( "(") (binary_expression "iVar4 + 0x78c0" (identifier "iVar4") (+ "+") (number_literal "0x78c0")) (, ",") (identifier "iVar6") (, ",") (number_literal "0x4e5") (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "0x7a68")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c2084);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c2084)" (identifier "pcVar12") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c2084)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c2084)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c2084)" (( "(") (binary_expression "pcVar14 + 0x2c2084" (identifier "pcVar14") (+ "+") (number_literal "0x2c2084")) () ")"))))) (; ";")) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (parenthesized_expression "(*pcVar12)" (( "(") (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,\n             *(int *)(pcVar14 + 0x2c1364) + 0x7a68)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "iVar6 + 0x7790" (identifier "iVar6") (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x4e4") (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c1364) + 0x7a68" (pointer_expression "*(int *)(pcVar14 + 0x2c1364)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c1364)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1364)" (( "(") (binary_expression "pcVar14 + 0x2c1364" (identifier "pcVar14") (+ "+") (number_literal "0x2c1364")) () ")")))) (+ "+") (number_literal "0x7a68")) () ")"))) (; ";")) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))()" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))()" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c20c0))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c20c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c20c0)" (( "(") (binary_expression "pcVar12 + 0x2c20c0" (identifier "pcVar12") (+ "+") (number_literal "0x2c20c0")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c1174)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1174)" (( "(") (binary_expression "pcVar12 + 0x2c1174" (identifier "pcVar12") (+ "+") (number_literal "0x2c1174")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "dVar19 = dVar19 * dVar23;" (assignment_expression "dVar19 = dVar19 * dVar23" (identifier "dVar19") (= "=") (binary_expression "dVar19 * dVar23" (identifier "dVar19") (* "*") (identifier "dVar23"))) (; ";")) (expression_statement "dVar18 = param_2;" (assignment_expression "dVar18 = param_2" (identifier "dVar18") (= "=") (identifier "param_2")) (; ";")) (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2)" (identifier "dVar17") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))(param_2)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c20c0))(param_2)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c20c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c20c0)" (( "(") (binary_expression "pcVar12 + 0x2c20c0" (identifier "pcVar12") (+ "+") (number_literal "0x2c20c0")) () ")"))))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")"))))) (; ";")) (expression_statement "dVar17 = dVar17 * dVar23;" (assignment_expression "dVar17 = dVar17 * dVar23" (identifier "dVar17") (= "=") (binary_expression "dVar17 * dVar23" (identifier "dVar17") (* "*") (identifier "dVar23"))) (; ";")) (expression_statement "dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));" (assignment_expression "dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" (identifier "dVar20") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c20c0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c20c0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c20c0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c20c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c20c0)" (( "(") (binary_expression "pcVar12 + 0x2c20c0" (identifier "pcVar12") (+ "+") (number_literal "0x2c20c0")) () ")"))))) () ")")) (argument_list "(CONCAT44(pcVar14 + 0x2c932c,uStack_e4))" (( "(") (call_expression "CONCAT44(pcVar14 + 0x2c932c,uStack_e4)" (identifier "CONCAT44") (argument_list "(pcVar14 + 0x2c932c,uStack_e4)" (( "(") (binary_expression "pcVar14 + 0x2c932c" (identifier "pcVar14") (+ "+") (number_literal "0x2c932c")) (, ",") (identifier "uStack_e4") () ")"))) () ")"))))) (; ";")) (expression_statement "dVar20 = dVar20 * dVar23;" (assignment_expression "dVar20 = dVar20 * dVar23" (identifier "dVar20") (= "=") (binary_expression "dVar20 * dVar23" (identifier "dVar20") (* "*") (identifier "dVar23"))) (; ";")) (expression_statement "dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);" (assignment_expression "dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (identifier "dVar23") (= "=") (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" (identifier "dVar20") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d38)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d38" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d38")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d48)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d48" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d48")) () ")")))))) (+ "+") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d40)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d40" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d40")) () ")"))))))) (; ";")) (expression_statement "dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);" (assignment_expression "dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (identifier "dVar26") (= "=") (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" (identifier "dVar20") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d20)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d20" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d20")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d30)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d30" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d30")) () ")")))))) (+ "+") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d28)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d28" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d28")) () ")"))))))) (; ";")) (expression_statement "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);" (assignment_expression "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (identifier "dVar19") (= "=") (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +\n           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +\n           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" (identifier "dVar20") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d08)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d08" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d08")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d18)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d18" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d18")) () ")")))))) (+ "+") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3d10)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3d10" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3d10")) () ")"))))))) (; ";")) (if_statement "if (pdStack_e0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" (if "if") (parenthesized_expression "(pdStack_e0 != (double *)0x0)" (( "(") (binary_expression "pdStack_e0 != (double *)0x0" (identifier "pdStack_e0") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar6 = *(int *)(pcVar12 + 0x2c117c);\n    if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }\n    (**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);\n  }" ({ "{") (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (if_statement "if ((double *)pcVar15 != (double *)0x0) {\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }" (if "if") (parenthesized_expression "((double *)pcVar15 != (double *)0x0)" (( "(") (binary_expression "(double *)pcVar15 != (double *)0x0" (cast_expression "(double *)pcVar15" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15")) (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }\n      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();\n    }" ({ "{") (if_statement "if (pdStack_d8 != (double *)0x0) {\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }" (if "if") (parenthesized_expression "(pdStack_d8 != (double *)0x0)" (( "(") (binary_expression "pdStack_d8 != (double *)0x0" (identifier "pdStack_d8") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        iVar6 = *(int *)(pcVar12 + 0x2c117c);\n        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);\n        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));\nLAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);\n        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;\n        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);\n        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;\n        *pdStack_d8 = dVar19;\n        return dVar19;\n      }" ({ "{") (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (expression_statement "dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);" (assignment_expression "dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (identifier "dVar18") (= "=") (binary_expression "dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (identifier "dVar23") (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x39e8")) () ")")))))) (; ";")) (if_statement "if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }\n        else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" (if "if") (parenthesized_expression "(dVar18 <= *(double *)(iVar6 + -0x3d00))" (( "(") (binary_expression "dVar18 <= *(double *)(iVar6 + -0x3d00)" (identifier "dVar18") (<= "<=") (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (compound_statement "{\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;\nLAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }\n        }" ({ "{") (expression_statement "iVar4 = *(int *)(pcVar12 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar12 + 0x2c1174)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c1174)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1174)" (( "(") (binary_expression "pcVar12 + 0x2c1174" (identifier "pcVar12") (+ "+") (number_literal "0x2c1174")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar10 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (expression_statement "dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (identifier "dVar18") (= "=") (binary_expression "((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /\n                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (parenthesized_expression "(dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8))" (( "(") (binary_expression "dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (identifier "dVar23") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3ce8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x39e8")) () ")"))))) (+ "+") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")")))))) (; ";")) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;" (if "if") (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar26)" (( "(") (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar26" (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")")))) (< "<") (identifier "dVar26")) () ")")) (goto_statement "goto LAB_000e79e4;" (goto "goto") (statement_identifier "LAB_000e79e4") (; ";"))) (labeled_statement "LAB_000e78cc:\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (statement_identifier "LAB_000e78cc") (: ":") (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x39e0")) () ")"))))) (; ";"))) (expression_statement "dVar23 = dVar19 / dVar20;" (assignment_expression "dVar23 = dVar19 / dVar20" (identifier "dVar23") (= "=") (binary_expression "dVar19 / dVar20" (identifier "dVar19") (/ "/") (identifier "dVar20"))) (; ";")) (expression_statement "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (identifier "dVar17") (= "=") (binary_expression "(dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "(dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +\n                   *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (identifier "dVar26") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3ce8")) () ")"))))) (+ "+") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")")))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }" (if "if") (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" (( "(") (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" (identifier "dVar23") (<= "<=") (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (compound_statement "{\n            iVar2 = *(int *)(pcVar12 + 0x2c117c);\nLAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);\n            goto LAB_000e7920;\n          }" ({ "{") (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (labeled_statement "LAB_000e7904:\n            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);" (statement_identifier "LAB_000e7904") (: ":") (expression_statement "dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0)" (identifier "dVar19") (= "=") (binary_expression "((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     ) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)\n                     )" (( "(") (binary_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20" (parenthesized_expression "(dVar19 * *(double *)(iVar2 + -0x3ce8))" (( "(") (binary_expression "dVar19 * *(double *)(iVar2 + -0x3ce8)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(iVar2 + -0x3ce8)" (* "*") (cast_expression "(double *)(iVar2 + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3ce8)" (( "(") (binary_expression "iVar2 + -0x3ce8" (identifier "iVar2") (+ "+") (number_literal "-0x3ce8")) () ")"))))) () ")")) (/ "/") (identifier "dVar20")) (+ "+") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")")))))) (; ";"))) (goto_statement "goto LAB_000e7920;" (goto "goto") (statement_identifier "LAB_000e7920") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" (else "else") (compound_statement "{\n          iVar4 = *(int *)(pcVar12 + 0x2c1174);\n          iVar10 = *(int *)(pcVar12 + 0x2c117c);\n          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;\nLAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );\n          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);\n          dVar23 = dVar19 / dVar20;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;\n          iVar2 = *(int *)(pcVar12 + 0x2c117c);\n        }" ({ "{") (expression_statement "iVar4 = *(int *)(pcVar12 + 0x2c1174);" (assignment_expression "iVar4 = *(int *)(pcVar12 + 0x2c1174)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c1174)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1174)" (( "(") (binary_expression "pcVar12 + 0x2c1174" (identifier "pcVar12") (+ "+") (number_literal "0x2c1174")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar10 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (expression_statement "dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (identifier "dVar18") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1fb0)" (( "(") (binary_expression "pcVar12 + 0x2c1fb0" (identifier "pcVar12") (+ "+") (number_literal "0x2c1fb0")) () ")"))))) () ")")) (argument_list "(dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (( "(") (identifier "dVar18") (, ",") (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";")) (if_statement "if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;" (if "if") (parenthesized_expression "(dVar26 <= *(double *)(iVar6 + -0x3d00))" (( "(") (binary_expression "dVar26 <= *(double *)(iVar6 + -0x3d00)" (identifier "dVar26") (<= "<=") (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (goto_statement "goto LAB_000e78cc;" (goto "goto") (statement_identifier "LAB_000e78cc") (; ";"))) (labeled_statement "LAB_000e79e4:\n          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (statement_identifier "LAB_000e79e4") (: ":") (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     );" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (identifier "dVar17") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))\n                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1fb0)" (( "(") (binary_expression "pcVar12 + 0x2c1fb0" (identifier "pcVar12") (+ "+") (number_literal "0x2c1fb0")) () ")"))))) () ")")) (argument_list "(dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)\n                                     )" (( "(") (identifier "dVar26") (, ",") (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";"))) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39e0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x39e0")) () ")"))))) (; ";")) (expression_statement "dVar23 = dVar19 / dVar20;" (assignment_expression "dVar23 = dVar19 / dVar20" (identifier "dVar23") (= "=") (binary_expression "dVar19 / dVar20" (identifier "dVar19") (/ "/") (identifier "dVar20"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;" (if "if") (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" (( "(") (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" (identifier "dVar23") (<= "<=") (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (goto_statement "goto LAB_000e7904;" (goto "goto") (statement_identifier "LAB_000e7904") (; ";"))) (expression_statement "iVar2 = *(int *)(pcVar12 + 0x2c117c);" (assignment_expression "iVar2 = *(int *)(pcVar12 + 0x2c117c)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")"))))) (; ";")) (} "}")))) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1fb0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c1fb0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c1fb0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c1fb0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1fb0)" (( "(") (binary_expression "pcVar12 + 0x2c1fb0" (identifier "pcVar12") (+ "+") (number_literal "0x2c1fb0")) () ")"))))) () ")")) (argument_list "(dVar23,*(undefined8 *)(iVar2 + -0x3cf8))" (( "(") (identifier "dVar23") (, ",") (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3cf8)" (( "(") (binary_expression "iVar2 + -0x3cf8" (identifier "iVar2") (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";")) (labeled_statement "LAB_000e7920:\n        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);" (statement_identifier "LAB_000e7920") (: ":") (expression_statement "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x5ae8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x5ae8")) () ")"))))) (; ";"))) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1400)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c1174)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1174)" (( "(") (binary_expression "pcVar12 + 0x2c1174" (identifier "pcVar12") (+ "+") (number_literal "0x2c1174")) () ")")))) (+ "+") (number_literal "0x1400")) () ")"))))) (; ";")) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39f8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39f8" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x39f8")) () ")"))))) (; ";")) (expression_statement "dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20;" (assignment_expression "dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20" (identifier "dVar19") (= "=") (binary_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23\n                 + dVar20" (binary_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23" (parenthesized_expression "((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0))" (( "(") (binary_expression "(dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" (parenthesized_expression "(dVar17 - dVar19)" (( "(") (binary_expression "dVar17 - dVar19" (identifier "dVar17") (- "-") (identifier "dVar19")) () ")")) (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x39f0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x39f0")) () ")"))))) () ")")) (/ "/") (identifier "dVar23")) (+ "+") (identifier "dVar20"))) (; ";")) (expression_statement "*pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);" (assignment_expression "*pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (pointer_expression "*pdStack_e0" (* "*") (identifier "pdStack_e0")) (= "=") (binary_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (parenthesized_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")"))))) (- "-") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c1174) + 0x1a70)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c1174) + 0x1a70" (pointer_expression "*(int *)(pcVar12 + 0x2c1174)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c1174)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1174)" (( "(") (binary_expression "pcVar12 + 0x2c1174" (identifier "pcVar12") (+ "+") (number_literal "0x2c1174")) () ")")))) (+ "+") (number_literal "0x1a70")) () ")")))))) (; ";")) (expression_statement "*(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;" (assignment_expression "*(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20" (pointer_expression "*(double *)pcVar15" (* "*") (cast_expression "(double *)pcVar15" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar15"))) (= "=") (binary_expression "((dVar18 - dVar17) * dVar26) / dVar23 + dVar20" (binary_expression "((dVar18 - dVar17) * dVar26) / dVar23" (parenthesized_expression "((dVar18 - dVar17) * dVar26)" (( "(") (binary_expression "(dVar18 - dVar17) * dVar26" (parenthesized_expression "(dVar18 - dVar17)" (( "(") (binary_expression "dVar18 - dVar17" (identifier "dVar18") (- "-") (identifier "dVar17")) () ")")) (* "*") (identifier "dVar26")) () ")")) (/ "/") (identifier "dVar23")) (+ "+") (identifier "dVar20"))) (; ";")) (expression_statement "*pdStack_d8 = dVar19;" (assignment_expression "*pdStack_d8 = dVar19" (pointer_expression "*pdStack_d8" (* "*") (identifier "pdStack_d8")) (= "=") (identifier "dVar19")) (; ";")) (return_statement "return dVar19;" (return "return") (identifier "dVar19") (; ";")) (} "}"))) (expression_statement "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();" (call_expression "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" (* "*") (cast_expression "(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c11d4) + 0x39c0" (pointer_expression "*(int *)(pcVar12 + 0x2c11d4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c11d4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c11d4)" (( "(") (binary_expression "pcVar12 + 0x2c11d4" (identifier "pcVar12") (+ "+") (number_literal "0x2c11d4")) () ")")))) (+ "+") (number_literal "0x39c0")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48);" (call_expression "(**(code **)(pcVar12 + 0x2c1e9c))\n              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c1e9c))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c1e9c)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c1e9c)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c1e9c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1e9c)" (( "(") (binary_expression "pcVar12 + 0x2c1e9c" (identifier "pcVar12") (+ "+") (number_literal "0x2c1e9c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,\n               iVar6 + 0x7a48)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 31000" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "31000")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x59e0")) (, ",") (number_literal "0xa2") (, ",") (binary_expression "iVar6 + 0x7a48" (identifier "iVar6") (+ "+") (number_literal "0x7a48")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c1e9c)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar12 + 0x2c1e9c)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c1e9c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c1e9c)" (( "(") (binary_expression "pcVar12 + 0x2c1e9c" (identifier "pcVar12") (+ "+") (number_literal "0x2c1e9c")) () ")"))))) (; ";")) (expression_statement "(*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);" (call_expression "(*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,\n             *(int *)(pcVar12 + 0x2c117c) + 0x7a48)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 0x7900" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "0x7900")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + -0x59e0" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "-0x59e0")) (, ",") (number_literal "0xa1") (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c117c) + 0x7a48" (pointer_expression "*(int *)(pcVar12 + 0x2c117c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c117c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c117c)" (( "(") (binary_expression "pcVar12 + 0x2c117c" (identifier "pcVar12") (+ "+") (number_literal "0x2c117c")) () ")")))) (+ "+") (number_literal "0x7a48")) () ")"))) (; ";")) (expression_statement "pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);" (assignment_expression "pdStack_140 = (double *)((ulonglong)param_2 >> 0x20)" (identifier "pdStack_140") (= "=") (cast_expression "(double *)((ulonglong)param_2 >> 0x20)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulonglong)param_2 >> 0x20)" (( "(") (binary_expression "(ulonglong)param_2 >> 0x20" (cast_expression "(ulonglong)param_2" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "param_2")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "pdStack_13c = SUB84(param_2,0);" (assignment_expression "pdStack_13c = SUB84(param_2,0)" (identifier "pdStack_13c") (= "=") (call_expression "SUB84(param_2,0)" (identifier "SUB84") (argument_list "(param_2,0)" (( "(") (identifier "param_2") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;" (if "if") (parenthesized_expression "(pdStack_140 == (double *)0x0)" (( "(") (binary_expression "pdStack_140 == (double *)0x0" (identifier "pdStack_140") (== "==") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000e7e18;" (goto "goto") (statement_identifier "LAB_000e7e18") (; ";"))) (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (if_statement "if (pdStack_13c != (double *)0x0) {\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" (if "if") (parenthesized_expression "(pdStack_13c != (double *)0x0)" (( "(") (binary_expression "pdStack_13c != (double *)0x0" (identifier "pdStack_13c") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }\n    iVar6 = iVar6 + 0x7a34;\n    (**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);\n  }" ({ "{") (if_statement "if (pdStack_138 != (double *)0x0) {\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }" (if "if") (parenthesized_expression "(pdStack_138 != (double *)0x0)" (( "(") (binary_expression "pdStack_138 != (double *)0x0" (identifier "pdStack_138") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      iVar6 = *(int *)(pcVar14 + 0x2c0e60);\n      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);\n      dVar19 = dVar19 * dVar20;\n      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);\n      dVar18 = dVar18 * dVar20;\n      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));\n      dVar17 = dVar17 * dVar20;\n      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);\n      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);\n      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);\n      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);\n      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }\n      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }\n      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);\nLAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);\n      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);\n      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);\n      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);\n      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);\n      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);\n      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;\n      dVar18 = (double)(*pcVar12)(dVar23,dVar19);\n      pcVar12 = *(code **)(pcVar14 + 0x2c1580);\n      *pdStack_13c = dVar18 / dVar26 + dVar21;\n      dVar18 = (double)(*pcVar12)(dVar19,dVar23);\n      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);\n      if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }\n      *pdStack_138 = dVar18;\n      return dVar18;\n    }" ({ "{") (expression_statement "iVar6 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (expression_statement "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))()" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))()" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar14 + 0x2c1da4))()" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1da4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1da4)" (( "(") (binary_expression "pcVar14 + 0x2c1da4" (identifier "pcVar14") (+ "+") (number_literal "0x2c1da4")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1440" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "dVar19 = dVar19 * dVar20;" (assignment_expression "dVar19 = dVar19 * dVar20" (identifier "dVar19") (= "=") (binary_expression "dVar19 * dVar20" (identifier "dVar19") (* "*") (identifier "dVar20"))) (; ";")) (expression_statement "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);" (assignment_expression "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" (identifier "dVar18") (= "=") (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar14 + 0x2c1da4))(dVar18)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1da4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1da4)" (( "(") (binary_expression "pcVar14 + 0x2c1da4" (identifier "pcVar14") (+ "+") (number_literal "0x2c1da4")) () ")"))))) () ")")) (argument_list "(dVar18)" (( "(") (identifier "dVar18") () ")"))))) (; ";")) (expression_statement "dVar18 = dVar18 * dVar20;" (assignment_expression "dVar18 = dVar18 * dVar20" (identifier "dVar18") (= "=") (binary_expression "dVar18 * dVar20" (identifier "dVar18") (* "*") (identifier "dVar20"))) (; ";")) (expression_statement "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" (identifier "dVar17") (= "=") (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1da4))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1da4)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1da4)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1da4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1da4)" (( "(") (binary_expression "pcVar14 + 0x2c1da4" (identifier "pcVar14") (+ "+") (number_literal "0x2c1da4")) () ")"))))) () ")")) (argument_list "(CONCAT44(pcVar12 + 0x2c9144,uStack_144))" (( "(") (call_expression "CONCAT44(pcVar12 + 0x2c9144,uStack_144)" (identifier "CONCAT44") (argument_list "(pcVar12 + 0x2c9144,uStack_144)" (( "(") (binary_expression "pcVar12 + 0x2c9144" (identifier "pcVar12") (+ "+") (number_literal "0x2c9144")) (, ",") (identifier "uStack_144") () ")"))) () ")"))))) (; ";")) (expression_statement "dVar17 = dVar17 * dVar20;" (assignment_expression "dVar17 = dVar17 * dVar20" (identifier "dVar17") (= "=") (binary_expression "dVar17 * dVar20" (identifier "dVar17") (* "*") (identifier "dVar20"))) (; ";")) (expression_statement "dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);" (assignment_expression "dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (identifier "dVar20") (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d38" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d38")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d48" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d48")) () ")")))))) (+ "+") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d40" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d40")) () ")"))))))) (; ";")) (expression_statement "dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);" (assignment_expression "dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (identifier "dVar23") (= "=") (binary_expression "dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (identifier "dVar20") (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x39e8")) () ")")))))) (; ";")) (expression_statement "dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);" (assignment_expression "dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (identifier "dVar26") (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d20" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d20")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d30" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d30")) () ")")))))) (+ "+") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d28" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d28")) () ")"))))))) (; ";")) (expression_statement "dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);" (assignment_expression "dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (identifier "dVar18") (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +\n               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +\n               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d08" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d08")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d18" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d18")) () ")")))))) (+ "+") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3d10" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3d10")) () ")"))))))) (; ";")) (if_statement "if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }\n      else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" (if "if") (parenthesized_expression "(dVar23 <= *(double *)(iVar6 + -0x3d00))" (( "(") (binary_expression "dVar23 <= *(double *)(iVar6 + -0x3d00)" (identifier "dVar23") (<= "<=") (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (compound_statement "{\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);\n      }" ({ "{") (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c0e58)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar10 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (expression_statement "dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0)" (identifier "dVar19") (= "=") (binary_expression "((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))\n                 / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /\n                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (parenthesized_expression "(dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8))" (( "(") (binary_expression "dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (identifier "dVar20") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3ce8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x39e8")) () ")"))))) (+ "+") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" (else "else") (compound_statement "{\n        iVar4 = *(int *)(pcVar14 + 0x2c0e58);\n        iVar10 = *(int *)(pcVar14 + 0x2c0e60);\n        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n      }" ({ "{") (expression_statement "iVar4 = *(int *)(pcVar14 + 0x2c0e58);" (assignment_expression "iVar4 = *(int *)(pcVar14 + 0x2c0e58)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar10 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (expression_statement "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1c94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1c94)" (( "(") (binary_expression "pcVar14 + 0x2c1c94" (identifier "pcVar14") (+ "+") (number_literal "0x2c1c94")) () ")"))))) () ")")) (argument_list "(dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (( "(") (identifier "dVar23") (, ",") (pointer_expression "*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";")) (} "}")))) (if_statement "if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }\n      else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" (if "if") (parenthesized_expression "(dVar26 <= *(double *)(iVar6 + -0x3d00))" (( "(") (binary_expression "dVar26 <= *(double *)(iVar6 + -0x3d00)" (identifier "dVar26") (<= "<=") (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (compound_statement "{\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n      }" ({ "{") (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x39e0")) () ")"))))) (; ";")) (expression_statement "dVar20 = dVar18 / dVar23;" (assignment_expression "dVar20 = dVar18 / dVar23" (identifier "dVar20") (= "=") (binary_expression "dVar18 / dVar23" (identifier "dVar18") (/ "/") (identifier "dVar23"))) (; ";")) (expression_statement "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (identifier "dVar17") (= "=") (binary_expression "(dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "(dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +\n                 *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (identifier "dVar26") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3ce8")) () ")"))))) (+ "+") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")")))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;" (if "if") (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar20)" (( "(") (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar20" (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")")))) (< "<") (identifier "dVar20")) () ")")) (goto_statement "goto LAB_000e7da0;" (goto "goto") (statement_identifier "LAB_000e7da0") (; ";"))) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" (else "else") (compound_statement "{\n        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));\n        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);\n        dVar20 = dVar18 / dVar23;\n        iVar2 = *(int *)(pcVar14 + 0x2c0e60);\n        if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }\n      }" ({ "{") (expression_statement "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (identifier "dVar17") (= "=") (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1c94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1c94)" (( "(") (binary_expression "pcVar14 + 0x2c1c94" (identifier "pcVar14") (+ "+") (number_literal "0x2c1c94")) () ")"))))) () ")")) (argument_list "(dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8))" (( "(") (identifier "dVar26") (, ",") (pointer_expression "*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39e0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x39e0")) () ")"))))) (; ";")) (expression_statement "dVar20 = dVar18 / dVar23;" (assignment_expression "dVar20 = dVar18 / dVar23" (identifier "dVar20") (= "=") (binary_expression "dVar18 / dVar23" (identifier "dVar18") (/ "/") (identifier "dVar23"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (if_statement "if (*(double *)(iVar6 + -0x3d00) < dVar20) {\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" (if "if") (parenthesized_expression "(*(double *)(iVar6 + -0x3d00) < dVar20)" (( "(") (binary_expression "*(double *)(iVar6 + -0x3d00) < dVar20" (pointer_expression "*(double *)(iVar6 + -0x3d00)" (* "*") (cast_expression "(double *)(iVar6 + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + -0x3d00)" (( "(") (binary_expression "iVar6 + -0x3d00" (identifier "iVar6") (+ "+") (number_literal "-0x3d00")) () ")")))) (< "<") (identifier "dVar20")) () ")")) (compound_statement "{\n          iVar2 = *(int *)(pcVar14 + 0x2c0e60);\nLAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));\n          goto LAB_000e7c44;\n        }" ({ "{") (expression_statement "iVar2 = *(int *)(pcVar14 + 0x2c0e60);" (assignment_expression "iVar2 = *(int *)(pcVar14 + 0x2c0e60)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")"))))) (; ";")) (labeled_statement "LAB_000e7da0:\n          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));" (statement_identifier "LAB_000e7da0") (: ":") (expression_statement "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));" (assignment_expression "dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" (identifier "dVar18") (= "=") (cast_expression "(double)(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar14 + 0x2c1c94))\n                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1c94))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1c94)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1c94)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1c94)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1c94)" (( "(") (binary_expression "pcVar14 + 0x2c1c94" (identifier "pcVar14") (+ "+") (number_literal "0x2c1c94")) () ")"))))) () ")")) (argument_list "(dVar20,*(undefined8 *)(iVar2 + -0x3cf8))" (( "(") (identifier "dVar20") (, ",") (pointer_expression "*(undefined8 *)(iVar2 + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(iVar2 + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3cf8)" (( "(") (binary_expression "iVar2 + -0x3cf8" (identifier "iVar2") (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";"))) (goto_statement "goto LAB_000e7c44;" (goto "goto") (statement_identifier "LAB_000e7c44") (; ";")) (} "}"))) (} "}")))) (expression_statement "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0)" (identifier "dVar18") (= "=") (binary_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /\n               *(double *)(iVar10 + -0x3cf0)" (parenthesized_expression "((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)" (binary_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23" (parenthesized_expression "(dVar18 * *(double *)(iVar2 + -0x3ce8))" (( "(") (binary_expression "dVar18 * *(double *)(iVar2 + -0x3ce8)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(iVar2 + -0x3ce8)" (* "*") (cast_expression "(double *)(iVar2 + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3ce8)" (( "(") (binary_expression "iVar2 + -0x3ce8" (identifier "iVar2") (+ "+") (number_literal "-0x3ce8")) () ")"))))) () ")")) (/ "/") (identifier "dVar23")) (+ "+") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")")))))) (; ";")) (labeled_statement "LAB_000e7c44:\n      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);" (statement_identifier "LAB_000e7c44") (: ":") (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1c90);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1c90)" (identifier "pcVar12") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c1c90)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1c90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1c90)" (( "(") (binary_expression "pcVar14 + 0x2c1c90" (identifier "pcVar14") (+ "+") (number_literal "0x2c1c90")) () ")"))))) (; ";"))) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x5ae8")) () ")"))))) (; ";")) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" (identifier "dVar21") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1400)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1400" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")")))) (+ "+") (number_literal "0x1400")) () ")"))))) (; ";")) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39f0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x39f0")) () ")"))))) (; ";")) (expression_statement "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);" (assignment_expression "dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" (identifier "dVar23") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x39f8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x39f8")) () ")"))))) (; ";")) (expression_statement "*pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);" (assignment_expression "*pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (pointer_expression "*pdStack_140" (* "*") (identifier "pdStack_140")) (= "=") (binary_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /\n                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (parenthesized_expression "(dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8))" (( "(") (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)" (binary_expression "dVar17 * *(double *)(iVar10 + -0x3cf0)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(iVar10 + -0x3cf0)" (* "*") (cast_expression "(double *)(iVar10 + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x3cf0)" (( "(") (binary_expression "iVar10 + -0x3cf0" (identifier "iVar10") (+ "+") (number_literal "-0x3cf0")) () ")"))))) (- "-") (pointer_expression "*(double *)(iVar4 + 0x1ac8)" (* "*") (cast_expression "(double *)(iVar4 + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x1ac8)" (( "(") (binary_expression "iVar4 + 0x1ac8" (identifier "iVar4") (+ "+") (number_literal "0x1ac8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1a70" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")")))) (+ "+") (number_literal "0x1a70")) () ")")))))) (; ";")) (expression_statement "dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;" (assignment_expression "dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26" (identifier "dVar23") (= "=") (binary_expression "((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26" (parenthesized_expression "((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21)" (( "(") (binary_expression "(((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21" (parenthesized_expression "(((dVar19 - dVar17) * dVar23) / dVar26 + dVar21)" (( "(") (binary_expression "((dVar19 - dVar17) * dVar23) / dVar26 + dVar21" (binary_expression "((dVar19 - dVar17) * dVar23) / dVar26" (parenthesized_expression "((dVar19 - dVar17) * dVar23)" (( "(") (binary_expression "(dVar19 - dVar17) * dVar23" (parenthesized_expression "(dVar19 - dVar17)" (( "(") (binary_expression "dVar19 - dVar17" (identifier "dVar19") (- "-") (identifier "dVar17")) () ")")) (* "*") (identifier "dVar23")) () ")")) (/ "/") (identifier "dVar26")) (+ "+") (identifier "dVar21")) () ")")) (- "-") (identifier "dVar21")) () ")")) (* "*") (identifier "dVar26"))) (; ";")) (expression_statement "dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;" (assignment_expression "dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26" (identifier "dVar19") (= "=") (binary_expression "((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26" (parenthesized_expression "((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21)" (( "(") (binary_expression "(((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21" (parenthesized_expression "(((dVar17 - dVar18) * dVar20) / dVar26 + dVar21)" (( "(") (binary_expression "((dVar17 - dVar18) * dVar20) / dVar26 + dVar21" (binary_expression "((dVar17 - dVar18) * dVar20) / dVar26" (parenthesized_expression "((dVar17 - dVar18) * dVar20)" (( "(") (binary_expression "(dVar17 - dVar18) * dVar20" (parenthesized_expression "(dVar17 - dVar18)" (( "(") (binary_expression "dVar17 - dVar18" (identifier "dVar17") (- "-") (identifier "dVar18")) () ")")) (* "*") (identifier "dVar20")) () ")")) (/ "/") (identifier "dVar26")) (+ "+") (identifier "dVar21")) () ")")) (- "-") (identifier "dVar21")) () ")")) (* "*") (identifier "dVar26"))) (; ";")) (expression_statement "dVar18 = (double)(*pcVar12)(dVar23,dVar19);" (assignment_expression "dVar18 = (double)(*pcVar12)(dVar23,dVar19)" (identifier "dVar18") (= "=") (cast_expression "(double)(*pcVar12)(dVar23,dVar19)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar12)(dVar23,dVar19)" (parenthesized_expression "(*pcVar12)" (( "(") (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) () ")")) (argument_list "(dVar23,dVar19)" (( "(") (identifier "dVar23") (, ",") (identifier "dVar19") () ")"))))) (; ";")) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1580);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1580)" (identifier "pcVar12") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c1580)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1580)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1580)" (( "(") (binary_expression "pcVar14 + 0x2c1580" (identifier "pcVar14") (+ "+") (number_literal "0x2c1580")) () ")"))))) (; ";")) (expression_statement "*pdStack_13c = dVar18 / dVar26 + dVar21;" (assignment_expression "*pdStack_13c = dVar18 / dVar26 + dVar21" (pointer_expression "*pdStack_13c" (* "*") (identifier "pdStack_13c")) (= "=") (binary_expression "dVar18 / dVar26 + dVar21" (binary_expression "dVar18 / dVar26" (identifier "dVar18") (/ "/") (identifier "dVar26")) (+ "+") (identifier "dVar21"))) (; ";")) (expression_statement "dVar18 = (double)(*pcVar12)(dVar19,dVar23);" (assignment_expression "dVar18 = (double)(*pcVar12)(dVar19,dVar23)" (identifier "dVar18") (= "=") (cast_expression "(double)(*pcVar12)(dVar19,dVar23)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar12)(dVar19,dVar23)" (parenthesized_expression "(*pcVar12)" (( "(") (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) () ")")) (argument_list "(dVar19,dVar23)" (( "(") (identifier "dVar19") (, ",") (identifier "dVar23") () ")"))))) (; ";")) (expression_statement "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (identifier "dVar18") (= "=") (binary_expression "((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (parenthesized_expression "((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8))" (( "(") (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /\n               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0))" (( "(") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")")))) (+ "+") (number_literal "0x1ab0")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")")))) (+ "+") (number_literal "0x1ab8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "-0x5aa0")) () ")")))))) (; ";")) (if_statement "if (dVar18 < 0.0) {\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }" (if "if") (parenthesized_expression "(dVar18 < 0.0)" (( "(") (binary_expression "dVar18 < 0.0" (identifier "dVar18") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);\n      }" ({ "{") (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" (identifier "dVar18") (= "=") (binary_expression "dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" (identifier "dVar18") (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c0e58) + 0x1438)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e58) + 0x1438" (pointer_expression "*(int *)(pcVar14 + 0x2c0e58)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e58)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e58)" (( "(") (binary_expression "pcVar14 + 0x2c0e58" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e58")) () ")")))) (+ "+") (number_literal "0x1438")) () ")")))))) (; ";")) (} "}"))) (expression_statement "*pdStack_138 = dVar18;" (assignment_expression "*pdStack_138 = dVar18" (pointer_expression "*pdStack_138" (* "*") (identifier "pdStack_138")) (= "=") (identifier "dVar18")) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 0x7a34;" (assignment_expression "iVar6 = iVar6 + 0x7a34" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a34" (identifier "iVar6") (+ "+") (number_literal "0x7a34"))) (; ";")) (expression_statement "(**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6);" (call_expression "(**(code **)(pcVar14 + 0x2c1b80))\n              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1b80))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1b80)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1b80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1b80)" (( "(") (binary_expression "pcVar14 + 0x2c1b80" (identifier "pcVar14") (+ "+") (number_literal "0x2c1b80")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,\n               iVar6)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x77d8" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x556") (, ",") (identifier "iVar6") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34);" (call_expression "(**(code **)(pcVar14 + 0x2c1b80))\n            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c1b80))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c1b80)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1b80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1b80)" (( "(") (binary_expression "pcVar14 + 0x2c1b80" (identifier "pcVar14") (+ "+") (number_literal "0x2c1b80")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,\n             iVar6 + 0x7a34)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x77f0" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x77f0")) (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x555") (, ",") (binary_expression "iVar6 + 0x7a34" (identifier "iVar6") (+ "+") (number_literal "0x7a34")) () ")"))) (; ";")) (labeled_statement "LAB_000e7e18:\n  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);" (statement_identifier "LAB_000e7e18") (: ":") (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c1b80);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c1b80)" (identifier "pcVar12") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c1b80)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c1b80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c1b80)" (( "(") (binary_expression "pcVar14 + 0x2c1b80" (identifier "pcVar14") (+ "+") (number_literal "0x2c1b80")) () ")"))))) (; ";"))) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34)" (parenthesized_expression "(*pcVar12)" (( "(") (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,\n             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x780c" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x780c")) (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x554") (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c0e60) + 0x7a34" (pointer_expression "*(int *)(pcVar14 + 0x2c0e60)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c0e60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c0e60)" (( "(") (binary_expression "pcVar14 + 0x2c0e60" (identifier "pcVar14") (+ "+") (number_literal "0x2c0e60")) () ")")))) (+ "+") (number_literal "0x7a34")) () ")"))) (; ";")) (if_statement "if (pdStack_1b0 != (double *)0x0) {\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" (if "if") (parenthesized_expression "(pdStack_1b0 != (double *)0x0)" (( "(") (binary_expression "pdStack_1b0 != (double *)0x0" (identifier "pdStack_1b0") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar6 = *(int *)(pcVar12 + 0x2c0aac);\n    if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }\n    (**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);\n  }" ({ "{") (expression_statement "iVar6 = *(int *)(pcVar12 + 0x2c0aac);" (assignment_expression "iVar6 = *(int *)(pcVar12 + 0x2c0aac)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")"))))) (; ";")) (if_statement "if (pdStack_1ac != (double *)0x0) {\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" (if "if") (parenthesized_expression "(pdStack_1ac != (double *)0x0)" (( "(") (binary_expression "pdStack_1ac != (double *)0x0" (identifier "pdStack_1ac") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }\n      iVar6 = iVar6 + 0x7a20;\n      (**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);\n    }" ({ "{") (if_statement "if (pdStack_1a8 != (double *)0x0) {\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }" (if "if") (parenthesized_expression "(pdStack_1a8 != (double *)0x0)" (( "(") (binary_expression "pdStack_1a8 != (double *)0x0" (identifier "pdStack_1a8") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();\n        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);\n        dVar19 = dVar19 * dVar20;\n        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);\n        dVar18 = dVar18 * dVar20;\n        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));\n        dVar17 = dVar17 * dVar20;\n        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);\n        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);\n        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);\n        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }\n        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;\n        if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }\n        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }\n        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);\n        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);\n        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);\n        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);\n        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);\n        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);\n        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);\n        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);\n        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);\n        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);\n        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);\n        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;\n        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;\n        dVar18 = (double)(*pcVar14)(dVar21,dVar17);\n        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);\n        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);\n        dVar18 = (double)(*pcVar14)(dVar17,dVar21);\n        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);\n        if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }\n        *pdStack_1a8 = dVar18;\n        return dVar18;\n      }" ({ "{") (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))()" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))()" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c19f0))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c19f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c19f0)" (( "(") (binary_expression "pcVar12 + 0x2c19f0" (identifier "pcVar12") (+ "+") (number_literal "0x2c19f0")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);" (assignment_expression "dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" (identifier "dVar20") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1440" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1440")) () ")"))))) (; ";")) (expression_statement "dVar19 = dVar19 * dVar20;" (assignment_expression "dVar19 = dVar19 * dVar20" (identifier "dVar19") (= "=") (binary_expression "dVar19 * dVar20" (identifier "dVar19") (* "*") (identifier "dVar20"))) (; ";")) (expression_statement "dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);" (assignment_expression "dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" (identifier "dVar18") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c19f0))(dVar18)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c19f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c19f0)" (( "(") (binary_expression "pcVar12 + 0x2c19f0" (identifier "pcVar12") (+ "+") (number_literal "0x2c19f0")) () ")"))))) () ")")) (argument_list "(dVar18)" (( "(") (identifier "dVar18") () ")"))))) (; ";")) (expression_statement "dVar18 = dVar18 * dVar20;" (assignment_expression "dVar18 = dVar18 * dVar20" (identifier "dVar18") (= "=") (binary_expression "dVar18 * dVar20" (identifier "dVar18") (* "*") (identifier "dVar20"))) (; ";")) (expression_statement "dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));" (assignment_expression "dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" (identifier "dVar17") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c19f0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c19f0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c19f0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c19f0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c19f0)" (( "(") (binary_expression "pcVar12 + 0x2c19f0" (identifier "pcVar12") (+ "+") (number_literal "0x2c19f0")) () ")"))))) () ")")) (argument_list "(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4))" (( "(") (call_expression "CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4)" (identifier "CONCAT44") (argument_list "(pcVar14 + 0x2c8e28,uStack_1b4)" (( "(") (binary_expression "pcVar14 + 0x2c8e28" (identifier "pcVar14") (+ "+") (number_literal "0x2c8e28")) (, ",") (identifier "uStack_1b4") () ")"))) () ")"))))) (; ";")) (expression_statement "dVar17 = dVar17 * dVar20;" (assignment_expression "dVar17 = dVar17 * dVar20" (identifier "dVar17") (= "=") (binary_expression "dVar17 * dVar20" (identifier "dVar17") (* "*") (identifier "dVar20"))) (; ";")) (expression_statement "dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);" (assignment_expression "dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (identifier "dVar20") (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d20" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d20")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d30" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d30")) () ")")))))) (+ "+") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d28" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d28")) () ")"))))))) (; ";")) (expression_statement "dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);" (assignment_expression "dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (identifier "dVar23") (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d38" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d38")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d48" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d48")) () ")")))))) (+ "+") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d40" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d40")) () ")"))))))) (; ";")) (expression_statement "dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);" (assignment_expression "dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (identifier "dVar18") (= "=") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +\n                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +\n                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (binary_expression "dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d08" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d08")) () ")"))))) (+ "+") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d18" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d18")) () ")")))))) (+ "+") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d10" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d10")) () ")"))))))) (; ";")) (if_statement "if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }\n        else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" (if "if") (parenthesized_expression "(dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00))" (( "(") (binary_expression "dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" (identifier "dVar20") (<= "<=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3d00" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3d00")) () ")"))))) () ")")) (compound_statement "{\n          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);\n        }" ({ "{") (expression_statement "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);" (assignment_expression "dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" (identifier "dVar19") (= "=") (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" (identifier "dVar20") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3ce8")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" (else "else") (compound_statement "{\n          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );\n          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);\n        }" ({ "{") (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     );" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c18e0))\n                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c18e0))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c18e0)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c18e0)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c18e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18e0)" (( "(") (binary_expression "pcVar12 + 0x2c18e0" (identifier "pcVar12") (+ "+") (number_literal "0x2c18e0")) () ")"))))) () ")")) (argument_list "(dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)\n                                     )" (( "(") (identifier "dVar20") (, ",") (pointer_expression "*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" (* "*") (cast_expression "(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cf8")) () ")")))) () ")"))))) (; ";")) (expression_statement "dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);" (assignment_expression "dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (identifier "dVar19") (= "=") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -\n                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cf0")) () ")"))))) (- "-") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1ac8")) () ")")))))) (; ";")) (} "}")))) (expression_statement "dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;" (assignment_expression "dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23" (identifier "dVar18") (= "=") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +\n                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cd8")) () ")"))))) (+ "+") (binary_expression "dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (identifier "dVar20") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3ce0")) () ")")))))) (+ "+") (identifier "dVar23"))) (; ";")) (if_statement "if (0.0 <= dVar18) {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }\n        else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" (if "if") (parenthesized_expression "(0.0 <= dVar18)" (( "(") (binary_expression "0.0 <= dVar18" (number_literal "0.0") (<= "<=") (identifier "dVar18")) () ")")) (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n          dStack_208 = dVar18;\n        }" ({ "{") (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (identifier "dVar17") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1438")) () ")"))))) (; ";")) (expression_statement "dStack_208 = dVar18;" (assignment_expression "dStack_208 = dVar18" (identifier "dStack_208") (= "=") (identifier "dVar18")) (; ";")) (} "}")) (else_clause "else {\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" (else "else") (compound_statement "{\n          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);\n          dStack_208 = -dVar18;\n        }" ({ "{") (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" (identifier "dVar17") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1a78")) () ")"))))) (; ";")) (expression_statement "dStack_208 = -dVar18;" (assignment_expression "dStack_208 = -dVar18" (identifier "dStack_208") (= "=") (unary_expression "-dVar18" (- "-") (identifier "dVar18"))) (; ";")) (} "}")))) (if_statement "if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }\n        else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" (if "if") (parenthesized_expression "(dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8))" (( "(") (binary_expression "dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (identifier "dStack_208") (< "<") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")"))))) () ")")) (compound_statement "{\n          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);\n        }" ({ "{") (expression_statement "dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);" (assignment_expression "dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (identifier "dVar18") (= "=") (binary_expression "dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (identifier "dVar17") (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x13f8")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" (else "else") (compound_statement "{\n          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;\n        }" ({ "{") (expression_statement "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;" (assignment_expression "dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18" (identifier "dVar18") (= "=") (binary_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18" (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1438")) () ")")))) (/ "/") (identifier "dVar18"))) (; ";")) (} "}")))) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c18dc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c18dc)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar12 + 0x2c18dc)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c18dc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c18dc)" (( "(") (binary_expression "pcVar12 + 0x2c18dc" (identifier "pcVar12") (+ "+") (number_literal "0x2c18dc")) () ")"))))) (; ";")) (expression_statement "dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);" (assignment_expression "dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" (identifier "dVar21") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cb8")) () ")"))))) (; ";")) (expression_statement "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);" (assignment_expression "dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" (identifier "dVar17") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3c98" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3c98")) () ")"))))) (; ";")) (expression_statement "dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);" (assignment_expression "dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" (identifier "dVar22") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cb0")) () ")"))))) (; ";")) (expression_statement "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);" (assignment_expression "dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" (identifier "dVar26") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3c90" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3c90")) () ")"))))) (; ";")) (expression_statement "dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);" (assignment_expression "dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" (identifier "dVar29") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cc8")) () ")"))))) (; ";")) (expression_statement "dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);" (assignment_expression "dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" (identifier "dVar27") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3ca8")) () ")"))))) (; ";")) (expression_statement "dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);" (assignment_expression "dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" (identifier "dVar25") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cc0")) () ")"))))) (; ";")) (expression_statement "dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);" (assignment_expression "dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" (identifier "dVar28") (= "=") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3ca0")) () ")"))))) (; ";")) (expression_statement "dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);" (assignment_expression "dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" (identifier "dVar24") (= "=") (binary_expression "dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" (identifier "dVar19") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x3cd0")) () ")")))))) (; ";")) (expression_statement "*pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);" (assignment_expression "*pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (pointer_expression "*pdStack_1b0" (* "*") (identifier "pdStack_1b0")) (= "=") (binary_expression "dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (identifier "dVar19") (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1a70")) () ")")))))) (; ";")) (expression_statement "dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21;" (assignment_expression "dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21" (identifier "dVar21") (= "=") (binary_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -\n                 dVar21" (binary_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22" (parenthesized_expression "(((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22)" (( "(") (binary_expression "((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22" (parenthesized_expression "((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21)" (( "(") (binary_expression "(dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21" (binary_expression "(dVar18 * dVar29 * dVar23 - dVar25) * dVar24" (parenthesized_expression "(dVar18 * dVar29 * dVar23 - dVar25)" (( "(") (binary_expression "dVar18 * dVar29 * dVar23 - dVar25" (binary_expression "dVar18 * dVar29 * dVar23" (binary_expression "dVar18 * dVar29" (identifier "dVar18") (* "*") (identifier "dVar29")) (* "*") (identifier "dVar23")) (- "-") (identifier "dVar25")) () ")")) (* "*") (identifier "dVar24")) (+ "+") (identifier "dVar21")) () ")")) (/ "/") (identifier "dVar22")) () ")")) (* "*") (identifier "dVar22")) (- "-") (identifier "dVar21"))) (; ";")) (expression_statement "dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17;" (assignment_expression "dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17" (identifier "dVar17") (= "=") (binary_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -\n                 dVar17" (binary_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26" (parenthesized_expression "(((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26)" (( "(") (binary_expression "((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26" (parenthesized_expression "((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17)" (( "(") (binary_expression "(dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17" (binary_expression "(dVar18 * dVar27 * dVar20 - dVar28) * dVar24" (parenthesized_expression "(dVar18 * dVar27 * dVar20 - dVar28)" (( "(") (binary_expression "dVar18 * dVar27 * dVar20 - dVar28" (binary_expression "dVar18 * dVar27 * dVar20" (binary_expression "dVar18 * dVar27" (identifier "dVar18") (* "*") (identifier "dVar27")) (* "*") (identifier "dVar20")) (- "-") (identifier "dVar28")) () ")")) (* "*") (identifier "dVar24")) (+ "+") (identifier "dVar17")) () ")")) (/ "/") (identifier "dVar26")) () ")")) (* "*") (identifier "dVar26")) (- "-") (identifier "dVar17"))) (; ";")) (expression_statement "dVar18 = (double)(*pcVar14)(dVar21,dVar17);" (assignment_expression "dVar18 = (double)(*pcVar14)(dVar21,dVar17)" (identifier "dVar18") (= "=") (cast_expression "(double)(*pcVar14)(dVar21,dVar17)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar14)(dVar21,dVar17)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(dVar21,dVar17)" (( "(") (identifier "dVar21") (, ",") (identifier "dVar17") () ")"))))) (; ";")) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c11cc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c11cc)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar12 + 0x2c11cc)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c11cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c11cc)" (( "(") (binary_expression "pcVar12 + 0x2c11cc" (identifier "pcVar12") (+ "+") (number_literal "0x2c11cc")) () ")"))))) (; ";")) (expression_statement "*pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);" (assignment_expression "*pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (pointer_expression "*pdStack_1ac" (* "*") (identifier "pdStack_1ac")) (= "=") (binary_expression "dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +\n                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (binary_expression "dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" (identifier "dVar18") (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x5ae8")) () ")"))))) (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1400")) () ")")))))) (; ";")) (expression_statement "dVar18 = (double)(*pcVar14)(dVar17,dVar21);" (assignment_expression "dVar18 = (double)(*pcVar14)(dVar17,dVar21)" (identifier "dVar18") (= "=") (cast_expression "(double)(*pcVar14)(dVar17,dVar21)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*pcVar14)(dVar17,dVar21)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(dVar17,dVar21)" (( "(") (identifier "dVar17") (, ",") (identifier "dVar21") () ")"))))) (; ";")) (expression_statement "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);" (assignment_expression "dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (identifier "dVar18") (= "=") (binary_expression "((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (parenthesized_expression "((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8))" (( "(") (binary_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /\n                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" (parenthesized_expression "(dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0))" (( "(") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1ab0")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1ab8")) () ")"))))) () ")")) (/ "/") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "-0x5aa0")) () ")")))))) (; ";")) (if_statement "if (dVar18 < 0.0) {\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }" (if "if") (parenthesized_expression "(dVar18 < 0.0)" (( "(") (binary_expression "dVar18 < 0.0" (identifier "dVar18") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);\n        }" ({ "{") (expression_statement "dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);" (assignment_expression "dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (identifier "dVar18") (= "=") (binary_expression "dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (identifier "dVar18") (+ "+") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aa4) + 0x1438" (pointer_expression "*(int *)(pcVar12 + 0x2c0aa4)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aa4)" (( "(") (binary_expression "pcVar12 + 0x2c0aa4" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aa4")) () ")")))) (+ "+") (number_literal "0x1438")) () ")")))))) (; ";")) (} "}"))) (expression_statement "*pdStack_1a8 = dVar18;" (assignment_expression "*pdStack_1a8 = dVar18" (pointer_expression "*pdStack_1a8" (* "*") (identifier "pdStack_1a8")) (= "=") (identifier "dVar18")) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (expression_statement "iVar6 = iVar6 + 0x7a20;" (assignment_expression "iVar6 = iVar6 + 0x7a20" (identifier "iVar6") (= "=") (binary_expression "iVar6 + 0x7a20" (identifier "iVar6") (+ "+") (number_literal "0x7a20"))) (; ";")) (expression_statement "(**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6);" (call_expression "(**(code **)(pcVar12 + 0x2c17cc))\n                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c17cc))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c17cc)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c17cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c17cc)" (( "(") (binary_expression "pcVar12 + 0x2c17cc" (identifier "pcVar12") (+ "+") (number_literal "0x2c17cc")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,\n                 iVar6)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x77d8" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x77d8")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x593") (, ",") (identifier "iVar6") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20);" (call_expression "(**(code **)(pcVar12 + 0x2c17cc))\n              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c17cc))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c17cc)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c17cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c17cc)" (( "(") (binary_expression "pcVar12 + 0x2c17cc" (identifier "pcVar12") (+ "+") (number_literal "0x2c17cc")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,\n               iVar6 + 0x7a20)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x77f0" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x77f0")) (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x592") (, ",") (binary_expression "iVar6 + 0x7a20" (identifier "iVar6") (+ "+") (number_literal "0x7a20")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar14 = *(code **)(pcVar12 + 0x2c17cc);" (assignment_expression "pcVar14 = *(code **)(pcVar12 + 0x2c17cc)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar12 + 0x2c17cc)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c17cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c17cc)" (( "(") (binary_expression "pcVar12 + 0x2c17cc" (identifier "pcVar12") (+ "+") (number_literal "0x2c17cc")) () ")"))))) (; ";")) (expression_statement "pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);" (assignment_expression "pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" (identifier "pdVar5") (= "=") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0aac) + 0x780c)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x780c" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x780c")) () ")")))) (; ";")) (expression_statement "(*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);" (call_expression "(*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,\n             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20)" (( "(") (identifier "pdVar5") (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7790" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x7790")) (, ",") (number_literal "0x591") (, ",") (binary_expression "*(int *)(pcVar12 + 0x2c0aac) + 0x7a20" (pointer_expression "*(int *)(pcVar12 + 0x2c0aac)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0aac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0aac)" (( "(") (binary_expression "pcVar12 + 0x2c0aac" (identifier "pcVar12") (+ "+") (number_literal "0x2c0aac")) () ")")))) (+ "+") (number_literal "0x7a20")) () ")"))) (; ";")) (if_statement "if (pdVar5 != (double *)0x0) {\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }" (if "if") (parenthesized_expression "(pdVar5 != (double *)0x0)" (( "(") (binary_expression "pdVar5 != (double *)0x0" (identifier "pdVar5") (!= "!=") (cast_expression "(double *)0x0" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];\n    dVar19 = SQRT(ABS(dVar18));\n    if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }\n    return dVar19;\n  }" ({ "{") (expression_statement "dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];" (assignment_expression "dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" (identifier "dVar18") (= "=") (binary_expression "*pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2]" (binary_expression "*pdVar5 * pdVar5[3]" (pointer_expression "*pdVar5" (* "*") (identifier "pdVar5")) (* "*") (subscript_expression "pdVar5[3]" (identifier "pdVar5") ([ "[") (number_literal "3") (] "]"))) (- "-") (binary_expression "pdVar5[1] * pdVar5[2]" (subscript_expression "pdVar5[1]" (identifier "pdVar5") ([ "[") (number_literal "1") (] "]")) (* "*") (subscript_expression "pdVar5[2]" (identifier "pdVar5") ([ "[") (number_literal "2") (] "]"))))) (; ";")) (expression_statement "dVar19 = SQRT(ABS(dVar18));" (assignment_expression "dVar19 = SQRT(ABS(dVar18))" (identifier "dVar19") (= "=") (call_expression "SQRT(ABS(dVar18))" (identifier "SQRT") (argument_list "(ABS(dVar18))" (( "(") (call_expression "ABS(dVar18)" (identifier "ABS") (argument_list "(dVar18)" (( "(") (identifier "dVar18") () ")"))) () ")")))) (; ";")) (if_statement "if (ABS(dVar18) < 0.0) {\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }" (if "if") (parenthesized_expression "(ABS(dVar18) < 0.0)" (( "(") (binary_expression "ABS(dVar18) < 0.0" (call_expression "ABS(dVar18)" (identifier "ABS") (argument_list "(dVar18)" (( "(") (identifier "dVar18") () ")"))) (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));\n    }" ({ "{") (expression_statement "(**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));" (call_expression "(**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18))" (parenthesized_expression "(**(code **)(pcVar14 + 0x2c12c4))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0x2c12c4)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0x2c12c4)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c12c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c12c4)" (( "(") (binary_expression "pcVar14 + 0x2c12c4" (identifier "pcVar14") (+ "+") (number_literal "0x2c12c4")) () ")"))))) () ")")) (argument_list "(ABS(dVar18))" (( "(") (call_expression "ABS(dVar18)" (identifier "ABS") (argument_list "(dVar18)" (( "(") (identifier "dVar18") () ")"))) () ")"))) (; ";")) (} "}"))) (return_statement "return dVar19;" (return "return") (identifier "dVar19") (; ";")) (} "}"))) (expression_statement "uVar8 = 0x5b5;" (assignment_expression "uVar8 = 0x5b5" (identifier "uVar8") (= "=") (number_literal "0x5b5")) (; ";")) (expression_statement "pcVar12 = *(code **)(pcVar14 + 0x2c144c);" (assignment_expression "pcVar12 = *(code **)(pcVar14 + 0x2c144c)" (identifier "pcVar12") (= "=") (pointer_expression "*(code **)(pcVar14 + 0x2c144c)" (* "*") (cast_expression "(code **)(pcVar14 + 0x2c144c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0x2c144c)" (( "(") (binary_expression "pcVar14 + 0x2c144c" (identifier "pcVar14") (+ "+") (number_literal "0x2c144c")) () ")"))))) (; ";")) (expression_statement "fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);" (assignment_expression "fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" (identifier "fVar7") (= "=") (cast_expression "(float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0x2c072c) + 0x7790)" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7790" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c072c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c072c)" (( "(") (binary_expression "pcVar14 + 0x2c072c" (identifier "pcVar14") (+ "+") (number_literal "0x2c072c")) () ")")))) (+ "+") (number_literal "0x7790")) () ")")))) (; ";")) (expression_statement "(*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            );" (call_expression "(*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            )" (parenthesized_expression "(*pcVar12)" (( "(") (pointer_expression "*pcVar12" (* "*") (identifier "pcVar12")) () ")")) (argument_list "(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10\n            )" (( "(") (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7930" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c072c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c072c)" (( "(") (binary_expression "pcVar14 + 0x2c072c" (identifier "pcVar14") (+ "+") (number_literal "0x2c072c")) () ")")))) (+ "+") (number_literal "0x7930")) (, ",") (identifier "fVar7") (, ",") (number_literal "0x5b5") (, ",") (binary_expression "*(int *)(pcVar14 + 0x2c072c) + 0x7a10" (pointer_expression "*(int *)(pcVar14 + 0x2c072c)" (* "*") (cast_expression "(int *)(pcVar14 + 0x2c072c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0x2c072c)" (( "(") (binary_expression "pcVar14 + 0x2c072c" (identifier "pcVar14") (+ "+") (number_literal "0x2c072c")) () ")")))) (+ "+") (number_literal "0x7a10")) () ")"))) (; ";")) (expression_statement "dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);" (assignment_expression "dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" (identifier "dVar18") (= "=") (cast_expression "(double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(pcVar14 + 0x2c86f4,uStack_23c)" (identifier "CONCAT44") (argument_list "(pcVar14 + 0x2c86f4,uStack_23c)" (( "(") (binary_expression "pcVar14 + 0x2c86f4" (identifier "pcVar14") (+ "+") (number_literal "0x2c86f4")) (, ",") (identifier "uStack_23c") () ")"))))) (; ";")) (expression_statement "dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();" (assignment_expression "dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))()" (identifier "dVar19") (= "=") (cast_expression "(double)(**(code **)(pcVar12 + 0x2c0bf8))()" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcVar12 + 0x2c0bf8))()" (parenthesized_expression "(**(code **)(pcVar12 + 0x2c0bf8))" (( "(") (pointer_expression "**(code **)(pcVar12 + 0x2c0bf8)" (* "*") (pointer_expression "*(code **)(pcVar12 + 0x2c0bf8)" (* "*") (cast_expression "(code **)(pcVar12 + 0x2c0bf8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0bf8)" (( "(") (binary_expression "pcVar12 + 0x2c0bf8" (identifier "pcVar12") (+ "+") (number_literal "0x2c0bf8")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (uVar8 < 8) {\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }" (if "if") (parenthesized_expression "(uVar8 < 8)" (( "(") (binary_expression "uVar8 < 8" (identifier "uVar8") (< "<") (number_literal "8")) () ")")) (compound_statement "{\n                    \n                    \n    dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();\n    return dVar18;\n  }" ({ "{") (expression_statement "dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();" (assignment_expression "dVar18 = (double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" (identifier "dVar18") (= "=") (cast_expression "(double)(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))()" (parenthesized_expression "(*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))" (( "(") (pointer_expression "*(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c)" (* "*") (parenthesized_expression "(pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c)" (( "(") (binary_expression "pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c" (binary_expression "pcVar12 +\n                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" (identifier "pcVar12") (+ "+") (pointer_expression "*(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" (* "*") (cast_expression "(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4" (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x79c0" (pointer_expression "*(int *)(pcVar12 + 0x2c0674)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0674)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0674)" (( "(") (binary_expression "pcVar12 + 0x2c0674" (identifier "pcVar12") (+ "+") (number_literal "0x2c0674")) () ")")))) (+ "+") (number_literal "0x79c0")) (+ "+") (binary_expression "uVar8 * 4" (identifier "uVar8") (* "*") (number_literal "4"))) () ")"))))) (+ "+") (number_literal "0x2c863c")) () ")"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (return_statement "return dVar18;" (return "return") (identifier "dVar18") (; ";")) (} "}"))) (return_statement "return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;" (return "return") (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *\n         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400))" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *\n         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" (binary_expression "dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" (identifier "dVar18") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c0674) + 0x7bd0" (pointer_expression "*(int *)(pcVar12 + 0x2c0674)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c0674)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c0674)" (( "(") (binary_expression "pcVar12 + 0x2c0674" (identifier "pcVar12") (+ "+") (number_literal "0x2c0674")) () ")")))) (+ "+") (number_literal "0x7bd0")) () ")"))))) (* "*") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c066c) + 0x1a58)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c066c) + 0x1a58" (pointer_expression "*(int *)(pcVar12 + 0x2c066c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c066c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c066c)" (( "(") (binary_expression "pcVar12 + 0x2c066c" (identifier "pcVar12") (+ "+") (number_literal "0x2c066c")) () ")")))) (+ "+") (number_literal "0x1a58")) () ")"))))) (* "*") (parenthesized_expression "(dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400))" (( "(") (binary_expression "dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" (identifier "dVar19") (- "-") (pointer_expression "*(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" (* "*") (cast_expression "(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar12 + 0x2c066c) + 0x1400)" (( "(") (binary_expression "*(int *)(pcVar12 + 0x2c066c) + 0x1400" (pointer_expression "*(int *)(pcVar12 + 0x2c066c)" (* "*") (cast_expression "(int *)(pcVar12 + 0x2c066c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar12 + 0x2c066c)" (( "(") (binary_expression "pcVar12 + 0x2c066c" (identifier "pcVar12") (+ "+") (number_literal "0x2c066c")) () ")")))) (+ "+") (number_literal "0x1400")) () ")"))))) () ")"))) (+ "+") (cast_expression "(double)fVar7" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (identifier "fVar7"))) (; ";")) (} "}")))

void function_1(double var_8,double var_7,double var_6,double *hue,double *chroma,double *luma)

{
  type_1 *puVar1;
  int var_39;
  type_2 uVar3;
  int var_19;
  double *var_30;
  int var_18;
  type_3 var_53;
  type_4 *var_3;
  double *var_17;
  double *var_20;
  double *var_21;
  int var_38;
  type_4 *var_16;
  type_5 *var_23;
  type_5 *var_31;
  type_5 *var_29;
  type_5 *pcVar14;
  type_5 *pcVar15;
  double var_11;
  double var_9;
  double var_10;
  double var_26;
  double var_50;
  double var_14;
  double var_28;
  double var_49;
  double var_48;
  double var_27;
  double var_51;
  double var_52;
  double var_47;
  double *var_1;
  double *var_4;
  double *var_5;
  double var_46;
  type_2 uStack_1b4;
  double *var_43;
  double *var_44;
  double *var_45;
  type_2 uStack_144;
  double *var_40;
  double *var_41;
  double *var_42;
  type_2 uStack_e4;
  double *var_36;
  double *var_37;
  type_2 uStack_c4;
  double *var_34;
  double *var_35;
  type_2 uStack_a4;
  double *var_32;
  double *var_33;
  type_2 uStack_84;
  type_2 uStack_5c;
  double *var_24;
  double *var_25;
  type_2 uStack_3c;
  
  if (var_1 == (double *)0x0) {
    var_3 = var_2 + 0x7ab8;
    (*(type_5 *)PTR___assert_fail_003a9608)
              (var_2 + 0x77d8,
               var_2 + 0x7790,0x39a,var_3);
LAB_000e6d3c:
    var_3 = var_3 + 0x7ab8;
    (*(type_5 *)PTR___assert_fail_003a9608)
              (var_2 + 0x780c,
               var_2 + 0x7790,0x39c,var_3);
  }
  else {
    var_3 = var_2;
    if (var_4 != (double *)0x0) {
      if (var_5 != (double *)0x0) {
        var_9 = var_6;
        if (var_6 < var_7) {
          var_9 = var_7;
        }
        var_10 = var_8;
        if (var_8 <= var_9) {
          var_10 = var_9;
        }
        var_9 = var_7;
        if (var_6 <= var_7) {
          var_9 = var_6;
        }
        var_11 = var_8;
        if (var_9 <= var_8) {
          var_11 = var_9;
        }
        var_11 = var_10 - var_11;
        var_9 = *(double *)(var_12 + 0x13f8);
        if (var_9 <= var_13(var_11)) {
          if (var_13(var_8 - var_10) < var_9) {
            var_10 = *(double *)(var_2 + -0x2e50);
            var_9 = (double)(*(type_5 *)PTR_fmod_003a99b8)((var_7 - var_6) / var_11 + var_10,var_10);
            var_9 = var_9 / var_10;
            goto LAB_000e6c48;
          }
          if (var_13(var_7 - var_10) < var_9) {
            var_9 = ((var_6 - var_8) / var_11 +
                     *(double *)(var_2 + -0x2e48)) /
                     *(double *)(var_2 + -0x2e50);
            goto LAB_000e6c48;
          }
          if (var_13(var_6 - var_10) < var_9) {
            var_9 = ((var_8 - var_7) / var_11 +
                     *(double *)(var_2 + -0x3cc8)) /
                     *(double *)(var_2 + -0x2e50);
            goto LAB_000e6c48;
          }
        }
        var_9 = 0.0;
LAB_000e6c48:
        *var_1 = var_9;
        var_3 = var_2;
        var_9 = *(double *)(var_12 + 0x1440);
        var_14 = *(double *)(var_2 + -0x3e90);
        var_10 = *(double *)(var_2 + -0x3ea0);
        *var_4 = var_11 * var_9;
        *var_5 =
             (var_6 * *(double *)(var_3 + -0x3e78) + var_8 * var_10 + var_7 * var_14) * var_9;
        return;
      }
      goto LAB_000e6d3c;
    }
  }
  var_30 = (double *)((type_6)var_6 >> 0x20);
  var_29 = ConvertRGBToHSB;
  var_16 = PTR___assert_fail_003a9608;
  (*(type_5 *)PTR___assert_fail_003a9608)
            (var_2 + 0x77f0,
             var_2 + 0x7790,0x39b,var_3 + 0x7ab8);
  var_9 = (double)var_15(&_gp,uStack_3c);
  var_18 = *(int *)(var_16 + 0x2c1b6c);
  if (var_17 == (double *)0x0) {
    var_18 = var_18 + 0x7790;
    var_19 = *(int *)(var_16 + 0x2c1b6c) + 0x77d8;
    (**(type_5 **)(var_16 + 0x2c288c))(var_19,var_18,0x3d7,*(int *)(var_16 + 0x2c1b6c) + 0x7aa8);
LAB_000e6fbc:
    var_18 = var_18 + 0x7790;
    var_19 = var_19 + 0x7844;
    (**(type_5 **)(var_16 + 0x2c288c))(var_19,var_18,0x3d9,*(int *)(var_16 + 0x2c1b6c) + 0x7aa8);
  }
  else {
    var_19 = *(int *)(var_16 + 0x2c1b6c);
    if (var_20 != (double *)0x0) {
      var_19 = *(int *)(var_16 + 0x2c1b6c);
      if (var_21 != (double *)0x0) {
        *(type_2 *)((int)var_17 + 4) = 0;
        *(type_2 *)var_17 = 0;
        *(type_2 *)((int)var_20 + 4) = 0;
        *(type_2 *)var_20 = 0;
        *(type_2 *)((int)var_21 + 4) = 0;
        *(type_2 *)var_21 = 0;
        var_10 = var_7;
        if (var_8 < var_7) {
          var_10 = var_8;
        }
        var_11 = var_9;
        if (var_10 <= var_9) {
          var_11 = var_10;
        }
        uVar3 = var_22(var_7,0);
        if (var_7 < var_8) {
          uVar3 = var_22(var_8,0);
          puVar1 = (type_1 *)((type_6)var_8 >> 0x20);
        }
        else {
          puVar1 = (type_1 *)((type_6)var_7 >> 0x20);
        }
        if ((double)var_15(puVar1,uVar3) < var_9) {
          puVar1 = &_gp;
          uVar3 = uStack_3c;
        }
        var_10 = *(double *)(*(int *)(var_16 + 0x2c1b64) + 0x13f8);
        if (var_10 <= var_13((double)var_15(puVar1,uVar3))) {
          var_11 = (double)var_15(puVar1,uVar3) - var_11;
          var_14 = *(double *)(*(int *)(var_16 + 0x2c1b64) + 0x1440);
          *var_20 = var_11 / (double)var_15(puVar1,uVar3);
          *var_21 = (double)var_15(puVar1,uVar3) * var_14;
          if (var_10 <= var_13(var_11)) {
            if (var_10 <= var_13(var_8 - (double)var_15(puVar1,uVar3))) {
              if (var_13(var_7 - (double)var_15(puVar1,uVar3)) < var_10) {
                var_11 = (var_9 - var_8) / var_11 +
                         *(double *)(*(int *)(var_16 + 0x2c1b6c) + -0x2e48);
                *var_17 = var_11;
              }
              else {
                var_11 = (var_8 - var_7) / var_11 +
                         *(double *)(*(int *)(var_16 + 0x2c1b6c) + -0x3cc8);
                *var_17 = var_11;
              }
              var_11 = var_11 / *(double *)(*(int *)(var_16 + 0x2c1b6c) + -0x2e50);
              var_18 = *(int *)(var_16 + 0x2c1b64);
            }
            else {
              var_10 = *(double *)(*(int *)(var_16 + 0x2c1b6c) + -0x2e50);
              var_11 = (var_7 - var_9) / var_11;
              *var_17 = var_11;
              var_11 = var_11 / var_10;
              var_18 = *(int *)(var_16 + 0x2c1b64);
            }
            if (var_11 < 0.0) {
              *var_17 = var_11 + *(double *)(var_18 + 0x1438);
            }
            else {
              *var_17 = var_11;
            }
          }
        }
        return;
      }
      goto LAB_000e6fbc;
    }
  }
  var_23 = *(type_5 **)(var_16 + 0x2c288c);
  pcVar14 = ConvertRGBToHSI;
  (*var_23)(var_19 + 0x7824,var_18 + 0x7790,0x3d8,*(int *)(var_16 + 0x2c1b6c) + 0x7aa8);
  var_18 = *(int *)(var_23 + 0x2c18f4);
  if (var_24 != (double *)0x0) {
    if ((double *)var_29 != (double *)0x0) {
      if (var_25 != (double *)0x0) {
        var_9 = *(double *)(*(int *)(var_23 + 0x2c18ec) + 0x1440);
        var_11 = var_8 * var_9;
        var_14 = var_7 * var_9;
        var_9 = (double)var_15(var_16 + 0x2c9b34,uStack_5c) * var_9;
        var_10 = (var_11 + var_14 + var_9) / *(double *)(*(int *)(var_23 + 0x2c18f4) + -0x3cd8);
        *var_25 = var_10;
        if (var_10 <= 0.0) {
          *var_24 = 0.0;
          *(double *)var_29 = 0.0;
          return;
        }
        var_26 = var_9;
        if (var_14 < var_9) {
          var_26 = var_14;
        }
        if (var_11 < var_26) {
          var_26 = var_11;
        }
        pcVar14 = *(type_5 **)(var_23 + 0x2c2014);
        var_27 = *(double *)(*(int *)(var_23 + 0x2c18ec) + 0x1438);
        var_11 = *(double *)(*(int *)(var_23 + 0x2c18f4) + 0x7bb0);
        var_28 = *(double *)(*(int *)(var_23 + 0x2c18f4) + 0x7bb8);
        *(double *)var_29 = var_27 - var_26 / var_10;
        var_9 = (double)(*pcVar14)((var_14 - var_9) * var_28,
                                    ((var_8 * var_11 - var_14) - var_9) *
                                    *(double *)(*(int *)(var_23 + 0x2c18ec) + 0x1400));
        var_9 = (var_9 * *(double *)(*(int *)(var_23 + 0x2c18f4) + 0x7bc0)) /
                 *(double *)(*(int *)(var_23 + 0x2c18f4) + -0x5aa0);
        if (var_9 < 0.0) {
          var_9 = var_9 + var_27;
        }
        *var_24 = var_9;
        return;
      }
      var_18 = var_18 + 0x7a98;
      (**(type_5 **)(var_23 + 0x2c2614))
                (*(int *)(var_23 + 0x2c18f4) + 0x7864,*(int *)(var_23 + 0x2c18f4) + 0x7790,0x41e,
                 var_18);
    }
    var_18 = var_18 + 0x7a98;
    (**(type_5 **)(var_23 + 0x2c2614))
              (*(int *)(var_23 + 0x2c18f4) + 0x7824,*(int *)(var_23 + 0x2c18f4) + 0x7790);
  }
  var_29 = *(type_5 **)(var_23 + 0x2c2614);
  pcVar15 = ConvertRGBToHSL;
  (*var_29)(*(int *)(var_23 + 0x2c18f4) + 0x77d8,*(int *)(var_23 + 0x2c18f4) + 0x7790,0x41c,
             var_18 + 0x7a98);
  var_18 = *(int *)(var_29 + 0x2c1748);
  if (var_17 == (double *)0x0) {
    var_18 = var_18 + 0x7a88;
    (**(type_5 **)(var_29 + 0x2c2468))
              (*(int *)(var_29 + 0x2c1748) + 0x77d8,*(int *)(var_29 + 0x2c1748) + 0x7790,0x456,
               var_18);
LAB_000e736c:
    var_31 = *(type_5 **)(var_29 + 0x2c2468);
    var_18 = var_18 + 0x7a88;
    (*var_31)(*(int *)(var_29 + 0x2c1748) + 0x7884,*(int *)(var_29 + 0x2c1748) + 0x7790,0x458,
               var_18);
  }
  else {
    var_31 = *(type_5 **)(var_29 + 0x2c2468);
    if ((double *)pcVar14 != (double *)0x0) {
      if (var_30 != (double *)0x0) {
        var_10 = *(double *)(*(int *)(var_29 + 0x2c1740) + 0x1440);
        var_14 = var_7 * var_10;
        var_11 = (double)var_15(var_23 + 0x2c98bc,uStack_84) * var_10;
        var_10 = var_8 * var_10;
        var_9 = var_11;
        if (var_11 < var_14) {
          var_9 = var_14;
        }
        var_26 = var_10;
        if (var_10 <= var_9) {
          var_26 = var_9;
        }
        var_9 = var_14;
        if (var_11 <= var_14) {
          var_9 = var_11;
        }
        var_18 = *(int *)(var_29 + 0x2c1740);
        var_28 = var_10;
        if (var_9 <= var_10) {
          var_28 = var_9;
        }
        var_9 = var_26 - var_28;
        *var_30 = (var_26 + var_28) * *(double *)(var_18 + 0x1400);
        if (var_9 <= 0.0) {
          *var_17 = 0.0;
          *(double *)pcVar14 = 0.0;
          return;
        }
        if (var_13(var_26 - var_10) < *(double *)(*(int *)(var_29 + 0x2c1740) + 0x13f8)) {
          var_10 = (var_14 - var_11) / var_9;
          if (var_14 < var_11) {
            var_10 = var_10 + *(double *)(*(int *)(var_29 + 0x2c1748) + -0x2e50);
          }
        }
        else if (var_13(var_26 - var_14) < *(double *)(*(int *)(var_29 + 0x2c1740) + 0x13f8)) {
          var_10 = (var_11 - var_10) / var_9 + *(double *)(*(int *)(var_29 + 0x2c1748) + -0x2e48);
        }
        else {
          var_10 = (var_10 - var_14) / var_9 + *(double *)(*(int *)(var_29 + 0x2c1748) + -0x3cc8);
        }
        var_14 = *(double *)(var_18 + 0x1400);
        *var_17 = var_10 * *(double *)(*(int *)(var_29 + 0x2c1748) + 0x7bc8);
        var_10 = *var_30;
        var_11 = var_10 + var_10;
        if (var_14 < var_10) {
          var_11 = *(double *)(*(int *)(var_29 + 0x2c1748) + -0x2e48) - var_11;
        }
        *(double *)pcVar14 = var_9 / var_11;
        return;
      }
      goto LAB_000e736c;
    }
  }
  var_23 = ConvertRGBToHSV;
  (*var_31)(*(int *)(var_29 + 0x2c1748) + 0x7824,*(int *)(var_29 + 0x2c1748) + 0x7790,0x457,
             var_18 + 0x7a88);
  var_18 = *(int *)(var_31 + 0x2c1540);
  if (var_32 == (double *)0x0) {
    var_18 = var_18 + 0x7a78;
    (**(type_5 **)(var_31 + 0x2c2260))
              (*(int *)(var_31 + 0x2c1540) + 0x77d8,*(int *)(var_31 + 0x2c1540) + 0x7790,0x49e,
               var_18);
LAB_000e7548:
    (**(type_5 **)(var_31 + 0x2c2260))
              (*(int *)(var_31 + 0x2c1540) + 0x78a4,*(int *)(var_31 + 0x2c1540) + 0x7790,0x4a0,
               var_18 + 0x7a78);
  }
  else if ((double *)pcVar15 != (double *)0x0) {
    if (var_33 != (double *)0x0) {
      var_11 = *(double *)(*(int *)(var_31 + 0x2c1538) + 0x1440);
      var_14 = var_7 * var_11;
      var_10 = (double)var_15(var_29 + 0x2c9710,uStack_a4) * var_11;
      var_11 = var_8 * var_11;
      var_9 = var_10;
      if (var_10 < var_14) {
        var_9 = var_14;
      }
      var_26 = var_11;
      if (var_11 <= var_9) {
        var_26 = var_9;
      }
      var_9 = var_14;
      if (var_10 <= var_14) {
        var_9 = var_10;
      }
      var_28 = var_11;
      if (var_9 <= var_11) {
        var_28 = var_9;
      }
      var_28 = var_26 - var_28;
      *var_33 = var_26;
      if (var_28 <= 0.0) {
        *var_32 = 0.0;
        *(double *)pcVar15 = 0.0;
        return;
      }
      if (var_13(var_26 - var_11) < *(double *)(*(int *)(var_31 + 0x2c1538) + 0x13f8)) {
        var_9 = (var_14 - var_10) / var_28;
        if (var_14 < var_10) {
          var_9 = var_9 + *(double *)(*(int *)(var_31 + 0x2c1540) + -0x2e50);
        }
      }
      else if (var_13(var_26 - var_14) < *(double *)(*(int *)(var_31 + 0x2c1538) + 0x13f8)) {
        var_9 = (var_10 - var_11) / var_28 + *(double *)(*(int *)(var_31 + 0x2c1540) + -0x2e48);
      }
      else {
        var_9 = (var_11 - var_14) / var_28 + *(double *)(*(int *)(var_31 + 0x2c1540) + -0x3cc8);
      }
      *var_32 = var_9 * *(double *)(*(int *)(var_31 + 0x2c1540) + 0x7bc8);
      *(double *)pcVar15 = var_28 / var_26;
      return;
    }
    goto LAB_000e7548;
  }
  var_29 = *(type_5 **)(var_31 + 0x2c2260);
  pcVar14 = ConvertRGBToHWB;
  (*var_29)(*(int *)(var_31 + 0x2c1540) + 0x7824,*(int *)(var_31 + 0x2c1540) + 0x7790);
  var_9 = (double)var_15(var_31 + 0x2c9508,uStack_c4);
  var_18 = *(int *)(var_29 + 0x2c1364);
  if (var_34 != (double *)0x0) {
    var_19 = *(int *)(var_29 + 0x2c1364);
    if ((double *)var_23 != (double *)0x0) {
      if (var_35 != (double *)0x0) {
        var_10 = var_9;
        if (var_7 < var_9) {
          var_10 = var_7;
        }
        var_11 = var_8;
        if (var_10 <= var_8) {
          var_11 = var_10;
        }
        var_10 = var_7;
        if (var_7 <= var_9) {
          var_10 = var_9;
        }
        var_14 = var_8;
        if (var_8 <= var_10) {
          var_14 = var_10;
        }
        var_26 = *(double *)(*(int *)(var_29 + 0x2c135c) + 0x1440);
        var_10 = *(double *)(*(int *)(var_29 + 0x2c135c) + 0x1438);
        var_28 = *(double *)(*(int *)(var_29 + 0x2c135c) + 0x13f8);
        *var_35 = var_10 - var_14 * var_26;
        *(double *)var_23 = var_11 * var_26;
        if (var_13(var_14 - var_11) < var_28) {
          *var_34 = *(double *)(*(int *)(var_29 + 0x2c135c) + 0x1a78);
          return;
        }
        if (var_13(var_8 - var_11) < var_28) {
          var_9 = var_7 - var_9;
          var_10 = *(double *)(*(int *)(var_29 + 0x2c1364) + -0x3cd8);
        }
        else if (var_13(var_7 - var_11) < var_28) {
          var_9 = var_9 - var_8;
          var_10 = *(double *)(*(int *)(var_29 + 0x2c1364) + -0x3a50);
        }
        else {
          var_9 = var_8 - var_7;
          if (var_13(var_7 - var_11) < var_28) {
            var_10 = *(double *)(*(int *)(var_29 + 0x2c1364) + -0x3a50);
          }
        }
        *var_34 = (var_10 - var_9 / (var_14 - var_11)) /
                      *(double *)(*(int *)(var_29 + 0x2c1364) + -0x2e50);
        return;
      }
      var_18 = var_18 + 0x7790;
      var_19 = *(int *)(var_29 + 0x2c1364) + 0x78e0;
      (**(type_5 **)(var_29 + 0x2c2084))(var_19,var_18,0x4e6,*(int *)(var_29 + 0x2c1364) + 0x7a68);
    }
    var_18 = var_18 + 0x7790;
    (**(type_5 **)(var_29 + 0x2c2084))
              (var_19 + 0x78c0,var_18,0x4e5,*(int *)(var_29 + 0x2c1364) + 0x7a68);
  }
  var_23 = *(type_5 **)(var_29 + 0x2c2084);
  (*var_23)(*(int *)(var_29 + 0x2c1364) + 0x77d8,var_18 + 0x7790,0x4e4,
             *(int *)(var_29 + 0x2c1364) + 0x7a68);
  var_10 = (double)(**(type_5 **)(var_23 + 0x2c20c0))();
  var_26 = *(double *)(*(int *)(var_23 + 0x2c1174) + 0x1440);
  var_10 = var_10 * var_26;
  var_9 = var_7;
  var_11 = (double)(**(type_5 **)(var_23 + 0x2c20c0))(var_7);
  var_11 = var_11 * var_26;
  var_14 = (double)(**(type_5 **)(var_23 + 0x2c20c0))(var_15(var_29 + 0x2c932c,uStack_e4));
  var_14 = var_14 * var_26;
  var_26 = var_14 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d38) +
           var_10 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d48) +
           var_11 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d40);
  var_28 = var_14 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d20) +
           var_10 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d30) +
           var_11 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d28);
  var_10 = var_14 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d08) +
           var_10 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d18) +
           var_11 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3d10);
  if (var_36 != (double *)0x0) {
    var_18 = *(int *)(var_23 + 0x2c117c);
    if ((double *)pcVar14 != (double *)0x0) {
      if (var_37 != (double *)0x0) {
        var_18 = *(int *)(var_23 + 0x2c117c);
        var_9 = var_26 / *(double *)(*(int *)(var_23 + 0x2c117c) + -0x39e8);
        if (var_9 <= *(double *)(var_18 + -0x3d00)) {
          var_19 = *(int *)(var_23 + 0x2c1174);
          var_38 = *(int *)(var_23 + 0x2c117c);
          var_9 = ((var_26 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3ce8)) /
                    *(double *)(*(int *)(var_23 + 0x2c117c) + -0x39e8) +
                   *(double *)(var_19 + 0x1ac8)) / *(double *)(var_38 + -0x3cf0);
          if (*(double *)(var_18 + -0x3d00) < var_28) goto LAB_000e79e4;
LAB_000e78cc:
          var_14 = *(double *)(*(int *)(var_23 + 0x2c117c) + -0x39e0);
          var_26 = var_10 / var_14;
          var_11 = (var_28 * *(double *)(*(int *)(var_23 + 0x2c117c) + -0x3ce8) +
                   *(double *)(var_19 + 0x1ac8)) / *(double *)(var_38 + -0x3cf0);
          var_39 = *(int *)(var_23 + 0x2c117c);
          if (var_26 <= *(double *)(var_18 + -0x3d00)) {
            var_39 = *(int *)(var_23 + 0x2c117c);
LAB_000e7904:
            var_10 = ((var_10 * *(double *)(var_39 + -0x3ce8)) / var_14 + *(double *)(var_19 + 0x1ac8)
                     ) / *(double *)(var_38 + -0x3cf0);
            goto LAB_000e7920;
          }
        }
        else {
          var_19 = *(int *)(var_23 + 0x2c1174);
          var_38 = *(int *)(var_23 + 0x2c117c);
          var_9 = (double)(**(type_5 **)(var_23 + 0x2c1fb0))
                                     (var_9,*(type_7 *)(*(int *)(var_23 + 0x2c117c) + -0x3cf8)
                                     );
          if (var_28 <= *(double *)(var_18 + -0x3d00)) goto LAB_000e78cc;
LAB_000e79e4:
          var_11 = (double)(**(type_5 **)(var_23 + 0x2c1fb0))
                                     (var_28,*(type_7 *)(*(int *)(var_23 + 0x2c117c) + -0x3cf8)
                                     );
          var_14 = *(double *)(*(int *)(var_23 + 0x2c117c) + -0x39e0);
          var_26 = var_10 / var_14;
          var_39 = *(int *)(var_23 + 0x2c117c);
          if (var_26 <= *(double *)(var_18 + -0x3d00)) goto LAB_000e7904;
          var_39 = *(int *)(var_23 + 0x2c117c);
        }
        var_10 = (double)(**(type_5 **)(var_23 + 0x2c1fb0))(var_26,*(type_7 *)(var_39 + -0x3cf8));
LAB_000e7920:
        var_26 = *(double *)(*(int *)(var_23 + 0x2c117c) + -0x5ae8);
        var_14 = *(double *)(*(int *)(var_23 + 0x2c1174) + 0x1400);
        var_28 = *(double *)(*(int *)(var_23 + 0x2c117c) + -0x39f8);
        var_27 = *(double *)(*(int *)(var_23 + 0x2c117c) + -0x39f0);
        *var_36 = (var_11 * *(double *)(var_38 + -0x3cf0) - *(double *)(var_19 + 0x1ac8)) /
                      *(double *)(*(int *)(var_23 + 0x2c1174) + 0x1a70);
        *(double *)pcVar14 = ((var_9 - var_11) * var_28) / var_26 + var_14;
        *var_37 = ((var_11 - var_10) * var_27) / var_26 + var_14;
        return;
      }
      (*(type_5 *)(*(int *)(var_23 + 0x2c11d4) + 0x39c0))();
    }
    (**(type_5 **)(var_23 + 0x2c1e9c))
              (*(int *)(var_23 + 0x2c117c) + 31000,*(int *)(var_23 + 0x2c117c) + -0x59e0,0xa2,
               var_18 + 0x7a48);
  }
  var_29 = *(type_5 **)(var_23 + 0x2c1e9c);
  (*var_29)(*(int *)(var_23 + 0x2c117c) + 0x7900,*(int *)(var_23 + 0x2c117c) + -0x59e0,0xa1,
             *(int *)(var_23 + 0x2c117c) + 0x7a48);
  var_40 = (double *)((type_6)var_7 >> 0x20);
  var_41 = var_22(var_7,0);
  if (var_40 == (double *)0x0) goto LAB_000e7e18;
  var_18 = *(int *)(var_29 + 0x2c0e60);
  if (var_41 != (double *)0x0) {
    if (var_42 != (double *)0x0) {
      var_18 = *(int *)(var_29 + 0x2c0e60);
      var_10 = (double)(**(type_5 **)(var_29 + 0x2c1da4))();
      var_14 = *(double *)(*(int *)(var_29 + 0x2c0e58) + 0x1440);
      var_10 = var_10 * var_14;
      var_9 = (double)(**(type_5 **)(var_29 + 0x2c1da4))(var_9);
      var_9 = var_9 * var_14;
      var_11 = (double)(**(type_5 **)(var_29 + 0x2c1da4))(var_15(var_23 + 0x2c9144,uStack_144));
      var_11 = var_11 * var_14;
      var_14 = var_11 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d38) +
               var_10 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d48) +
               var_9 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d40);
      var_26 = var_14 / *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x39e8);
      var_28 = var_11 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d20) +
               var_10 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d30) +
               var_9 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d28);
      var_9 = var_11 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d08) +
               var_10 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d18) +
               var_9 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3d10);
      if (var_26 <= *(double *)(var_18 + -0x3d00)) {
        var_19 = *(int *)(var_29 + 0x2c0e58);
        var_38 = *(int *)(var_29 + 0x2c0e60);
        var_10 = ((var_14 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3ce8)) /
                  *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x39e8) + *(double *)(var_19 + 0x1ac8))
                 / *(double *)(var_38 + -0x3cf0);
      }
      else {
        var_19 = *(int *)(var_29 + 0x2c0e58);
        var_38 = *(int *)(var_29 + 0x2c0e60);
        var_10 = (double)(**(type_5 **)(var_29 + 0x2c1c94))
                                   (var_26,*(type_7 *)(*(int *)(var_29 + 0x2c0e60) + -0x3cf8));
      }
      if (var_28 <= *(double *)(var_18 + -0x3d00)) {
        var_26 = *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x39e0);
        var_14 = var_9 / var_26;
        var_11 = (var_28 * *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x3ce8) +
                 *(double *)(var_19 + 0x1ac8)) / *(double *)(var_38 + -0x3cf0);
        var_39 = *(int *)(var_29 + 0x2c0e60);
        if (*(double *)(var_18 + -0x3d00) < var_14) goto LAB_000e7da0;
        var_39 = *(int *)(var_29 + 0x2c0e60);
      }
      else {
        var_11 = (double)(**(type_5 **)(var_29 + 0x2c1c94))
                                   (var_28,*(type_7 *)(*(int *)(var_29 + 0x2c0e60) + -0x3cf8));
        var_26 = *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x39e0);
        var_14 = var_9 / var_26;
        var_39 = *(int *)(var_29 + 0x2c0e60);
        if (*(double *)(var_18 + -0x3d00) < var_14) {
          var_39 = *(int *)(var_29 + 0x2c0e60);
LAB_000e7da0:
          var_9 = (double)(**(type_5 **)(var_29 + 0x2c1c94))
                                     (var_14,*(type_7 *)(var_39 + -0x3cf8));
          goto LAB_000e7c44;
        }
      }
      var_9 = ((var_9 * *(double *)(var_39 + -0x3ce8)) / var_26 + *(double *)(var_19 + 0x1ac8)) /
               *(double *)(var_38 + -0x3cf0);
LAB_000e7c44:
      var_23 = *(type_5 **)(var_29 + 0x2c1c90);
      var_28 = *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x5ae8);
      var_27 = *(double *)(*(int *)(var_29 + 0x2c0e58) + 0x1400);
      var_14 = *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x39f0);
      var_26 = *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x39f8);
      *var_40 = (var_11 * *(double *)(var_38 + -0x3cf0) - *(double *)(var_19 + 0x1ac8)) /
                     *(double *)(*(int *)(var_29 + 0x2c0e58) + 0x1a70);
      var_26 = ((((var_10 - var_11) * var_26) / var_28 + var_27) - var_27) * var_28;
      var_10 = ((((var_11 - var_9) * var_14) / var_28 + var_27) - var_27) * var_28;
      var_9 = (double)(*var_23)(var_26,var_10);
      var_23 = *(type_5 **)(var_29 + 0x2c1580);
      *var_41 = var_9 / var_28 + var_27;
      var_9 = (double)(*var_23)(var_10,var_26);
      var_9 = ((var_9 * *(double *)(*(int *)(var_29 + 0x2c0e58) + 0x1ab0)) /
               *(double *)(*(int *)(var_29 + 0x2c0e58) + 0x1ab8)) /
               *(double *)(*(int *)(var_29 + 0x2c0e60) + -0x5aa0);
      if (var_9 < 0.0) {
        var_9 = var_9 + *(double *)(*(int *)(var_29 + 0x2c0e58) + 0x1438);
      }
      *var_42 = var_9;
      return;
    }
    var_18 = var_18 + 0x7a34;
    (**(type_5 **)(var_29 + 0x2c1b80))
              (*(int *)(var_29 + 0x2c0e60) + 0x77d8,*(int *)(var_29 + 0x2c0e60) + 0x7790,0x556,
               var_18);
  }
  (**(type_5 **)(var_29 + 0x2c1b80))
            (*(int *)(var_29 + 0x2c0e60) + 0x77f0,*(int *)(var_29 + 0x2c0e60) + 0x7790,0x555,
             var_18 + 0x7a34);
LAB_000e7e18:
  var_23 = *(type_5 **)(var_29 + 0x2c1b80);
  (*var_23)(*(int *)(var_29 + 0x2c0e60) + 0x780c,*(int *)(var_29 + 0x2c0e60) + 0x7790,0x554,
             *(int *)(var_29 + 0x2c0e60) + 0x7a34);
  if (var_43 != (double *)0x0) {
    var_18 = *(int *)(var_23 + 0x2c0aac);
    if (var_44 != (double *)0x0) {
      if (var_45 != (double *)0x0) {
        var_10 = (double)(**(type_5 **)(var_23 + 0x2c19f0))();
        var_14 = *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1440);
        var_10 = var_10 * var_14;
        var_9 = (double)(**(type_5 **)(var_23 + 0x2c19f0))(var_9);
        var_9 = var_9 * var_14;
        var_11 = (double)(**(type_5 **)(var_23 + 0x2c19f0))(var_15(var_29 + 0x2c8e28,uStack_1b4));
        var_11 = var_11 * var_14;
        var_14 = var_11 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d20) +
                 var_10 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d30) +
                 var_9 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d28);
        var_26 = var_11 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d38) +
                 var_10 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d48) +
                 var_9 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d40);
        var_9 = var_11 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d08) +
                 var_10 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d18) +
                 var_9 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d10);
        if (var_14 <= *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3d00)) {
          var_10 = var_14 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3ce8);
        }
        else {
          var_10 = (double)(**(type_5 **)(var_23 + 0x2c18e0))
                                     (var_14,*(type_7 *)(*(int *)(var_23 + 0x2c0aac) + -0x3cf8)
                                     );
          var_10 = var_10 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cf0) -
                   *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1ac8);
        }
        var_9 = var_9 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cd8) +
                 var_14 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3ce0) + var_26;
        if (0.0 <= var_9) {
          var_11 = *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1438);
          var_46 = var_9;
        }
        else {
          var_11 = *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1a78);
          var_46 = -var_9;
        }
        if (var_46 < *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x13f8)) {
          var_9 = var_11 / *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x13f8);
        }
        else {
          var_9 = *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1438) / var_9;
        }
        var_29 = *(type_5 **)(var_23 + 0x2c18dc);
        var_27 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cb8);
        var_11 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3c98);
        var_50 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cb0);
        var_28 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3c90);
        var_47 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cc8);
        var_51 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3ca8);
        var_48 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cc0);
        var_52 = *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3ca0);
        var_49 = var_10 * *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x3cd0);
        *var_43 = var_10 / *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1a70);
        var_27 = (((var_9 * var_47 * var_26 - var_48) * var_49 + var_27) / var_50) * var_50 -
                 var_27;
        var_11 = (((var_9 * var_51 * var_14 - var_52) * var_49 + var_11) / var_28) * var_28 -
                 var_11;
        var_9 = (double)(*var_29)(var_27,var_11);
        var_29 = *(type_5 **)(var_23 + 0x2c11cc);
        *var_44 = var_9 / *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x5ae8) +
                       *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1400);
        var_9 = (double)(*var_29)(var_11,var_27);
        var_9 = ((var_9 * *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1ab0)) /
                 *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1ab8)) /
                 *(double *)(*(int *)(var_23 + 0x2c0aac) + -0x5aa0);
        if (var_9 < 0.0) {
          var_9 = var_9 + *(double *)(*(int *)(var_23 + 0x2c0aa4) + 0x1438);
        }
        *var_45 = var_9;
        return;
      }
      var_18 = var_18 + 0x7a20;
      (**(type_5 **)(var_23 + 0x2c17cc))
                (*(int *)(var_23 + 0x2c0aac) + 0x77d8,*(int *)(var_23 + 0x2c0aac) + 0x7790,0x593,
                 var_18);
    }
    (**(type_5 **)(var_23 + 0x2c17cc))
              (*(int *)(var_23 + 0x2c0aac) + 0x77f0,*(int *)(var_23 + 0x2c0aac) + 0x7790,0x592,
               var_18 + 0x7a20);
  }
  var_29 = *(type_5 **)(var_23 + 0x2c17cc);
  var_30 = (double *)(*(int *)(var_23 + 0x2c0aac) + 0x780c);
  (*var_29)(var_30,*(int *)(var_23 + 0x2c0aac) + 0x7790,0x591,
             *(int *)(var_23 + 0x2c0aac) + 0x7a20);
  if (var_30 != (double *)0x0) {
    var_9 = *var_30 * var_30[3] - var_30[1] * var_30[2];
    if (var_13(var_9) < 0.0) {
      (**(type_5 **)(var_29 + 0x2c12c4))(var_13(var_9));
    }
    return;
  }
  var_53 = 0x5b5;
  var_23 = *(type_5 **)(var_29 + 0x2c144c);
  (*var_23)(*(int *)(var_29 + 0x2c072c) + 0x7930,*(int *)(var_29 + 0x2c072c) + 0x7790,0x5b5,
             *(int *)(var_29 + 0x2c072c) + 0x7a10,var_29 + 0x2c86f4);
  (**(type_5 **)(var_23 + 0x2c0bf8))();
  if (var_53 < 8) {
                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    (*(var_23 + *(int *)(*(int *)(var_23 + 0x2c0674) + 0x79c0 + var_53 * 4) + 0x2c863c))();
    return;
  }
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (identifier))) right: (binary_expression left: (identifier) right: (identifier)))) right: (identifier)))) (return_statement (identifier)))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))))))))) (return_statement (identifier)))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier))) right: (identifier))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (identifier)))) (return_statement (binary_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (number_literal))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (identifier)))) (return_statement (identifier)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (return_statement (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier))) right: (identifier)) right: (identifier))) right: (identifier))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (identifier))) right: (identifier)) right: (identifier))) right: (identifier))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (identifier))) right: (identifier)) right: (identifier))) right: (identifier))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (identifier))) right: (identifier)) right: (identifier))) right: (identifier))) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (pointer_expression argument: (identifier)) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (call_expression function: (identifier) arguments: (argument_list (identifier)))))))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal))))) arguments: (argument_list))))) (return_statement (identifier)))) (return_statement (binary_expression left: (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))

double MASKED(double param_1,double param_2)

{
  undefined1 *puVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  double *pdVar5;
  int iVar6;
  float fVar7;
  uint uVar8;
  undefined *puVar9;
  double *unaff_s0;
  double *unaff_s1;
  double *unaff_s2;
  int iVar10;
  undefined *puVar11;
  code *pcVar12;
  code *pcVar13;
  code *pcVar14;
  code *pcVar15;
  code *pcVar16;
  double dVar17;
  double dVar18;
  double dVar19;
  double dVar20;
  double dVar21;
  double dVar22;
  double dVar23;
  double dVar24;
  double dVar25;
  double dVar26;
  double dVar27;
  double dVar28;
  double dVar29;
  double in_stack_00000010;
  double *in_stack_00000018;
  double *in_stack_0000001c;
  double *in_stack_00000020;
  undefined4 uStack_23c;
  double dStack_208;
  undefined4 uStack_1b4;
  double *pdStack_1b0;
  double *pdStack_1ac;
  double *pdStack_1a8;
  undefined4 uStack_144;
  double *pdStack_140;
  double *pdStack_13c;
  double *pdStack_138;
  undefined4 uStack_e4;
  double *pdStack_e0;
  double *pdStack_d8;
  undefined4 uStack_c4;
  double *pdStack_c0;
  double *pdStack_b8;
  undefined4 uStack_a4;
  double *pdStack_a0;
  double *pdStack_98;
  undefined4 uStack_84;
  undefined4 uStack_5c;
  double *pdStack_58;
  double *pdStack_50;
  undefined4 uStack_3c;
  
  if (in_stack_00000018 == (double *)0x0) {
    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7ab8;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77d8,
               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39a,puVar9);
LAB_000e6d3c:
    puVar9 = puVar9 + 0x7ab8;
    (*(code *)PTR___assert_fail_003a9608)
              (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x780c,
               PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39c,puVar9);
  }
  else {
    puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
    if (in_stack_0000001c != (double *)0x0) {
      if (in_stack_00000020 != (double *)0x0) {
        dVar18 = in_stack_00000010;
        if (in_stack_00000010 < param_2) {
          dVar18 = param_2;
        }
        dVar19 = param_1;
        if (param_1 <= dVar18) {
          dVar19 = dVar18;
        }
        dVar18 = param_2;
        if (in_stack_00000010 <= param_2) {
          dVar18 = in_stack_00000010;
        }
        dVar17 = param_1;
        if (dVar18 <= param_1) {
          dVar17 = dVar18;
        }
        dVar17 = dVar19 - dVar17;
        dVar18 = *(double *)(PTR_LAB_003a88e0 + 0x13f8);
        if (dVar18 <= ABS(dVar17)) {
          if (ABS(param_1 - dVar19) < dVar18) {
            dVar19 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            dVar18 = (double)(*(code *)PTR_fmod_003a99b8)
                                       ((param_2 - in_stack_00000010) / dVar17 + dVar19,dVar19);
            dVar18 = dVar18 / dVar19;
            goto LAB_000e6c48;
          }
          if (ABS(param_2 - dVar19) < dVar18) {
            dVar18 = ((in_stack_00000010 - param_1) / dVar17 +
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e48)) /
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            goto LAB_000e6c48;
          }
          if (ABS(in_stack_00000010 - dVar19) < dVar18) {
            dVar18 = ((param_1 - param_2) / dVar17 +
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3cc8)) /
                     *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x2e50);
            goto LAB_000e6c48;
          }
        }
        dVar18 = 0.0;
LAB_000e6c48:
        *in_stack_00000018 = dVar18;
        puVar9 = PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8;
        dVar19 = *(double *)(PTR_LAB_003a88e0 + 0x1440);
        dVar23 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3e90);
        dVar20 = *(double *)(PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + -0x3ea0);
        *in_stack_0000001c = dVar17 * dVar19;
        dVar18 = *(double *)(puVar9 + -0x3e78);
        *in_stack_00000020 =
             (in_stack_00000010 * dVar18 + param_1 * dVar20 + param_2 * dVar23) * dVar19;
        return dVar18;
      }
      goto LAB_000e6d3c;
    }
  }
  pdVar5 = (double *)((ulonglong)in_stack_00000010 >> 0x20);
  pcVar14 = FUN_000e6d7c;
  puVar11 = PTR___assert_fail_003a9608;
  (*(code *)PTR___assert_fail_003a9608)
            (PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x77f0,
             PTR_s_ls_0__dGridFitTT_2__sPDFPassword_003a88e8 + 0x7790,0x39b,puVar9 + 0x7ab8);
  dVar18 = (double)CONCAT44(&_gp_1,uStack_3c);
  iVar6 = *(int *)(puVar11 + 0x2c1b6c);
  if (unaff_s0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7790;
    iVar4 = *(int *)(puVar11 + 0x2c1b6c) + 0x77d8;
    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d7,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);
LAB_000e6fbc:
    iVar6 = iVar6 + 0x7790;
    iVar4 = iVar4 + 0x7844;
    (**(code **)(puVar11 + 0x2c288c))(iVar4,iVar6,0x3d9,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);
  }
  else {
    iVar4 = *(int *)(puVar11 + 0x2c1b6c);
    if (unaff_s1 != (double *)0x0) {
      iVar4 = *(int *)(puVar11 + 0x2c1b6c);
      if (unaff_s2 != (double *)0x0) {
        *(undefined4 *)((int)unaff_s0 + 4) = 0;
        *(undefined4 *)unaff_s0 = 0;
        *(undefined4 *)((int)unaff_s1 + 4) = 0;
        *(undefined4 *)unaff_s1 = 0;
        *(undefined4 *)((int)unaff_s2 + 4) = 0;
        *(undefined4 *)unaff_s2 = 0;
        dVar19 = param_2;
        if (param_1 < param_2) {
          dVar19 = param_1;
        }
        dVar17 = dVar18;
        if (dVar19 <= dVar18) {
          dVar17 = dVar19;
        }
        uVar3 = SUB84(param_2,0);
        if (param_2 < param_1) {
          uVar3 = SUB84(param_1,0);
          puVar1 = (undefined1 *)((ulonglong)param_1 >> 0x20);
        }
        else {
          puVar1 = (undefined1 *)((ulonglong)param_2 >> 0x20);
        }
        if ((double)CONCAT44(puVar1,uVar3) < dVar18) {
          puVar1 = &_gp_1;
          uVar3 = uStack_3c;
        }
        dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x13f8);
        if (dVar19 <= ABS((double)CONCAT44(puVar1,uVar3))) {
          dVar17 = (double)CONCAT44(puVar1,uVar3) - dVar17;
          dVar20 = *(double *)(*(int *)(puVar11 + 0x2c1b64) + 0x1440);
          *unaff_s1 = dVar17 / (double)CONCAT44(puVar1,uVar3);
          *unaff_s2 = (double)CONCAT44(puVar1,uVar3) * dVar20;
          if (dVar19 <= ABS(dVar17)) {
            if (dVar19 <= ABS(param_1 - (double)CONCAT44(puVar1,uVar3))) {
              if (ABS(param_2 - (double)CONCAT44(puVar1,uVar3)) < dVar19) {
                dVar18 = (dVar18 - param_1) / dVar17 +
                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e48);
                *unaff_s0 = dVar18;
              }
              else {
                dVar18 = (param_1 - param_2) / dVar17 +
                         *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x3cc8);
                *unaff_s0 = dVar18;
              }
              dVar18 = dVar18 / *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);
              iVar6 = *(int *)(puVar11 + 0x2c1b64);
            }
            else {
              dVar19 = *(double *)(*(int *)(puVar11 + 0x2c1b6c) + -0x2e50);
              dVar17 = (param_2 - dVar18) / dVar17;
              *unaff_s0 = dVar17;
              dVar18 = dVar17 / dVar19;
              iVar6 = *(int *)(puVar11 + 0x2c1b64);
            }
            if (dVar18 < 0.0) {
              dVar18 = dVar18 + *(double *)(iVar6 + 0x1438);
              *unaff_s0 = dVar18;
            }
            else {
              *unaff_s0 = dVar18;
            }
          }
        }
        return dVar18;
      }
      goto LAB_000e6fbc;
    }
  }
  pcVar12 = *(code **)(puVar11 + 0x2c288c);
  pcVar15 = FUN_000e6ff4;
  (*pcVar12)(iVar4 + 0x7824,iVar6 + 0x7790,0x3d8,*(int *)(puVar11 + 0x2c1b6c) + 0x7aa8);
  iVar6 = *(int *)(pcVar12 + 0x2c18f4);
  if (pdStack_58 != (double *)0x0) {
    if ((double *)pcVar14 != (double *)0x0) {
      if (pdStack_50 != (double *)0x0) {
        dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1440);
        dVar17 = param_1 * dVar18;
        param_2 = param_2 * dVar18;
        dVar18 = (double)CONCAT44(puVar11 + 0x2c9b34,uStack_5c) * dVar18;
        dVar19 = (dVar17 + param_2 + dVar18) / *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x3cd8);
        *pdStack_50 = dVar19;
        if (dVar19 <= 0.0) {
          *pdStack_58 = 0.0;
          *(double *)pcVar14 = 0.0;
          return dVar18;
        }
        dVar20 = dVar18;
        if (param_2 < dVar18) {
          dVar20 = param_2;
        }
        if (dVar17 < dVar20) {
          dVar20 = dVar17;
        }
        pcVar15 = *(code **)(pcVar12 + 0x2c2014);
        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1438);
        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb0);
        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bb8);
        *(double *)pcVar14 = dVar26 - dVar20 / dVar19;
        dVar18 = (double)(*pcVar15)((param_2 - dVar18) * dVar23,
                                    ((param_1 * dVar17 - param_2) - dVar18) *
                                    *(double *)(*(int *)(pcVar12 + 0x2c18ec) + 0x1400));
        dVar18 = (dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c18f4) + 0x7bc0)) /
                 *(double *)(*(int *)(pcVar12 + 0x2c18f4) + -0x5aa0);
        if (dVar18 < 0.0) {
          dVar18 = dVar18 + dVar26;
        }
        *pdStack_58 = dVar18;
        return dVar18;
      }
      iVar6 = iVar6 + 0x7a98;
      (**(code **)(pcVar12 + 0x2c2614))
                (*(int *)(pcVar12 + 0x2c18f4) + 0x7864,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41e,
                 iVar6);
    }
    iVar6 = iVar6 + 0x7a98;
    (**(code **)(pcVar12 + 0x2c2614))
              (*(int *)(pcVar12 + 0x2c18f4) + 0x7824,*(int *)(pcVar12 + 0x2c18f4) + 0x7790);
  }
  pcVar14 = *(code **)(pcVar12 + 0x2c2614);
  pcVar16 = ConvertRGBToHSL;
  (*pcVar14)(*(int *)(pcVar12 + 0x2c18f4) + 0x77d8,*(int *)(pcVar12 + 0x2c18f4) + 0x7790,0x41c,
             iVar6 + 0x7a98);
  iVar6 = *(int *)(pcVar14 + 0x2c1748);
  if (unaff_s0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7a88;
    (**(code **)(pcVar14 + 0x2c2468))
              (*(int *)(pcVar14 + 0x2c1748) + 0x77d8,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x456,
               iVar6);
LAB_000e736c:
    pcVar13 = *(code **)(pcVar14 + 0x2c2468);
    iVar6 = iVar6 + 0x7a88;
    (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7884,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x458,
               iVar6);
  }
  else {
    pcVar13 = *(code **)(pcVar14 + 0x2c2468);
    if ((double *)pcVar15 != (double *)0x0) {
      if (pdVar5 != (double *)0x0) {
        dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x1440);
        param_2 = param_2 * dVar18;
        dVar19 = (double)CONCAT44(pcVar12 + 0x2c98bc,uStack_84) * dVar18;
        param_1 = param_1 * dVar18;
        dVar18 = dVar19;
        if (dVar19 < param_2) {
          dVar18 = param_2;
        }
        dVar17 = param_1;
        if (param_1 <= dVar18) {
          dVar17 = dVar18;
        }
        dVar18 = param_2;
        if (dVar19 <= param_2) {
          dVar18 = dVar19;
        }
        iVar6 = *(int *)(pcVar14 + 0x2c1740);
        dVar20 = param_1;
        if (dVar18 <= param_1) {
          dVar20 = dVar18;
        }
        dVar18 = dVar17 - dVar20;
        *pdVar5 = (dVar17 + dVar20) * *(double *)(iVar6 + 0x1400);
        if (dVar18 <= 0.0) {
          *unaff_s0 = 0.0;
          *(double *)pcVar15 = 0.0;
          return dVar18;
        }
        if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {
          dVar17 = (param_2 - dVar19) / dVar18;
          if (param_2 < dVar19) {
            dVar17 = dVar17 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e50);
          }
        }
        else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar14 + 0x2c1740) + 0x13f8)) {
          dVar17 = (dVar19 - param_1) / dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48)
          ;
        }
        else {
          dVar17 = (param_1 - param_2) / dVar18 +
                   *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x3cc8);
        }
        dVar20 = *(double *)(iVar6 + 0x1400);
        *unaff_s0 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c1748) + 0x7bc8);
        dVar19 = *pdVar5;
        dVar17 = dVar19 + dVar19;
        if (dVar20 < dVar19) {
          dVar17 = *(double *)(*(int *)(pcVar14 + 0x2c1748) + -0x2e48) - dVar17;
        }
        *(double *)pcVar15 = dVar18 / dVar17;
        return dVar18 / dVar17;
      }
      goto LAB_000e736c;
    }
  }
  pcVar12 = FUN_000e73a8;
  (*pcVar13)(*(int *)(pcVar14 + 0x2c1748) + 0x7824,*(int *)(pcVar14 + 0x2c1748) + 0x7790,0x457,
             iVar6 + 0x7a88);
  iVar6 = *(int *)(pcVar13 + 0x2c1540);
  if (pdStack_a0 == (double *)0x0) {
    iVar6 = iVar6 + 0x7a78;
    (**(code **)(pcVar13 + 0x2c2260))
              (*(int *)(pcVar13 + 0x2c1540) + 0x77d8,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x49e,
               iVar6);
LAB_000e7548:
    (**(code **)(pcVar13 + 0x2c2260))
              (*(int *)(pcVar13 + 0x2c1540) + 0x78a4,*(int *)(pcVar13 + 0x2c1540) + 0x7790,0x4a0,
               iVar6 + 0x7a78);
  }
  else if ((double *)pcVar16 != (double *)0x0) {
    if (pdStack_98 != (double *)0x0) {
      dVar18 = *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x1440);
      param_2 = param_2 * dVar18;
      dVar19 = (double)CONCAT44(pcVar14 + 0x2c9710,uStack_a4) * dVar18;
      param_1 = param_1 * dVar18;
      dVar18 = dVar19;
      if (dVar19 < param_2) {
        dVar18 = param_2;
      }
      dVar17 = param_1;
      if (param_1 <= dVar18) {
        dVar17 = dVar18;
      }
      dVar18 = param_2;
      if (dVar19 <= param_2) {
        dVar18 = dVar19;
      }
      dVar20 = param_1;
      if (dVar18 <= param_1) {
        dVar20 = dVar18;
      }
      dVar20 = dVar17 - dVar20;
      *pdStack_98 = dVar17;
      if (dVar20 <= 0.0) {
        *pdStack_a0 = 0.0;
        *(double *)pcVar16 = 0.0;
        return dVar19;
      }
      if (ABS(dVar17 - param_1) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {
        dVar18 = (param_2 - dVar19) / dVar20;
        if (param_2 < dVar19) {
          dVar19 = *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e50);
          dVar18 = dVar18 + dVar19;
        }
      }
      else if (ABS(dVar17 - param_2) < *(double *)(*(int *)(pcVar13 + 0x2c1538) + 0x13f8)) {
        dVar19 = (dVar19 - param_1) / dVar20;
        dVar18 = dVar19 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x2e48);
      }
      else {
        dVar18 = (param_1 - param_2) / dVar20 + *(double *)(*(int *)(pcVar13 + 0x2c1540) + -0x3cc8);
      }
      *pdStack_a0 = dVar18 * *(double *)(*(int *)(pcVar13 + 0x2c1540) + 0x7bc8);
      *(double *)pcVar16 = dVar20 / dVar17;
      return dVar19;
    }
    goto LAB_000e7548;
  }
  pcVar14 = *(code **)(pcVar13 + 0x2c2260);
  pcVar15 = FUN_000e7584;
  (*pcVar14)(*(int *)(pcVar13 + 0x2c1540) + 0x7824,*(int *)(pcVar13 + 0x2c1540) + 0x7790);
  dVar18 = (double)CONCAT44(pcVar13 + 0x2c9508,uStack_c4);
  iVar6 = *(int *)(pcVar14 + 0x2c1364);
  if (pdStack_c0 != (double *)0x0) {
    iVar4 = *(int *)(pcVar14 + 0x2c1364);
    if ((double *)pcVar12 != (double *)0x0) {
      if (pdStack_b8 != (double *)0x0) {
        dVar19 = dVar18;
        if (param_2 < dVar18) {
          dVar19 = param_2;
        }
        dVar17 = param_1;
        if (dVar19 <= param_1) {
          dVar17 = dVar19;
        }
        dVar19 = param_2;
        if (param_2 <= dVar18) {
          dVar19 = dVar18;
        }
        dVar20 = param_1;
        if (param_1 <= dVar19) {
          dVar20 = dVar19;
        }
        dVar19 = dVar20 - dVar17;
        dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1440);
        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1438);
        dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x13f8);
        *pdStack_b8 = dVar23 - dVar20 * dVar26;
        *(double *)pcVar12 = dVar17 * dVar26;
        if (ABS(dVar19) < dVar21) {
          dVar18 = *(double *)(*(int *)(pcVar14 + 0x2c135c) + 0x1a78);
          *pdStack_c0 = dVar18;
          return dVar18;
        }
        if (ABS(param_1 - dVar17) < dVar21) {
          param_1 = param_2 - dVar18;
          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3cd8);
        }
        else if (ABS(param_2 - dVar17) < dVar21) {
          param_1 = dVar18 - param_1;
          dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);
        }
        else {
          param_1 = param_1 - param_2;
          if (ABS(param_2 - dVar17) < dVar21) {
            dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x3a50);
          }
        }
        *pdStack_c0 = (dVar23 - param_1 / dVar19) /
                      *(double *)(*(int *)(pcVar14 + 0x2c1364) + -0x2e50);
        return dVar19;
      }
      iVar6 = iVar6 + 0x7790;
      iVar4 = *(int *)(pcVar14 + 0x2c1364) + 0x78e0;
      (**(code **)(pcVar14 + 0x2c2084))(iVar4,iVar6,0x4e6,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);
    }
    iVar6 = iVar6 + 0x7790;
    (**(code **)(pcVar14 + 0x2c2084))
              (iVar4 + 0x78c0,iVar6,0x4e5,*(int *)(pcVar14 + 0x2c1364) + 0x7a68);
  }
  pcVar12 = *(code **)(pcVar14 + 0x2c2084);
  (*pcVar12)(*(int *)(pcVar14 + 0x2c1364) + 0x77d8,iVar6 + 0x7790,0x4e4,
             *(int *)(pcVar14 + 0x2c1364) + 0x7a68);
  dVar19 = (double)(**(code **)(pcVar12 + 0x2c20c0))();
  dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1440);
  dVar19 = dVar19 * dVar23;
  dVar18 = param_2;
  dVar17 = (double)(**(code **)(pcVar12 + 0x2c20c0))(param_2);
  dVar17 = dVar17 * dVar23;
  dVar20 = (double)(**(code **)(pcVar12 + 0x2c20c0))(CONCAT44(pcVar14 + 0x2c932c,uStack_e4));
  dVar20 = dVar20 * dVar23;
  dVar23 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d38) +
           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d48) +
           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d40);
  dVar26 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d20) +
           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d30) +
           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d28);
  dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d08) +
           dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d18) +
           dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3d10);
  if (pdStack_e0 != (double *)0x0) {
    iVar6 = *(int *)(pcVar12 + 0x2c117c);
    if ((double *)pcVar15 != (double *)0x0) {
      if (pdStack_d8 != (double *)0x0) {
        iVar6 = *(int *)(pcVar12 + 0x2c117c);
        dVar18 = dVar23 / *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8);
        if (dVar18 <= *(double *)(iVar6 + -0x3d00)) {
          iVar4 = *(int *)(pcVar12 + 0x2c1174);
          iVar10 = *(int *)(pcVar12 + 0x2c117c);
          dVar18 = ((dVar23 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8)) /
                    *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e8) +
                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);
          if (*(double *)(iVar6 + -0x3d00) < dVar26) goto LAB_000e79e4;
LAB_000e78cc:
          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);
          dVar23 = dVar19 / dVar20;
          dVar17 = (dVar26 * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x3ce8) +
                   *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);
          iVar2 = *(int *)(pcVar12 + 0x2c117c);
          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {
            iVar2 = *(int *)(pcVar12 + 0x2c117c);
LAB_000e7904:
            dVar19 = ((dVar19 * *(double *)(iVar2 + -0x3ce8)) / dVar20 + *(double *)(iVar4 + 0x1ac8)
                     ) / *(double *)(iVar10 + -0x3cf0);
            goto LAB_000e7920;
          }
        }
        else {
          iVar4 = *(int *)(pcVar12 + 0x2c1174);
          iVar10 = *(int *)(pcVar12 + 0x2c117c);
          dVar18 = (double)(**(code **)(pcVar12 + 0x2c1fb0))
                                     (dVar18,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)
                                     );
          if (dVar26 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e78cc;
LAB_000e79e4:
          dVar17 = (double)(**(code **)(pcVar12 + 0x2c1fb0))
                                     (dVar26,*(undefined8 *)(*(int *)(pcVar12 + 0x2c117c) + -0x3cf8)
                                     );
          dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39e0);
          dVar23 = dVar19 / dVar20;
          iVar2 = *(int *)(pcVar12 + 0x2c117c);
          if (dVar23 <= *(double *)(iVar6 + -0x3d00)) goto LAB_000e7904;
          iVar2 = *(int *)(pcVar12 + 0x2c117c);
        }
        dVar19 = (double)(**(code **)(pcVar12 + 0x2c1fb0))(dVar23,*(undefined8 *)(iVar2 + -0x3cf8));
LAB_000e7920:
        dVar23 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x5ae8);
        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1400);
        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f8);
        dVar19 = ((dVar17 - dVar19) * *(double *)(*(int *)(pcVar12 + 0x2c117c) + -0x39f0)) / dVar23
                 + dVar20;
        *pdStack_e0 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /
                      *(double *)(*(int *)(pcVar12 + 0x2c1174) + 0x1a70);
        *(double *)pcVar15 = ((dVar18 - dVar17) * dVar26) / dVar23 + dVar20;
        *pdStack_d8 = dVar19;
        return dVar19;
      }
      (*(code *)(*(int *)(pcVar12 + 0x2c11d4) + 0x39c0))();
    }
    (**(code **)(pcVar12 + 0x2c1e9c))
              (*(int *)(pcVar12 + 0x2c117c) + 31000,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa2,
               iVar6 + 0x7a48);
  }
  pcVar14 = *(code **)(pcVar12 + 0x2c1e9c);
  (*pcVar14)(*(int *)(pcVar12 + 0x2c117c) + 0x7900,*(int *)(pcVar12 + 0x2c117c) + -0x59e0,0xa1,
             *(int *)(pcVar12 + 0x2c117c) + 0x7a48);
  pdStack_140 = (double *)((ulonglong)param_2 >> 0x20);
  pdStack_13c = SUB84(param_2,0);
  if (pdStack_140 == (double *)0x0) goto LAB_000e7e18;
  iVar6 = *(int *)(pcVar14 + 0x2c0e60);
  if (pdStack_13c != (double *)0x0) {
    if (pdStack_138 != (double *)0x0) {
      iVar6 = *(int *)(pcVar14 + 0x2c0e60);
      dVar19 = (double)(**(code **)(pcVar14 + 0x2c1da4))();
      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1440);
      dVar19 = dVar19 * dVar20;
      dVar18 = (double)(**(code **)(pcVar14 + 0x2c1da4))(dVar18);
      dVar18 = dVar18 * dVar20;
      dVar17 = (double)(**(code **)(pcVar14 + 0x2c1da4))(CONCAT44(pcVar12 + 0x2c9144,uStack_144));
      dVar17 = dVar17 * dVar20;
      dVar20 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d38) +
               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d48) +
               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d40);
      dVar23 = dVar20 / *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8);
      dVar26 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d20) +
               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d30) +
               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d28);
      dVar18 = dVar17 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d08) +
               dVar19 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d18) +
               dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3d10);
      if (dVar23 <= *(double *)(iVar6 + -0x3d00)) {
        iVar4 = *(int *)(pcVar14 + 0x2c0e58);
        iVar10 = *(int *)(pcVar14 + 0x2c0e60);
        dVar19 = ((dVar20 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8)) /
                  *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e8) + *(double *)(iVar4 + 0x1ac8))
                 / *(double *)(iVar10 + -0x3cf0);
      }
      else {
        iVar4 = *(int *)(pcVar14 + 0x2c0e58);
        iVar10 = *(int *)(pcVar14 + 0x2c0e60);
        dVar19 = (double)(**(code **)(pcVar14 + 0x2c1c94))
                                   (dVar23,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));
      }
      if (dVar26 <= *(double *)(iVar6 + -0x3d00)) {
        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);
        dVar20 = dVar18 / dVar23;
        dVar17 = (dVar26 * *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3ce8) +
                 *(double *)(iVar4 + 0x1ac8)) / *(double *)(iVar10 + -0x3cf0);
        iVar2 = *(int *)(pcVar14 + 0x2c0e60);
        if (*(double *)(iVar6 + -0x3d00) < dVar20) goto LAB_000e7da0;
        iVar2 = *(int *)(pcVar14 + 0x2c0e60);
      }
      else {
        dVar17 = (double)(**(code **)(pcVar14 + 0x2c1c94))
                                   (dVar26,*(undefined8 *)(*(int *)(pcVar14 + 0x2c0e60) + -0x3cf8));
        dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39e0);
        dVar20 = dVar18 / dVar23;
        iVar2 = *(int *)(pcVar14 + 0x2c0e60);
        if (*(double *)(iVar6 + -0x3d00) < dVar20) {
          iVar2 = *(int *)(pcVar14 + 0x2c0e60);
LAB_000e7da0:
          dVar18 = (double)(**(code **)(pcVar14 + 0x2c1c94))
                                     (dVar20,*(undefined8 *)(iVar2 + -0x3cf8));
          goto LAB_000e7c44;
        }
      }
      dVar18 = ((dVar18 * *(double *)(iVar2 + -0x3ce8)) / dVar23 + *(double *)(iVar4 + 0x1ac8)) /
               *(double *)(iVar10 + -0x3cf0);
LAB_000e7c44:
      pcVar12 = *(code **)(pcVar14 + 0x2c1c90);
      dVar26 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5ae8);
      dVar21 = *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1400);
      dVar20 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f0);
      dVar23 = *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x39f8);
      *pdStack_140 = (dVar17 * *(double *)(iVar10 + -0x3cf0) - *(double *)(iVar4 + 0x1ac8)) /
                     *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1a70);
      dVar23 = ((((dVar19 - dVar17) * dVar23) / dVar26 + dVar21) - dVar21) * dVar26;
      dVar19 = ((((dVar17 - dVar18) * dVar20) / dVar26 + dVar21) - dVar21) * dVar26;
      dVar18 = (double)(*pcVar12)(dVar23,dVar19);
      pcVar12 = *(code **)(pcVar14 + 0x2c1580);
      *pdStack_13c = dVar18 / dVar26 + dVar21;
      dVar18 = (double)(*pcVar12)(dVar19,dVar23);
      dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab0)) /
               *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1ab8)) /
               *(double *)(*(int *)(pcVar14 + 0x2c0e60) + -0x5aa0);
      if (dVar18 < 0.0) {
        dVar18 = dVar18 + *(double *)(*(int *)(pcVar14 + 0x2c0e58) + 0x1438);
      }
      *pdStack_138 = dVar18;
      return dVar18;
    }
    iVar6 = iVar6 + 0x7a34;
    (**(code **)(pcVar14 + 0x2c1b80))
              (*(int *)(pcVar14 + 0x2c0e60) + 0x77d8,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x556,
               iVar6);
  }
  (**(code **)(pcVar14 + 0x2c1b80))
            (*(int *)(pcVar14 + 0x2c0e60) + 0x77f0,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x555,
             iVar6 + 0x7a34);
LAB_000e7e18:
  pcVar12 = *(code **)(pcVar14 + 0x2c1b80);
  (*pcVar12)(*(int *)(pcVar14 + 0x2c0e60) + 0x780c,*(int *)(pcVar14 + 0x2c0e60) + 0x7790,0x554,
             *(int *)(pcVar14 + 0x2c0e60) + 0x7a34);
  if (pdStack_1b0 != (double *)0x0) {
    iVar6 = *(int *)(pcVar12 + 0x2c0aac);
    if (pdStack_1ac != (double *)0x0) {
      if (pdStack_1a8 != (double *)0x0) {
        dVar19 = (double)(**(code **)(pcVar12 + 0x2c19f0))();
        dVar20 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1440);
        dVar19 = dVar19 * dVar20;
        dVar18 = (double)(**(code **)(pcVar12 + 0x2c19f0))(dVar18);
        dVar18 = dVar18 * dVar20;
        dVar17 = (double)(**(code **)(pcVar12 + 0x2c19f0))(CONCAT44(pcVar14 + 0x2c8e28,uStack_1b4));
        dVar17 = dVar17 * dVar20;
        dVar20 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d20) +
                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d30) +
                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d28);
        dVar23 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d38) +
                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d48) +
                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d40);
        dVar18 = dVar17 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d08) +
                 dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d18) +
                 dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d10);
        if (dVar20 <= *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3d00)) {
          dVar19 = dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce8);
        }
        else {
          dVar19 = (double)(**(code **)(pcVar12 + 0x2c18e0))
                                     (dVar20,*(undefined8 *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf8)
                                     );
          dVar19 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cf0) -
                   *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ac8);
        }
        dVar18 = dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd8) +
                 dVar20 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ce0) + dVar23;
        if (0.0 <= dVar18) {
          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);
          dStack_208 = dVar18;
        }
        else {
          dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a78);
          dStack_208 = -dVar18;
        }
        if (dStack_208 < *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8)) {
          dVar18 = dVar17 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x13f8);
        }
        else {
          dVar18 = *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438) / dVar18;
        }
        pcVar14 = *(code **)(pcVar12 + 0x2c18dc);
        dVar21 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb8);
        dVar17 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c98);
        dVar22 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cb0);
        dVar26 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3c90);
        dVar29 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc8);
        dVar27 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca8);
        dVar25 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cc0);
        dVar28 = *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3ca0);
        dVar24 = dVar19 * *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x3cd0);
        *pdStack_1b0 = dVar19 / *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1a70);
        dVar21 = (((dVar18 * dVar29 * dVar23 - dVar25) * dVar24 + dVar21) / dVar22) * dVar22 -
                 dVar21;
        dVar17 = (((dVar18 * dVar27 * dVar20 - dVar28) * dVar24 + dVar17) / dVar26) * dVar26 -
                 dVar17;
        dVar18 = (double)(*pcVar14)(dVar21,dVar17);
        pcVar14 = *(code **)(pcVar12 + 0x2c11cc);
        *pdStack_1ac = dVar18 / *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5ae8) +
                       *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1400);
        dVar18 = (double)(*pcVar14)(dVar17,dVar21);
        dVar18 = ((dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab0)) /
                 *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1ab8)) /
                 *(double *)(*(int *)(pcVar12 + 0x2c0aac) + -0x5aa0);
        if (dVar18 < 0.0) {
          dVar18 = dVar18 + *(double *)(*(int *)(pcVar12 + 0x2c0aa4) + 0x1438);
        }
        *pdStack_1a8 = dVar18;
        return dVar18;
      }
      iVar6 = iVar6 + 0x7a20;
      (**(code **)(pcVar12 + 0x2c17cc))
                (*(int *)(pcVar12 + 0x2c0aac) + 0x77d8,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x593,
                 iVar6);
    }
    (**(code **)(pcVar12 + 0x2c17cc))
              (*(int *)(pcVar12 + 0x2c0aac) + 0x77f0,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x592,
               iVar6 + 0x7a20);
  }
  pcVar14 = *(code **)(pcVar12 + 0x2c17cc);
  pdVar5 = (double *)(*(int *)(pcVar12 + 0x2c0aac) + 0x780c);
  (*pcVar14)(pdVar5,*(int *)(pcVar12 + 0x2c0aac) + 0x7790,0x591,
             *(int *)(pcVar12 + 0x2c0aac) + 0x7a20);
  if (pdVar5 != (double *)0x0) {
    dVar18 = *pdVar5 * pdVar5[3] - pdVar5[1] * pdVar5[2];
    dVar19 = SQRT(ABS(dVar18));
    if (ABS(dVar18) < 0.0) {
      (**(code **)(pcVar14 + 0x2c12c4))(ABS(dVar18));
    }
    return dVar19;
  }
  uVar8 = 0x5b5;
  pcVar12 = *(code **)(pcVar14 + 0x2c144c);
  fVar7 = (float)(*(int *)(pcVar14 + 0x2c072c) + 0x7790);
  (*pcVar12)(*(int *)(pcVar14 + 0x2c072c) + 0x7930,fVar7,0x5b5,*(int *)(pcVar14 + 0x2c072c) + 0x7a10
            );
  dVar18 = (double)CONCAT44(pcVar14 + 0x2c86f4,uStack_23c);
  dVar19 = (double)(**(code **)(pcVar12 + 0x2c0bf8))();
  if (uVar8 < 8) {
                    /* WARNING: Could not recover jumptable at 0x000e82f4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
    dVar18 = (double)(*(pcVar12 +
                       *(int *)(*(int *)(pcVar12 + 0x2c0674) + 0x79c0 + uVar8 * 4) + 0x2c863c))();
    return dVar18;
  }
  return dVar18 * *(double *)(*(int *)(pcVar12 + 0x2c0674) + 0x7bd0) *
         *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1a58) *
         (dVar19 - *(double *)(*(int *)(pcVar12 + 0x2c066c) + 0x1400)) + (double)fVar7;
}

