
/* WARNING: Enum "GravityType": Some values do not have unique names */
/* WARNING: Enum "DisposeType": Some values do not have unique names */
/* WARNING: Enum "ChannelType": Some values do not have unique names */
/* WARNING: Enum "PixelChannel": Some values do not have unique names */
/* WARNING: Enum "ExceptionType": Some values do not have unique names */
/* WARNING: Enum "ComplianceType": Some values do not have unique names */

void DrawSetClipUnits(DrawingWand *wand,ClipPathUnits clip_units)

{
  PixelInfo *pPVar1;
  int iVar2;
  DrawInfo *pDVar3;
  undefined4 uVar4;
  ClassType *pCVar5;
  ClassType *pCVar6;
  Image *pIVar7;
  PixelInfo *pPVar8;
  DrawingWand *pDVar9;
  char *pcVar10;
  DrawInfo **ppDVar11;
  DrawingWand *pDVar12;
  DrawingWand *pDVar13;
  ExceptionInfo *pEVar14;
  undefined *puVar15;
  AffineMatrix *pAVar16;
  ClassType CVar17;
  size_t sVar18;
  int iVar19;
  char *format;
  ClassType CVar20;
  MagickBooleanType MVar21;
  uint uVar22;
  int iVar23;
  int iVar24;
  ClassType CVar25;
  DrawingWand *unaff_s0;
  undefined *unaff_s1;
  int *piVar26;
  int *piVar27;
  int *piVar28;
  AffineMatrix *unaff_s3;
  undefined *puVar29;
  code *pcVar30;
  undefined *puVar31;
  code *pcVar32;
  code *pcVar33;
  code *pcVar34;
  double dVar35;
  undefined4 uVar37;
  double dVar36;
  float fVar38;
  undefined8 uVar39;
  undefined1 auStack_325c [4096];
  undefined1 auStack_225c [4096];
  DrawingWand *pDStack_125c;
  DrawingWand *pDStack_1254;
  int *piStack_1250;
  int *piStack_124c;
  AffineMatrix *pAStack_1248;
  code *pcStack_1244;
  int iStack_1230;
  char *pcStack_122c;
  code *pcStack_1228;
  DrawingWand *pDStack_1220;
  code *pcStack_121c;
  undefined8 uStack_1218;
  undefined8 uStack_1200;
  code *pcStack_11f0;
  int aiStack_11e4 [1024];
  DrawingWand *pDStack_1e4;
  DrawingWand *pDStack_1e0;
  int *piStack_1dc;
  DrawingWand *pDStack_1d8;
  code *pcStack_1d4;
  double dStack_1d0;
  int iStack_1b8;
  char *pcStack_1b4;
  code *pcStack_1b0;
  DrawingWand *pDStack_1a8;
  code *pcStack_1a4;
  int iStack_188;
  char *pcStack_184;
  code *pcStack_180;
  uint uStack_178;
  char acStack_174 [4];
  size_t asStack_170 [10];
  double dStack_148;
  double dStack_140;
  double dStack_138;
  double dStack_130;
  uint uStack_128;
  char acStack_124 [12];
  ClassType aCStack_118 [23];
  int iStack_bc;
  DrawingWand *pDStack_b4;
  undefined *puStack_b0;
  undefined *puStack_ac;
  AffineMatrix *pAStack_a8;
  code *pcStack_a4;
  int iStack_90;
  undefined *puStack_8c;
  undefined *puStack_88;
  DrawingWand *pDStack_80;
  undefined *puStack_7c;
  undefined *puStack_78;
  code *pcStack_74;
  undefined *local_60;
  char *local_5c;
  AffineMatrix affine;
  
  pDVar13 = (DrawingWand *)PTR___stack_chk_guard_0014f4cc;
  iVar2 = *(int *)PTR___stack_chk_guard_0014f4cc;
  if (wand == (DrawingWand *)0x0) {
    (*(code *)PTR___assert_fail_0014f720)
              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,
               PTR_s_t_char____NULL_0014f03c + 0xa1c);
    wand = unaff_s0;
LAB_0006bfa4:
    (*(code *)PTR___stack_chk_fail_0014f38c)();
  }
  else if (wand->signature == 0xabacadab) {
    if (wand->debug != MagickFalse) {
      local_5c = wand->name;
      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;
      (*(code *)PTR_LogMagickEvent_0014f488)
                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,
                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);
    }
    pDVar3 = wand->graphic_context[wand->index];
    if (wand->filter_off == MagickFalse) {
      if (pDVar3->clip_units != clip_units) {
        pDVar3->clip_units = clip_units;
        goto joined_r0x0006bed8;
      }
    }
    else {
      pDVar3->clip_units = clip_units;
joined_r0x0006bed8:
      if (clip_units == ObjectBoundingBox) {
        unaff_s3 = &affine;
        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);
        pDVar3 = wand->graphic_context[wand->index];
        affine.sx = (pDVar3->bounds).x2;
        affine.sy = (pDVar3->bounds).y2;
        affine.tx = (pDVar3->bounds).x1;
        affine.ty = (pDVar3->bounds).y1;
        AdjustAffine(wand,unaff_s3);
      }
      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);
      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);
    }
    unaff_s1 = (undefined *)clip_units;
    if (iVar2 == *(int *)pDVar13) {
      return;
    }
    goto LAB_0006bfa4;
  }
  puVar15 = PTR_s_t_char____NULL_0014f03c + -0x970;
  pcVar32 = DrawSetDensity;
  pDVar9 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c);
  puVar29 = PTR___assert_fail_0014f720;
  (*(code *)PTR___assert_fail_0014f720)(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)
  ;
  puVar31 = puVar29 + 0xeb02c;
  puStack_78 = (undefined *)pDVar13;
  puStack_88 = puVar31;
  pDStack_80 = wand;
  puStack_7c = unaff_s1;
  pcStack_74 = pcVar32;
  if (pDVar9 == (DrawingWand *)0x0) {
    iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;
    (**(code **)(puVar29 + 0xe374c))
              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,
               iVar2);
LAB_0006c128:
    iVar2 = iVar2 + 0x9f8;
    (**(code **)(puVar31 + -0x78e0))
              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);
  }
  else {
    if (pDVar9->debug != MagickFalse) {
      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;
      puStack_8c = puVar15;
      (**(code **)(puVar29 + 0xe34b4))
                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,
                 0x1295);
    }
    iVar2 = *(int *)(puStack_88 + -0x7fc4);
    wand = pDVar9;
    unaff_s1 = puVar15;
    puVar31 = puStack_88;
    if (pDVar9->signature == 0xabacadab) {
      if (puVar15 != (undefined *)0x0) {
        pDVar3 = pDVar9->graphic_context[pDVar9->index];
        pcVar10 = pDVar3->density;
        pcVar32 = *(code **)(puStack_88 + -0x79d0);
        if (pcVar10 != (char *)0x0) {
          if ((pDVar9->filter_off == MagickFalse) &&
             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {
            return;
          }
          pcVar32 = *(code **)(puStack_88 + -0x79d0);
        }
        (*pcVar32)(&pDVar3->density,puVar15);
        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);
        return;
      }
      goto LAB_0006c128;
    }
  }
  pcVar30 = *(code **)(puVar31 + -0x78e0);
  pAVar16 = (AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970);
  pcVar33 = DrawSetFillColor;
  pDVar9 = (DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c);
  (*pcVar30)(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8);
  pcVar32 = pcVar30 + 0xeae9c;
  piVar26 = *(int **)(pcVar30 + 0xe3368);
  puStack_ac = (undefined *)pDVar13;
  iStack_bc = *piVar26;
  pcStack_180 = pcVar32;
  pDStack_b4 = wand;
  puStack_b0 = unaff_s1;
  pAStack_a8 = unaff_s3;
  pcStack_a4 = pcVar33;
  if (pDVar9 != (DrawingWand *)0x0) {
    if (pDVar9->signature == 0xabacadab) {
      if (pDVar9->debug != MagickFalse) {
        pcStack_184 = pDVar9->name;
        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;
        (**(code **)(pcVar30 + 0xe3324))
                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,
                   0x12c4);
      }
      pcVar32 = pcStack_180;
      if (pAVar16 == (AffineMatrix *)0x0) {
        (**(code **)(pcStack_180 + -0x78e0))
                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970
                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);
        unaff_s3 = pAVar16;
        goto LAB_0006c624;
      }
      wand = (DrawingWand *)asStack_170;
      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);
      pDVar13 = wand;
      pCVar6 = aCStack_118;
      do {
        pCVar5 = pCVar6;
        pDVar12 = pDVar13;
        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);
        CVar25 = *(ClassType *)pDVar12->name;
        CVar20 = *(ClassType *)(pDVar12->name + 4);
        CVar17 = *(ClassType *)(pDVar12->name + 8);
        *pCVar5 = pDVar12->id;
        pCVar5[1] = CVar25;
        pCVar5[2] = CVar20;
        pCVar5[3] = CVar17;
        pCVar6 = pCVar5 + 4;
      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));
      sVar18 = pDVar9->index;
      ppDVar11 = pDVar9->graphic_context;
      CVar17 = *(ClassType *)(pDVar12->name + 0x10);
      MVar21 = pDVar9->filter_off;
      pCVar5[4] = pDVar13->id;
      pCVar5[5] = CVar17;
      pDVar3 = ppDVar11[sVar18];
      if (MVar21 == MagickFalse) {
        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {
          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);
          uVar22 = *(uint *)&(pDVar3->fill).alpha;
          if (asStack_170[2] == 0) {
            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);
            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);
          }
LAB_0006c260:
          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);
          uVar37 = SUB84(dVar35,0);
          if (dVar35 < 0.0) {
            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;
            dVar35 = -dVar35;
            acStack_174 = (char  [4])uVar37;
          }
          iVar2 = *(int *)(pcStack_180 + -0x7fc4);
          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {
            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {
              uVar22 = uVar22 ^ 0x80000000;
              uStack_178 = uVar22;
              acStack_174 = (char  [4])uVar4;
            }
            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {
              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {
                uStack_128 = uStack_128 ^ 0x80000000;
                uStack_178 = uStack_128;
                acStack_174 = (char  [4])acStack_124._0_4_;
              }
              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {
                dVar35 = (pDVar3->fill).red;
                goto LAB_0006c398;
              }
            }
            goto LAB_0006c360;
          }
          goto LAB_0006c2d0;
        }
        if (asStack_170[2] != 0) {
          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);
          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);
          goto LAB_0006c260;
        }
        iVar2 = *(int *)(pcStack_180 + -0x7fc4);
        dVar35 = (pDVar3->fill).red;
LAB_0006c398:
        dVar35 = dVar35 - dStack_148;
        uVar4 = SUB84(dVar35,0);
        if (dVar35 < 0.0) {
          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;
          dVar35 = -dVar35;
          acStack_174 = (char  [4])uVar4;
        }
        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;
        dStack_140 = (pDVar3->fill).green - dStack_140;
        uVar4 = SUB84(dStack_140,0);
        if (dStack_140 < 0.0) {
          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;
          dStack_140 = -dStack_140;
          acStack_174 = (char  [4])uVar4;
        }
        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;
        dStack_138 = (pDVar3->fill).blue - dStack_138;
        uVar4 = SUB84(dStack_138,0);
        if (dStack_138 < 0.0) {
          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;
          dStack_138 = -dStack_138;
          acStack_174 = (char  [4])uVar4;
        }
        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;
        if ((pDVar3->fill).colorspace == CMYKColorspace) {
          dStack_130 = (pDVar3->fill).black - dStack_130;
          uVar4 = SUB84(dStack_130,0);
          if (dStack_130 < 0.0) {
            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;
            dStack_130 = -dStack_130;
            acStack_174 = (char  [4])uVar4;
          }
          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;
        }
      }
      else {
LAB_0006c2d0:
        pCVar6 = aCStack_118;
        pPVar1 = &pDVar3->fill;
        do {
          pPVar8 = pPVar1;
          pCVar5 = pCVar6;
          pCVar6 = pCVar5 + 4;
          CVar25 = pCVar5[1];
          CVar20 = pCVar5[2];
          CVar17 = pCVar5[3];
          pPVar8->storage_class = *pCVar5;
          pPVar8->colorspace = CVar25;
          pPVar8->alpha_trait = CVar20;
          *(ClassType *)&pPVar8->field_0xc = CVar17;
          pPVar1 = (PixelInfo *)&pPVar8->fuzz;
        } while (pCVar6 != aCStack_118 + 0x14);
        iVar2 = *(int *)(pcStack_180 + -0x7fc4);
        CVar17 = pCVar5[5];
        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);
        *(ClassType *)&pPVar8->fuzz = *pCVar6;
        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;
        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));
        MVGAppendColor(pDVar9,(PixelInfo *)wand);
        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));
      }
LAB_0006c360:
      pcVar32 = pcStack_180;
      if (iStack_bc == *piVar26) {
        return;
      }
    }
    else {
LAB_0006c624:
      pAVar16 = unaff_s3;
      (**(code **)(pcVar32 + -0x78e0))
                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,
                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);
    }
    (**(code **)(pcVar32 + -0x7c74))();
    pDVar13 = pDVar9;
    unaff_s3 = pAVar16;
  }
  uVar4 = 0x12c1;
  pcVar30 = *(code **)(pcVar32 + -0x78e0);
  iVar2 = *(int *)(pcVar32 + -0x7fc4) + 0x9d4;
  pcVar33 = DrawSetFillOpacity;
  pDVar9 = (DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954);
  (*pcVar30)(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970);
  pcStack_1b0 = pcVar30 + 0xea988;
  dVar35 = (double)CONCAT44(uVar4,iVar2);
  pDStack_1e0 = wand;
  pDStack_1a8 = wand;
  pcStack_1a4 = pcVar33;
  if (pDVar9 != (DrawingWand *)0x0) {
    if (pDVar9->signature == 0xabacadab) {
      if (pDVar9->debug != MagickFalse) {
        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;
        pcStack_1b4 = pDVar9->name;
        (**(code **)(pcVar30 + 0xe2e10))
                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,
                   0x12f4);
      }
      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));
      if ((pDVar9->filter_off == MagickFalse) &&
         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {
        return;
      }
      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);
      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;
      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));
      return;
    }
    (**(code **)(pcVar30 + 0xe30a8))
              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,
               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);
    pDStack_1e0 = pDVar9;
  }
  uVar4 = 0x12f1;
  pcVar33 = *(code **)(pcVar30 + 0xe30a8);
  iVar2 = *(int *)(pcVar30 + 0xe29c4) + 0x9ac;
  pcVar34 = DrawSetFontResolution;
  pDVar12 = (DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954);
  (*pcVar33)(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970);
  pcVar32 = pcVar33 + 0xea838;
  piVar27 = *(int **)(pcVar33 + 0xe2d04);
  pDStack_1e4 = (DrawingWand *)*piVar27;
  uVar39 = CONCAT44(uVar4,iVar2);
  pDVar9 = pDStack_1e0;
  pcStack_11f0 = pcVar32;
  piStack_1dc = piVar26;
  pDStack_1d8 = pDVar13;
  pcStack_1d4 = pcVar34;
  dStack_1d0 = dVar35;
  if (pDVar12 == (DrawingWand *)0x0) {
LAB_0006c904:
    iVar23 = 0x131f;
    iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;
    pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);
    (**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);
  }
  else {
    pDVar9 = pDVar12;
    if (pDVar12->signature != 0xabacadab) {
      (**(code **)(pcVar33 + 0xe2f58))
                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,
                 *(int *)(pcVar33 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (pDVar12->debug != MagickFalse) {
      iVar2 = 0x1322;
      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);
      (**(code **)(pcVar33 + 0xe2cc0))
                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);
    }
    piVar26 = aiStack_11e4;
    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;
    uStack_1200 = uVar39;
    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);
    (**(code **)(pcStack_11f0 + -0x79d0))
              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);
    pDVar13 = pDStack_1e4;
    pcVar32 = pcStack_11f0;
    if (pDStack_1e4 == (DrawingWand *)*piVar27) {
      return;
    }
  }
  pcVar32 = *(code **)(pcVar32 + -0x7c74);
  pcVar30 = DrawSetOpacity;
  (*pcVar32)();
  pcStack_1228 = pcVar32 + 0xea6cc;
  dVar35 = (double)CONCAT44(iVar23,iVar2);
  pDStack_1254 = pDVar9;
  pDStack_1220 = pDVar9;
  pcStack_121c = pcVar30;
  uStack_1218 = uVar39;
  if (pDVar13 != (DrawingWand *)0x0) {
    if (pDVar13->signature == 0xabacadab) {
      if (pDVar13->debug != MagickFalse) {
        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;
        pcStack_122c = pDVar13->name;
        (**(code **)(pcVar32 + 0xe2b54))
                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,
                   0x134a);
      }
      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));
      if ((pDVar13->filter_off == MagickFalse) &&
         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {
        return;
      }
      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);
      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;
      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));
      return;
    }
    (**(code **)(pcVar32 + 0xe2dec))
              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,
               *(int *)(pcVar32 + 0xe2708) + 0x958);
    pDStack_1254 = pDVar13;
  }
  pcVar30 = *(code **)(pcVar32 + 0xe2dec);
  pcVar10 = (char *)(*(int *)(pcVar32 + 0xe2708) + -0x970);
  pcVar33 = DrawSetFillPatternURL;
  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954);
  (*pcVar30)(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958);
  piVar28 = *(int **)(pcVar30 + 0xe2a4c);
  pDStack_125c = (DrawingWand *)*piVar28;
  piStack_1250 = piVar26;
  piStack_124c = piVar27;
  pAStack_1248 = unaff_s3;
  pcStack_1244 = pcVar33;
  if (pDVar13 != (DrawingWand *)0x0) {
    if (pDVar13->signature == 0xabacadab) {
      if (pDVar13->debug == MagickFalse) {
        pIVar7 = pDVar13->image;
      }
      else {
        (**(code **)(pcVar30 + 0xe2a08))
                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);
        pIVar7 = pDVar13->image;
      }
      if (pIVar7 == (Image *)0x0) {
        (**(code **)(pcVar30 + 0xe283c))
                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,
                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,
                   pDVar13->name);
      }
      if (pcVar10 != (char *)0x0) {
        iVar2 = *(int *)(pcVar30 + 0xe25ac);
        if (*pcVar10 == '#') {
          (**(code **)(pcVar30 + 0xe2700))
                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);
          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);
          if (iVar2 == 0) {
            iVar2 = *(int *)(pcVar30 + 0xe25ac);
            uVar4 = 0x1386;
            pEVar14 = pDVar13->exception;
            iVar24 = *(int *)(pcVar30 + 0xe25bc);
            iVar19 = *(int *)(pcVar30 + 0xe25bc);
            pcVar32 = *(code **)(pcVar30 + 0xe283c);
            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(code **)(pcVar30 + 0xe2700))
                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);
          pDVar3 = pDVar13->graphic_context[pDVar13->index];
          if ((pDVar3->fill).alpha != 0.0) {
            (pDVar3->fill).alpha = (double)pDVar3->alpha;
          }
          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);
          MVGPrintf(pDVar13,format,auStack_225c);
        }
        else {
          uVar4 = 0x1380;
          pEVar14 = pDVar13->exception;
          iVar24 = *(int *)(pcVar30 + 0xe25bc);
          iVar19 = *(int *)(pcVar30 + 0xe25bc);
          pcVar32 = *(code **)(pcVar30 + 0xe283c);
          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;
LAB_0006cb28:
          format = (char *)(iVar19 - 0x970);
          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);
        }
        pDVar13 = pDStack_125c;
        if (pDStack_125c == (DrawingWand *)*piVar28) {
          return;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(code **)(pcVar30 + 0xe2ca0))
                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(pcVar30 + 0xe25bc) + 0x930);
    }
    (**(code **)(pcVar30 + 0xe2ca0))
              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,
               *(int *)(pcVar30 + 0xe25bc) + 0x930);
  }
  format = (char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970);
  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954);
  (**(code **)(pcVar30 + 0xe2ca0))(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930);
LAB_0006cd54:
  pcVar32 = *(code **)(pcVar30 + 0xe290c);
  (*pcVar32)();
  if (pDVar13 != (DrawingWand *)0x0) {
    if (pDVar13->signature == 0xabacadab) {
      if (pDVar13->debug != MagickFalse) {
        (**(code **)(pcVar32 + 0xe2728))
                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);
      }
      if ((pDVar13->filter_off == MagickFalse) &&
         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {
        return;
      }
      pcVar30 = *(code **)(pcVar32 + 0xe2408);
      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;
      uVar4 = (*pcVar30)(0x1a,format);
      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);
      return;
    }
    (**(code **)(pcVar32 + 0xe29c0))
              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,
               *(int *)(pcVar32 + 0xe22dc) + 0x908);
  }
  pcVar30 = *(code **)(pcVar32 + 0xe29c0);
  iVar2 = *(int *)(pcVar32 + 0xe22dc) + -0x970;
  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954);
  (*pcVar30)(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908);
  if (pDVar13 != (DrawingWand *)0x0) {
    if (pDVar13->signature == 0xabacadab) {
      if (pDVar13->debug != MagickFalse) {
        (**(code **)(pcVar30 + 0xe25e4))
                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);
      }
      if (iVar2 != 0) {
        pDVar3 = pDVar13->graphic_context[pDVar13->index];
        if (pDVar13->filter_off == MagickFalse) {
          pcVar10 = pDVar3->font;
          if ((pcVar10 != (char *)0x0) &&
             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {
            return;
          }
        }
        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);
        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);
        return;
      }
      (**(code **)(pcVar30 + 0xe287c))
                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,
                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);
    }
    (**(code **)(pcVar30 + 0xe287c))
              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,
               *(int *)(pcVar30 + 0xe2198) + 0x8ec);
  }
  pcVar32 = *(code **)(pcVar30 + 0xe287c);
  iVar2 = *(int *)(pcVar30 + 0xe2198) + -0x970;
  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954);
  (*pcVar32)(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec);
  if (pDVar13 == (DrawingWand *)0x0) {
    (**(code **)(pcVar32 + 0xe2704))
              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,
               *(int *)(pcVar32 + 0xe2020) + 0x8cc);
    return;
  }
  if (pDVar13->signature == 0xabacadab) {
    if (pDVar13->debug != MagickFalse) {
      (**(code **)(pcVar32 + 0xe246c))
                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);
    }
    if (iVar2 != 0) {
      pDVar3 = pDVar13->graphic_context[pDVar13->index];
      if (pDVar13->filter_off == MagickFalse) {
        pcVar10 = pDVar3->family;
        if ((pcVar10 != (char *)0x0) &&
           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {
          return;
        }
      }
      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);
      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);
      return;
    }
    (**(code **)(pcVar32 + 0xe2704))
              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,
               *(int *)(pcVar32 + 0xe2020) + 0x8cc);
    return;
  }
  (**(code **)(pcVar32 + 0xe2704))
            (*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,
             *(int *)(pcVar32 + 0xe2020) + 0x8cc);
  return;
}



int DrawSetClipUnits(int *param_1,undefined *param_2)

{
  int iVar1;
  undefined4 uVar2;
  int *piVar3;
  int *piVar4;
  int *piVar5;
  undefined *puVar6;
  int *piVar7;
  int *piVar8;
  undefined *puVar9;
  undefined8 *puVar10;
  char *pcVar11;
  uint uVar12;
  int iVar13;
  int iVar14;
  undefined4 uVar15;
  int *unaff_s0;
  undefined *unaff_s1;
  int iVar16;
  undefined *puVar17;
  undefined4 *puVar18;
  undefined8 *unaff_s3;
  code *pcVar19;
  undefined *puVar20;
  code *pcVar21;
  code *pcVar22;
  code *pcVar23;
  double dVar24;
  double dVar25;
  float fVar26;
  undefined8 uVar27;
  undefined1 auStack_325c [4096];
  undefined1 auStack_225c [4096];
  int iStack_125c;
  int *piStack_1254;
  int *piStack_1250;
  undefined4 *puStack_124c;
  undefined8 *puStack_1248;
  code *pcStack_1244;
  int iStack_1230;
  int *piStack_122c;
  code *pcStack_1228;
  int *piStack_1220;
  code *pcStack_121c;
  undefined8 uStack_1218;
  undefined8 uStack_1200;
  code *pcStack_11f0;
  int aiStack_11e4 [1024];
  int *piStack_1e4;
  int *piStack_1e0;
  int *piStack_1dc;
  undefined *puStack_1d8;
  code *pcStack_1d4;
  double dStack_1d0;
  int iStack_1b8;
  int *piStack_1b4;
  code *pcStack_1b0;
  int *piStack_1a8;
  code *pcStack_1a4;
  int iStack_188;
  undefined *puStack_184;
  code *pcStack_180;
  uint uStack_178;
  undefined4 uStack_174;
  int aiStack_170 [10];
  double dStack_148;
  double dStack_140;
  double dStack_138;
  double dStack_130;
  uint uStack_128;
  undefined4 uStack_124;
  int aiStack_120 [2];
  int aiStack_118 [23];
  int iStack_bc;
  int *piStack_b4;
  undefined *puStack_b0;
  undefined *puStack_ac;
  undefined8 *puStack_a8;
  code *pcStack_a4;
  int iStack_90;
  undefined *puStack_8c;
  undefined *puStack_88;
  int *piStack_80;
  undefined *puStack_7c;
  undefined *puStack_78;
  code *pcStack_74;
  undefined *local_60;
  int *local_5c;
  undefined8 local_50 [3];
  undefined8 local_38;
  undefined8 local_30;
  undefined8 local_28;
  int local_1c;
  
  puVar17 = PTR___stack_chk_guard_0014f4cc;
  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;
  if (param_1 == (int *)0x0) {
    (*(code *)PTR___assert_fail_0014f720)
              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,
               PTR_s_t_char____NULL_0014f03c + 0xa1c);
    param_1 = unaff_s0;
LAB_0006bfa4:
    (*(code *)PTR___stack_chk_fail_0014f38c)();
  }
  else if (param_1[0x415] == -0x54535255) {
    if (param_1[0x414] != 0) {
      local_5c = param_1 + 1;
      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;
      (*(code *)PTR_LogMagickEvent_0014f488)
                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,
                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);
    }
    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);
    if (param_1[0x40f] == 0) {
      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {
        *(undefined **)(iVar1 + 0x2c8) = param_2;
        goto joined_r0x0006bed8;
      }
    }
    else {
      *(undefined **)(iVar1 + 0x2c8) = param_2;
joined_r0x0006bed8:
      if (param_2 == (undefined *)0x3) {
        unaff_s3 = local_50;
        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);
        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);
        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);
        local_38 = *(undefined8 *)(iVar1 + 0x2c0);
        local_30 = *(undefined8 *)(iVar1 + 0x2a8);
        local_28 = *(undefined8 *)(iVar1 + 0x2b0);
        FUN_00062640(param_1,unaff_s3);
      }
      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);
      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);
    }
    unaff_s1 = param_2;
    if (local_1c == *(int *)puVar17) {
      return *(int *)puVar17;
    }
    goto LAB_0006bfa4;
  }
  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;
  pcVar21 = DrawSetDensity;
  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);
  puVar6 = PTR___assert_fail_0014f720;
  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);
  puVar20 = puVar6 + 0xeb02c;
  puStack_78 = puVar17;
  puStack_88 = puVar20;
  piStack_80 = param_1;
  puStack_7c = unaff_s1;
  pcStack_74 = pcVar21;
  if (piVar5 == (int *)0x0) {
    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;
    (**(code **)(puVar6 + 0xe374c))
              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)
    ;
LAB_0006c128:
    iVar1 = iVar1 + 0x9f8;
    (**(code **)(puVar20 + -0x78e0))
              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);
  }
  else {
    if (piVar5[0x414] != 0) {
      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;
      puStack_8c = puVar9;
      (**(code **)(puVar6 + 0xe34b4))
                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,
                 0x1295);
    }
    iVar1 = *(int *)(puStack_88 + -0x7fc4);
    param_1 = piVar5;
    unaff_s1 = puVar9;
    puVar20 = puStack_88;
    if (piVar5[0x415] == -0x54535255) {
      if (puVar9 != (undefined *)0x0) {
        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);
        iVar1 = *(int *)(iVar16 + 0x290);
        pcVar21 = *(code **)(puStack_88 + -0x79d0);
        if (iVar1 != 0) {
          if ((piVar5[0x40f] == 0) &&
             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {
            return 1;
          }
          pcVar21 = *(code **)(puStack_88 + -0x79d0);
        }
        (*pcVar21)(iVar16 + 0x290,puVar9);
        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);
        return 1;
      }
      goto LAB_0006c128;
    }
  }
  pcVar19 = *(code **)(puVar20 + -0x78e0);
  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);
  pcVar22 = DrawSetFillColor;
  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);
  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);
  pcVar21 = pcVar19 + 0xeae9c;
  piVar5 = *(int **)(pcVar19 + 0xe3368);
  puStack_ac = puVar17;
  iStack_bc = *piVar5;
  pcStack_180 = pcVar21;
  piStack_b4 = param_1;
  puStack_b0 = unaff_s1;
  puStack_a8 = unaff_s3;
  pcStack_a4 = pcVar22;
  if (puVar6 != (undefined *)0x0) {
    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {
      if (*(int *)(puVar6 + 0x1050) != 0) {
        puStack_184 = puVar6 + 4;
        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;
        (**(code **)(pcVar19 + 0xe3324))
                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,
                   0x12c4);
      }
      pcVar21 = pcStack_180;
      if (puVar10 == (undefined8 *)0x0) {
        (**(code **)(pcStack_180 + -0x78e0))
                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970
                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);
        unaff_s3 = puVar10;
        goto LAB_0006c624;
      }
      param_1 = aiStack_170;
      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);
      piVar7 = param_1;
      piVar8 = aiStack_118;
      do {
        piVar4 = piVar8;
        piVar3 = piVar7;
        piVar7 = piVar3 + 4;
        iVar13 = piVar3[1];
        iVar16 = piVar3[2];
        iVar1 = piVar3[3];
        *piVar4 = *piVar3;
        piVar4[1] = iVar13;
        piVar4[2] = iVar16;
        piVar4[3] = iVar1;
        piVar8 = piVar4 + 4;
      } while (piVar7 != aiStack_120);
      iVar16 = *(int *)(puVar6 + 0x1034);
      iVar1 = *(int *)(puVar6 + 0x1038);
      iVar14 = piVar3[5];
      iVar13 = *(int *)(puVar6 + 0x103c);
      piVar4[4] = *piVar7;
      piVar4[5] = iVar14;
      iVar1 = *(int *)(iVar1 + iVar16 * 4);
      if (iVar13 == 0) {
        if (*(int *)(iVar1 + 0x50) != 0) {
          uVar2 = *(undefined4 *)(iVar1 + 0x94);
          uVar12 = *(uint *)(iVar1 + 0x90);
          if (aiStack_170[2] == 0) {
            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);
            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);
          }
LAB_0006c260:
          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);
          uVar15 = SUB84(dVar24,0);
          if (dVar24 < 0.0) {
            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;
            dVar24 = -dVar24;
            uStack_174 = uVar15;
          }
          iVar16 = *(int *)(pcStack_180 + -0x7fc4);
          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {
            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {
              uVar12 = uVar12 ^ 0x80000000;
              uStack_178 = uVar12;
              uStack_174 = uVar2;
            }
            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {
              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {
                uStack_128 = uStack_128 ^ 0x80000000;
                uStack_178 = uStack_128;
                uStack_174 = uStack_124;
              }
              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {
                dVar24 = *(double *)(iVar1 + 0x70);
                goto LAB_0006c398;
              }
            }
            goto LAB_0006c360;
          }
          goto LAB_0006c2d0;
        }
        if (aiStack_170[2] != 0) {
          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);
          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);
          goto LAB_0006c260;
        }
        iVar16 = *(int *)(pcStack_180 + -0x7fc4);
        dVar24 = *(double *)(iVar1 + 0x70);
LAB_0006c398:
        dVar24 = dVar24 - dStack_148;
        uVar2 = SUB84(dVar24,0);
        if (dVar24 < 0.0) {
          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;
          dVar24 = -dVar24;
          uStack_174 = uVar2;
        }
        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;
        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;
        uVar2 = SUB84(dStack_140,0);
        if (dStack_140 < 0.0) {
          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;
          dStack_140 = -dStack_140;
          uStack_174 = uVar2;
        }
        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;
        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;
        uVar2 = SUB84(dStack_138,0);
        if (dStack_138 < 0.0) {
          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;
          dStack_138 = -dStack_138;
          uStack_174 = uVar2;
        }
        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;
        if (*(int *)(iVar1 + 0x4c) == 2) {
          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;
          uVar2 = SUB84(dStack_130,0);
          if (dStack_130 < 0.0) {
            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;
            dStack_130 = -dStack_130;
            uStack_174 = uVar2;
          }
          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;
        }
      }
      else {
LAB_0006c2d0:
        piVar7 = aiStack_118;
        piVar8 = (int *)(iVar1 + 0x48);
        do {
          piVar4 = piVar8;
          piVar3 = piVar7;
          piVar7 = piVar3 + 4;
          iVar13 = piVar3[1];
          iVar16 = piVar3[2];
          iVar1 = piVar3[3];
          *piVar4 = *piVar3;
          piVar4[1] = iVar13;
          piVar4[2] = iVar16;
          piVar4[3] = iVar1;
          piVar8 = piVar4 + 4;
        } while (piVar7 != aiStack_118 + 0x14);
        iVar16 = *(int *)(pcStack_180 + -0x7fc4);
        iVar1 = piVar3[5];
        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);
        piVar4[4] = *piVar7;
        piVar4[5] = iVar1;
        FUN_00062838(puVar6,iVar16 + -0xdc);
        FUN_00063d20(puVar6,param_1);
        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);
      }
LAB_0006c360:
      pcVar21 = pcStack_180;
      if (iStack_bc == *piVar5) {
        return *piVar5;
      }
    }
    else {
LAB_0006c624:
      puVar10 = unaff_s3;
      (**(code **)(pcVar21 + -0x78e0))
                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,
                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);
    }
    (**(code **)(pcVar21 + -0x7c74))();
    puVar17 = puVar6;
    unaff_s3 = puVar10;
  }
  uVar2 = 0x12c1;
  pcVar19 = *(code **)(pcVar21 + -0x78e0);
  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;
  pcVar22 = DrawSetFillOpacity;
  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);
  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);
  pcStack_1b0 = pcVar19 + 0xea988;
  dVar24 = (double)CONCAT44(uVar2,iVar1);
  piStack_1e0 = param_1;
  piStack_1a8 = param_1;
  pcStack_1a4 = pcVar22;
  if (piVar7 != (int *)0x0) {
    if (piVar7[0x415] == -0x54535255) {
      if (piVar7[0x414] != 0) {
        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;
        piStack_1b4 = piVar7 + 1;
        (**(code **)(pcVar19 + 0xe2e10))
                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,
                   0x12f4);
      }
      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);
      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));
      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {
        return iVar1;
      }
      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);
      *(double *)(iVar1 + 0x90) = dVar25;
      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));
      return iVar1;
    }
    (**(code **)(pcVar19 + 0xe30a8))
              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,
               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);
    piStack_1e0 = piVar7;
  }
  uVar2 = 0x12f1;
  pcVar22 = *(code **)(pcVar19 + 0xe30a8);
  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;
  pcVar23 = DrawSetFontResolution;
  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);
  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);
  pcVar21 = pcVar22 + 0xea838;
  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);
  piStack_1e4 = (int *)*puVar18;
  uVar27 = CONCAT44(uVar2,iVar1);
  piVar7 = piStack_1e0;
  pcStack_11f0 = pcVar21;
  piStack_1dc = piVar5;
  puStack_1d8 = puVar17;
  pcStack_1d4 = pcVar23;
  dStack_1d0 = dVar24;
  if (piVar8 == (int *)0x0) {
LAB_0006c904:
    iVar16 = 0x131f;
    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;
    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);
    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);
  }
  else {
    piVar7 = piVar8;
    if (piVar8[0x415] != -0x54535255) {
      (**(code **)(pcVar22 + 0xe2f58))
                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,
                 *(int *)(pcVar22 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (piVar8[0x414] != 0) {
      iVar1 = 0x1322;
      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);
      (**(code **)(pcVar22 + 0xe2cc0))
                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);
    }
    piVar5 = aiStack_11e4;
    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;
    uStack_1200 = uVar27;
    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);
    (**(code **)(pcStack_11f0 + -0x79d0))
              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);
    piVar8 = piStack_1e4;
    pcVar21 = pcStack_11f0;
    if (piStack_1e4 == (int *)*puVar18) {
      return 1;
    }
  }
  pcVar21 = *(code **)(pcVar21 + -0x7c74);
  pcVar19 = DrawSetOpacity;
  (*pcVar21)();
  pcStack_1228 = pcVar21 + 0xea6cc;
  dVar24 = (double)CONCAT44(iVar16,iVar1);
  piStack_1254 = piVar7;
  piStack_1220 = piVar7;
  pcStack_121c = pcVar19;
  uStack_1218 = uVar27;
  if (piVar8 != (int *)0x0) {
    if (piVar8[0x415] == -0x54535255) {
      if (piVar8[0x414] != 0) {
        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;
        piStack_122c = piVar8 + 1;
        (**(code **)(pcVar21 + 0xe2b54))
                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,
                   0x134a);
      }
      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);
      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));
      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {
        return iVar1;
      }
      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);
      *(float *)(iVar1 + 0x2cc) = fVar26;
      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));
      return iVar1;
    }
    (**(code **)(pcVar21 + 0xe2dec))
              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,
               *(int *)(pcVar21 + 0xe2708) + 0x958);
    piStack_1254 = piVar8;
  }
  pcVar19 = *(code **)(pcVar21 + 0xe2dec);
  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);
  pcVar22 = DrawSetFillPatternURL;
  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;
  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);
  piVar7 = *(int **)(pcVar19 + 0xe2a4c);
  iStack_125c = *piVar7;
  piStack_1250 = piVar5;
  puStack_124c = puVar18;
  puStack_1248 = unaff_s3;
  pcStack_1244 = pcVar22;
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) == 0) {
        iVar16 = *(int *)(&DAT_00001004 + iVar1);
      }
      else {
        (**(code **)(pcVar19 + 0xe2a08))
                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);
        iVar16 = *(int *)(&DAT_00001004 + iVar1);
      }
      if (iVar16 == 0) {
        (**(code **)(pcVar19 + 0xe283c))
                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,
                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,
                   iVar1 + 4);
      }
      if (pcVar11 != (char *)0x0) {
        iVar13 = *(int *)(pcVar19 + 0xe25ac);
        if (*pcVar11 == '#') {
          (**(code **)(pcVar19 + 0xe2700))
                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);
          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))
                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);
          if (iVar16 == 0) {
            iVar13 = *(int *)(pcVar19 + 0xe25ac);
            uVar15 = 0x1386;
            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);
            iVar14 = *(int *)(pcVar19 + 0xe25bc);
            iVar16 = *(int *)(pcVar19 + 0xe25bc);
            pcVar21 = *(code **)(pcVar19 + 0xe283c);
            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(code **)(pcVar19 + 0xe2700))
                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);
          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
          if (*(double *)(iVar16 + 0x90) != 0.0) {
            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);
          }
          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;
          FUN_00062838(iVar1,iVar16,auStack_225c);
          iVar13 = 1;
        }
        else {
          uVar15 = 0x1380;
          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);
          iVar14 = *(int *)(pcVar19 + 0xe25bc);
          iVar16 = *(int *)(pcVar19 + 0xe25bc);
          pcVar21 = *(code **)(pcVar19 + 0xe283c);
          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;
LAB_0006cb28:
          iVar16 = iVar16 + -0x970;
          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);
          iVar13 = 0;
        }
        iVar1 = iStack_125c;
        if (iStack_125c == *piVar7) {
          return iVar13;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(code **)(pcVar19 + 0xe2ca0))
                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(pcVar19 + 0xe25bc) + 0x930);
    }
    (**(code **)(pcVar19 + 0xe2ca0))
              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,
               *(int *)(pcVar19 + 0xe25bc) + 0x930);
  }
  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;
  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;
  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);
LAB_0006cd54:
  pcVar21 = *(code **)(pcVar19 + 0xe290c);
  (*pcVar21)();
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar21 + 0xe2728))
                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);
      }
      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {
        return iVar13;
      }
      pcVar19 = *(code **)(pcVar21 + 0xe2408);
      *(int *)(iVar13 + 0x240) = iVar16;
      uVar2 = (*pcVar19)(0x1a,iVar16);
      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);
      return iVar1;
    }
    (**(code **)(pcVar21 + 0xe29c0))
              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,
               *(int *)(pcVar21 + 0xe22dc) + 0x908);
  }
  pcVar19 = *(code **)(pcVar21 + 0xe29c0);
  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;
  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;
  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar19 + 0xe25e4))
                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);
      }
      if (iVar16 != 0) {
        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
        if (*(int *)(iVar1 + 0x103c) == 0) {
          iVar14 = *(int *)(iVar13 + 0x264);
          if ((iVar14 != 0) &&
             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {
            return 1;
          }
        }
        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);
        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);
        return 1;
      }
      (**(code **)(pcVar19 + 0xe287c))
                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,
                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);
    }
    (**(code **)(pcVar19 + 0xe287c))
              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,
               *(int *)(pcVar19 + 0xe2198) + 0x8ec);
  }
  pcVar21 = *(code **)(pcVar19 + 0xe287c);
  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;
  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;
  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);
  if (iVar1 == 0) {
    iVar1 = (**(code **)(pcVar21 + 0xe2704))
                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,
                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
    if (*(int *)(iVar1 + 0x1050) != 0) {
      (**(code **)(pcVar21 + 0xe246c))
                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);
    }
    if (iVar16 != 0) {
      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if (*(int *)(iVar1 + 0x103c) == 0) {
        iVar14 = *(int *)(iVar13 + 0x26c);
        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)
           ) {
          return 1;
        }
      }
      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);
      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);
      return 1;
    }
    iVar1 = (**(code **)(pcVar21 + 0xe2704))
                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,
                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  iVar1 = (**(code **)(pcVar21 + 0xe2704))
                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,
                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);
  return iVar1;
}


lui gp,0xf
addiu gp,gp,-0x4df0
addu gp,gp,t9
addiu sp,sp,-0x70
sw s2,0x64(sp)
lw s2,-0x7b34(gp)
sw gp,0x18(sp)
sw ra,0x6c(sp)
sw s3,0x68(sp)
sw s1,0x60(sp)
sw s0,0x5c(sp)
lw v0,0x0(s2)
sw v0,0x54(sp)
beq a0,zero,0x0006bf80
_lui v0,0xabac
lw v1,0x1054(a0)
ori v0,v0,0xadab
bne v1,v0,0x0006bfb0
_or s0,a0,zero
lw v0,0x1050(a0)
bne v0,zero,0x0006bf44
_or s1,a1,zero
lw v1,0x1034(s0)
lw v0,0x1038(s0)
lw a0,0x103c(s0)
sll v1,v1,0x2
addu v0,v0,v1
beq a0,zero,0x0006becc
_lw v0,0x0(v0)
li v1,0x3
beq s1,v1,0x0006bee0
_sw s1,0x2c8(v0)
lw t9,-0x7e98(gp)
li a0,0x6
jalr t9
_or a1,s1,zero
or a0,s0,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,-0x7fc4(gp)
lw t9,-0x7f90(gp)
addiu t9,t9,0x2838
bal 0x00062838
_addiu a1,a1,-0x148
lw gp,0x18(sp)
lw v1,0x54(sp)
lw v0,0x0(s2)
bne v1,v0,0x0006bfa4
_lw ra,0x6c(sp)
lw s3,0x68(sp)
lw s2,0x64(sp)
lw s1,0x60(sp)
lw s0,0x5c(sp)
jr ra
_addiu sp,sp,0x70
lw v1,0x2c8(v0)
beq v1,s1,0x0006bea4
_li v1,0x3
bne s1,v1,0x0006be70
_sw s1,0x2c8(v0)
lw t9,-0x7e08(gp)
addiu s3,sp,0x20
jalr t9
_or a0,s3,zero
or a1,s3,zero
lw v1,0x1034(s0)
or a0,s0,zero
lw v0,0x1038(s0)
lw gp,0x18(sp)
sll v1,v1,0x2
addu v0,v0,v1
lw t9,-0x7f90(gp)
lw v0,0x0(v0)
addiu t9,t9,0x2640
ldc1 f6,0x2b8(v0)
ldc1 f4,0x2c0(v0)
ldc1 f2,0x2a8(v0)
ldc1 f0,0x2b0(v0)
sdc1 f6,0x20(sp)
sdc1 f4,0x38(sp)
sdc1 f2,0x40(sp)
bal 0x00062640
_sdc1 f0,0x48(sp)
b 0x0006be70
_lw gp,0x18(sp)
addiu v0,a0,0x4
lw a2,-0x7fc4(gp)
lw a1,-0x7fc4(gp)
li a3,0x1261
lw t9,-0x7b78(gp)
lui a0,0x4
sw v0,0x14(sp)
addiu a2,a2,0xa08
lw v0,-0x7fd0(gp)
addiu a1,a1,-0x970
addiu v0,v0,-0x131c
jalr t9
_sw v0,0x10(sp)
b 0x0006be48
_lw gp,0x18(sp)
lw a3,-0x7fc4(gp)
li a2,0x125e
lw a1,-0x7fc4(gp)
lw a0,-0x7fc4(gp)
lw t9,-0x78e0(gp)
addiu a3,a3,0xa1c
addiu a1,a1,-0x970
jalr t9
_addiu a0,a0,-0x954
lw t9,-0x7c74(gp)
jalr t9
_nop
lw a3,-0x7fc4(gp)
li a2,0x125f
lw a1,-0x7fc4(gp)
lw a0,-0x7fc4(gp)
lw t9,-0x78e0(gp)
addiu a3,a3,0xa1c
addiu a1,a1,-0x970
jalr t9
_addiu a0,a0,0x419c
(translation_unit "int DrawSetClipUnits(int *param_1,undefined *param_2)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}\n\n" (function_definition "int DrawSetClipUnits(int *param_1,undefined *param_2)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" primitive_type (function_declarator "DrawSetClipUnits(int *param_1,undefined *param_2)" identifier (parameter_list "(int *param_1,undefined *param_2)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int *piVar4;" primitive_type (pointer_declarator "*piVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "undefined8 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "int *unaff_s0;" primitive_type (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "undefined *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "undefined *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "undefined8 *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "undefined *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "code *pcVar23;" type_identifier (pointer_declarator "*pcVar23" * identifier) ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "float fVar26;" primitive_type identifier ;) (declaration "undefined8 uVar27;" type_identifier identifier ;) (declaration "undefined1 auStack_325c [4096];" type_identifier (array_declarator "auStack_325c [4096]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_225c [4096];" type_identifier (array_declarator "auStack_225c [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_125c;" primitive_type identifier ;) (declaration "int *piStack_1254;" primitive_type (pointer_declarator "*piStack_1254" * identifier) ;) (declaration "int *piStack_1250;" primitive_type (pointer_declarator "*piStack_1250" * identifier) ;) (declaration "undefined4 *puStack_124c;" type_identifier (pointer_declarator "*puStack_124c" * identifier) ;) (declaration "undefined8 *puStack_1248;" type_identifier (pointer_declarator "*puStack_1248" * identifier) ;) (declaration "code *pcStack_1244;" type_identifier (pointer_declarator "*pcStack_1244" * identifier) ;) (declaration "int iStack_1230;" primitive_type identifier ;) (declaration "int *piStack_122c;" primitive_type (pointer_declarator "*piStack_122c" * identifier) ;) (declaration "code *pcStack_1228;" type_identifier (pointer_declarator "*pcStack_1228" * identifier) ;) (declaration "int *piStack_1220;" primitive_type (pointer_declarator "*piStack_1220" * identifier) ;) (declaration "code *pcStack_121c;" type_identifier (pointer_declarator "*pcStack_121c" * identifier) ;) (declaration "undefined8 uStack_1218;" type_identifier identifier ;) (declaration "undefined8 uStack_1200;" type_identifier identifier ;) (declaration "code *pcStack_11f0;" type_identifier (pointer_declarator "*pcStack_11f0" * identifier) ;) (declaration "int aiStack_11e4 [1024];" primitive_type (array_declarator "aiStack_11e4 [1024]" identifier [ number_literal ]) ;) (declaration "int *piStack_1e4;" primitive_type (pointer_declarator "*piStack_1e4" * identifier) ;) (declaration "int *piStack_1e0;" primitive_type (pointer_declarator "*piStack_1e0" * identifier) ;) (declaration "int *piStack_1dc;" primitive_type (pointer_declarator "*piStack_1dc" * identifier) ;) (declaration "undefined *puStack_1d8;" type_identifier (pointer_declarator "*puStack_1d8" * identifier) ;) (declaration "code *pcStack_1d4;" type_identifier (pointer_declarator "*pcStack_1d4" * identifier) ;) (declaration "double dStack_1d0;" primitive_type identifier ;) (declaration "int iStack_1b8;" primitive_type identifier ;) (declaration "int *piStack_1b4;" primitive_type (pointer_declarator "*piStack_1b4" * identifier) ;) (declaration "code *pcStack_1b0;" type_identifier (pointer_declarator "*pcStack_1b0" * identifier) ;) (declaration "int *piStack_1a8;" primitive_type (pointer_declarator "*piStack_1a8" * identifier) ;) (declaration "code *pcStack_1a4;" type_identifier (pointer_declarator "*pcStack_1a4" * identifier) ;) (declaration "int iStack_188;" primitive_type identifier ;) (declaration "undefined *puStack_184;" type_identifier (pointer_declarator "*puStack_184" * identifier) ;) (declaration "code *pcStack_180;" type_identifier (pointer_declarator "*pcStack_180" * identifier) ;) (declaration "uint uStack_178;" type_identifier identifier ;) (declaration "undefined4 uStack_174;" type_identifier identifier ;) (declaration "int aiStack_170 [10];" primitive_type (array_declarator "aiStack_170 [10]" identifier [ number_literal ]) ;) (declaration "double dStack_148;" primitive_type identifier ;) (declaration "double dStack_140;" primitive_type identifier ;) (declaration "double dStack_138;" primitive_type identifier ;) (declaration "double dStack_130;" primitive_type identifier ;) (declaration "uint uStack_128;" type_identifier identifier ;) (declaration "undefined4 uStack_124;" type_identifier identifier ;) (declaration "int aiStack_120 [2];" primitive_type (array_declarator "aiStack_120 [2]" identifier [ number_literal ]) ;) (declaration "int aiStack_118 [23];" primitive_type (array_declarator "aiStack_118 [23]" identifier [ number_literal ]) ;) (declaration "int iStack_bc;" primitive_type identifier ;) (declaration "int *piStack_b4;" primitive_type (pointer_declarator "*piStack_b4" * identifier) ;) (declaration "undefined *puStack_b0;" type_identifier (pointer_declarator "*puStack_b0" * identifier) ;) (declaration "undefined *puStack_ac;" type_identifier (pointer_declarator "*puStack_ac" * identifier) ;) (declaration "undefined8 *puStack_a8;" type_identifier (pointer_declarator "*puStack_a8" * identifier) ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "undefined *puStack_8c;" type_identifier (pointer_declarator "*puStack_8c" * identifier) ;) (declaration "undefined *puStack_88;" type_identifier (pointer_declarator "*puStack_88" * identifier) ;) (declaration "int *piStack_80;" primitive_type (pointer_declarator "*piStack_80" * identifier) ;) (declaration "undefined *puStack_7c;" type_identifier (pointer_declarator "*puStack_7c" * identifier) ;) (declaration "undefined *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "code *pcStack_74;" type_identifier (pointer_declarator "*pcStack_74" * identifier) ;) (declaration "undefined *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (declaration "int *local_5c;" primitive_type (pointer_declarator "*local_5c" * identifier) ;) (declaration "undefined8 local_50 [3];" type_identifier (array_declarator "local_50 [3]" identifier [ number_literal ]) ;) (declaration "undefined8 local_38;" type_identifier identifier ;) (declaration "undefined8 local_30;" type_identifier identifier ;) (declaration "undefined8 local_28;" type_identifier identifier ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar17 = PTR___stack_chk_guard_0014f4cc;" (assignment_expression "puVar17 = PTR___stack_chk_guard_0014f4cc" identifier = identifier) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_0014f4cc" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0014f4cc" * (cast_expression "(int *)PTR___stack_chk_guard_0014f4cc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" if (parenthesized_expression "(param_1 == (int *)0x0)" ( (binary_expression "param_1 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }" { (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" ( (pointer_expression "*(code *)PTR___assert_fail_0014f720" * (cast_expression "(code *)PTR___assert_fail_0014f720" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" identifier + number_literal) ))) ;) (expression_statement "param_1 = unaff_s0;" (assignment_expression "param_1 = unaff_s0" identifier = identifier) ;) (labeled_statement "LAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();" statement_identifier : (expression_statement "(*(code *)PTR___stack_chk_fail_0014f38c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0014f38c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0014f38c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0014f38c" * (cast_expression "(code *)PTR___stack_chk_fail_0014f38c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;)) }) (else_clause "else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" else (if_statement "if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" if (parenthesized_expression "(param_1[0x415] == -0x54535255)" ( (binary_expression "param_1[0x415] == -0x54535255" (subscript_expression "param_1[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" { (if_statement "if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" if (parenthesized_expression "(param_1[0x414] != 0)" ( (binary_expression "param_1[0x414] != 0" (subscript_expression "param_1[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" { (expression_statement "local_5c = param_1 + 1;" (assignment_expression "local_5c = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;" (assignment_expression "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" identifier = (binary_expression "PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_0014f488)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_0014f488" * (cast_expression "(code *)PTR_LogMagickEvent_0014f488" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" ( number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa08" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4)" identifier = (pointer_expression "*(int *)(param_1[0x40e] + param_1[0x40d] * 4)" * (cast_expression "(int *)(param_1[0x40e] + param_1[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[0x40e] + param_1[0x40d] * 4)" ( (binary_expression "param_1[0x40e] + param_1[0x40d] * 4" (subscript_expression "param_1[0x40e]" identifier [ number_literal ]) + (binary_expression "param_1[0x40d] * 4" (subscript_expression "param_1[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (if_statement "if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" if (parenthesized_expression "(param_1[0x40f] == 0)" ( (binary_expression "param_1[0x40f] == 0" (subscript_expression "param_1[0x40f]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }" { (if_statement "if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }" if (parenthesized_expression "(*(undefined **)(iVar1 + 0x2c8) != param_2)" ( (binary_expression "*(undefined **)(iVar1 + 0x2c8) != param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" * (cast_expression "(undefined **)(iVar1 + 0x2c8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x2c8)" ( (binary_expression "iVar1 + 0x2c8" identifier + number_literal) )))) != identifier) )) (compound_statement "{\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }" { (expression_statement "*(undefined **)(iVar1 + 0x2c8) = param_2;" (assignment_expression "*(undefined **)(iVar1 + 0x2c8) = param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" * (cast_expression "(undefined **)(iVar1 + 0x2c8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x2c8)" ( (binary_expression "iVar1 + 0x2c8" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto joined_r0x0006bed8;" goto statement_identifier ;) })) }) (else_clause "else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" else (compound_statement "{\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" { (expression_statement "*(undefined **)(iVar1 + 0x2c8) = param_2;" (assignment_expression "*(undefined **)(iVar1 + 0x2c8) = param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" * (cast_expression "(undefined **)(iVar1 + 0x2c8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x2c8)" ( (binary_expression "iVar1 + 0x2c8" identifier + number_literal) )))) = identifier) ;) (labeled_statement "joined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" statement_identifier : (if_statement "if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" if (parenthesized_expression "(param_2 == (undefined *)0x3)" ( (binary_expression "param_2 == (undefined *)0x3" identifier == (cast_expression "(undefined *)0x3" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" { (expression_statement "unaff_s3 = local_50;" (assignment_expression "unaff_s3 = local_50" identifier = identifier) ;) (expression_statement "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);" (call_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)" ( (pointer_expression "*(code *)PTR_GetAffineMatrix_0014f1f8" * (cast_expression "(code *)PTR_GetAffineMatrix_0014f1f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4)" identifier = (pointer_expression "*(int *)(param_1[0x40e] + param_1[0x40d] * 4)" * (cast_expression "(int *)(param_1[0x40e] + param_1[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[0x40e] + param_1[0x40d] * 4)" ( (binary_expression "param_1[0x40e] + param_1[0x40d] * 4" (subscript_expression "param_1[0x40e]" identifier [ number_literal ]) + (binary_expression "param_1[0x40d] * 4" (subscript_expression "param_1[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);" (assignment_expression "local_50[0] = *(undefined8 *)(iVar1 + 0x2b8)" (subscript_expression "local_50[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined8 *)(iVar1 + 0x2b8)" * (cast_expression "(undefined8 *)(iVar1 + 0x2b8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2b8)" ( (binary_expression "iVar1 + 0x2b8" identifier + number_literal) ))))) ;) (expression_statement "local_38 = *(undefined8 *)(iVar1 + 0x2c0);" (assignment_expression "local_38 = *(undefined8 *)(iVar1 + 0x2c0)" identifier = (pointer_expression "*(undefined8 *)(iVar1 + 0x2c0)" * (cast_expression "(undefined8 *)(iVar1 + 0x2c0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2c0)" ( (binary_expression "iVar1 + 0x2c0" identifier + number_literal) ))))) ;) (expression_statement "local_30 = *(undefined8 *)(iVar1 + 0x2a8);" (assignment_expression "local_30 = *(undefined8 *)(iVar1 + 0x2a8)" identifier = (pointer_expression "*(undefined8 *)(iVar1 + 0x2a8)" * (cast_expression "(undefined8 *)(iVar1 + 0x2a8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2a8)" ( (binary_expression "iVar1 + 0x2a8" identifier + number_literal) ))))) ;) (expression_statement "local_28 = *(undefined8 *)(iVar1 + 0x2b0);" (assignment_expression "local_28 = *(undefined8 *)(iVar1 + 0x2b0)" identifier = (pointer_expression "*(undefined8 *)(iVar1 + 0x2b0)" * (cast_expression "(undefined8 *)(iVar1 + 0x2b0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2b0)" ( (binary_expression "iVar1 + 0x2b0" identifier + number_literal) ))))) ;) (expression_statement "FUN_00062640(param_1,unaff_s3);" (call_expression "FUN_00062640(param_1,unaff_s3)" identifier (argument_list "(param_1,unaff_s3)" ( identifier , identifier ))) ;) }))) (expression_statement "uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);" (assignment_expression "uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2)" identifier = (call_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2)" (parenthesized_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)" ( (pointer_expression "*(code *)PTR_CommandOptionToMnemonic_0014f168" * (cast_expression "(code *)PTR_CommandOptionToMnemonic_0014f168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(6,param_2)" ( number_literal , identifier )))) ;) (expression_statement "FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);" (call_expression "FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2)" identifier (argument_list "(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2)" ( identifier , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x148" identifier + number_literal) , identifier ))) ;) }))) (expression_statement "unaff_s1 = param_2;" (assignment_expression "unaff_s1 = param_2" identifier = identifier) ;) (if_statement "if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }" if (parenthesized_expression "(local_1c == *(int *)puVar17)" ( (binary_expression "local_1c == *(int *)puVar17" identifier == (pointer_expression "*(int *)puVar17" * (cast_expression "(int *)puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return *(int *)puVar17;\n    }" { (return_statement "return *(int *)puVar17;" return (pointer_expression "*(int *)puVar17" * (cast_expression "(int *)puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) (goto_statement "goto LAB_0006bfa4;" goto statement_identifier ;) })))) (expression_statement "puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;" (assignment_expression "puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal)) ;) (expression_statement "pcVar21 = DrawSetDensity;" (assignment_expression "pcVar21 = DrawSetDensity" identifier = identifier) ;) (expression_statement "piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);" (assignment_expression "piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" identifier = (cast_expression "(int *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_t_char____NULL_0014f03c + 0x419c)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" identifier + number_literal) )))) ;) (expression_statement "puVar6 = PTR___assert_fail_0014f720;" (assignment_expression "puVar6 = PTR___assert_fail_0014f720" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" ( (pointer_expression "*(code *)PTR___assert_fail_0014f720" * (cast_expression "(code *)PTR___assert_fail_0014f720" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" ( identifier , identifier , number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" identifier + number_literal) ))) ;) (expression_statement "puVar20 = puVar6 + 0xeb02c;" (assignment_expression "puVar20 = puVar6 + 0xeb02c" identifier = (binary_expression "puVar6 + 0xeb02c" identifier + number_literal)) ;) (expression_statement "puStack_78 = puVar17;" (assignment_expression "puStack_78 = puVar17" identifier = identifier) ;) (expression_statement "puStack_88 = puVar20;" (assignment_expression "puStack_88 = puVar20" identifier = identifier) ;) (expression_statement "piStack_80 = param_1;" (assignment_expression "piStack_80 = param_1" identifier = identifier) ;) (expression_statement "puStack_7c = unaff_s1;" (assignment_expression "puStack_7c = unaff_s1" identifier = identifier) ;) (expression_statement "pcStack_74 = pcVar21;" (assignment_expression "pcStack_74 = pcVar21" identifier = identifier) ;) (if_statement "if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" if (parenthesized_expression "(piVar5 == (int *)0x0)" ( (binary_expression "piVar5 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }" { (expression_statement "iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;" (assignment_expression "iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8" identifier = (binary_expression "*(int *)(puVar6 + 0xe3068) + 0x9f8" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;" (call_expression "(**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)" (parenthesized_expression "(**(code **)(puVar6 + 0xe374c))" ( (pointer_expression "**(code **)(puVar6 + 0xe374c)" * (pointer_expression "*(code **)(puVar6 + 0xe374c)" * (cast_expression "(code **)(puVar6 + 0xe374c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0xe374c)" ( (binary_expression "puVar6 + 0xe374c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)" ( (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x954" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;" statement_identifier : (expression_statement "iVar1 = iVar1 + 0x9f8;" (assignment_expression "iVar1 = iVar1 + 0x9f8" identifier = (binary_expression "iVar1 + 0x9f8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);" (call_expression "(**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970)" (parenthesized_expression "(**(code **)(puVar20 + -0x78e0))" ( (pointer_expression "**(code **)(puVar20 + -0x78e0)" * (pointer_expression "*(code **)(puVar20 + -0x78e0)" * (cast_expression "(code **)(puVar20 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + -0x78e0)" ( (binary_expression "puVar20 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970)" ( (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x134" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" else (compound_statement "{\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" { (if_statement "if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" if (parenthesized_expression "(piVar5[0x414] != 0)" ( (binary_expression "piVar5[0x414] != 0" (subscript_expression "piVar5[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" { (expression_statement "iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;" (assignment_expression "iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c" identifier = (binary_expression "*(int *)(puVar6 + 0xe305c) + -0x131c" (pointer_expression "*(int *)(puVar6 + 0xe305c)" * (cast_expression "(int *)(puVar6 + 0xe305c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe305c)" ( (binary_expression "puVar6 + 0xe305c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puStack_8c = puVar9;" (assignment_expression "puStack_8c = puVar9" identifier = identifier) ;) (expression_statement "(**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);" (call_expression "(**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295)" (parenthesized_expression "(**(code **)(puVar6 + 0xe34b4))" ( (pointer_expression "**(code **)(puVar6 + 0xe34b4)" * (pointer_expression "*(code **)(puVar6 + 0xe34b4)" * (cast_expression "(code **)(puVar6 + 0xe34b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0xe34b4)" ( (binary_expression "puVar6 + 0xe34b4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295)" ( number_literal , (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar6 + 0xe3068) + 0x9e8" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(puStack_88 + -0x7fc4);" (assignment_expression "iVar1 = *(int *)(puStack_88 + -0x7fc4)" identifier = (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" * (cast_expression "(int *)(puStack_88 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_88 + -0x7fc4)" ( (binary_expression "puStack_88 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "param_1 = piVar5;" (assignment_expression "param_1 = piVar5" identifier = identifier) ;) (expression_statement "unaff_s1 = puVar9;" (assignment_expression "unaff_s1 = puVar9" identifier = identifier) ;) (expression_statement "puVar20 = puStack_88;" (assignment_expression "puVar20 = puStack_88" identifier = identifier) ;) (if_statement "if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }" if (parenthesized_expression "(piVar5[0x415] == -0x54535255)" ( (binary_expression "piVar5[0x415] == -0x54535255" (subscript_expression "piVar5[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }" { (if_statement "if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }" if (parenthesized_expression "(puVar9 != (undefined *)0x0)" ( (binary_expression "puVar9 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }" { (expression_statement "iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);" (assignment_expression "iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" identifier = (pointer_expression "*(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" * (cast_expression "(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x40e] + piVar5[0x40d] * 4)" ( (binary_expression "piVar5[0x40e] + piVar5[0x40d] * 4" (subscript_expression "piVar5[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar5[0x40d] * 4" (subscript_expression "piVar5[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "iVar1 = *(int *)(iVar16 + 0x290);" (assignment_expression "iVar1 = *(int *)(iVar16 + 0x290)" identifier = (pointer_expression "*(int *)(iVar16 + 0x290)" * (cast_expression "(int *)(iVar16 + 0x290)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x290)" ( (binary_expression "iVar16 + 0x290" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar21 = *(code **)(puStack_88 + -0x79d0)" identifier = (pointer_expression "*(code **)(puStack_88 + -0x79d0)" * (cast_expression "(code **)(puStack_88 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x79d0)" ( (binary_expression "puStack_88 + -0x79d0" identifier + number_literal) ))))) ;) (if_statement "if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }" { (if_statement "if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }" if (parenthesized_expression "((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0))" ( (binary_expression "(piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)" (parenthesized_expression "(piVar5[0x40f] == 0)" ( (binary_expression "piVar5[0x40f] == 0" (subscript_expression "piVar5[0x40f]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)" ( (comma_expression "iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0" (assignment_expression "iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297)" identifier = (call_expression "(**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297)" (parenthesized_expression "(**(code **)(puStack_88 + -0x7c18))" ( (pointer_expression "**(code **)(puStack_88 + -0x7c18)" * (pointer_expression "*(code **)(puStack_88 + -0x7c18)" * (cast_expression "(code **)(puStack_88 + -0x7c18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x7c18)" ( (binary_expression "puStack_88 + -0x7c18" identifier + number_literal) ))))) )) (argument_list "(iVar1,puVar9,0x1297)" ( identifier , identifier , number_literal )))) , (binary_expression "iVar1 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar21 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar21 = *(code **)(puStack_88 + -0x79d0)" identifier = (pointer_expression "*(code **)(puStack_88 + -0x79d0)" * (cast_expression "(code **)(puStack_88 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x79d0)" ( (binary_expression "puStack_88 + -0x79d0" identifier + number_literal) ))))) ;) })) (expression_statement "(*pcVar21)(iVar16 + 0x290,puVar9);" (call_expression "(*pcVar21)(iVar16 + 0x290,puVar9)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(iVar16 + 0x290,puVar9)" ( (binary_expression "iVar16 + 0x290" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);" (call_expression "FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9)" identifier (argument_list "(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9)" ( identifier , (binary_expression "*(int *)(puStack_88 + -0x7fc4) + -0x114" (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" * (cast_expression "(int *)(puStack_88 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_88 + -0x7fc4)" ( (binary_expression "puStack_88 + -0x7fc4" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (goto_statement "goto LAB_0006c128;" goto statement_identifier ;) })) }))) (expression_statement "pcVar19 = *(code **)(puVar20 + -0x78e0);" (assignment_expression "pcVar19 = *(code **)(puVar20 + -0x78e0)" identifier = (pointer_expression "*(code **)(puVar20 + -0x78e0)" * (cast_expression "(code **)(puVar20 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + -0x78e0)" ( (binary_expression "puVar20 + -0x78e0" identifier + number_literal) ))))) ;) (expression_statement "puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);" (assignment_expression "puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970)" identifier = (cast_expression "(undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar20 + -0x7fc4) + -0x970)" ( (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar22 = DrawSetFillColor;" (assignment_expression "pcVar22 = DrawSetFillColor" identifier = identifier) ;) (expression_statement "puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);" (assignment_expression "puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c)" identifier = (cast_expression "(undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar20 + -0x7fc4) + 0x419c)" ( (binary_expression "*(int *)(puVar20 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);" (call_expression "(*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(puVar6,puVar10,0x1296,iVar1 + 0x9f8)" ( identifier , identifier , number_literal , (binary_expression "iVar1 + 0x9f8" identifier + number_literal) ))) ;) (expression_statement "pcVar21 = pcVar19 + 0xeae9c;" (assignment_expression "pcVar21 = pcVar19 + 0xeae9c" identifier = (binary_expression "pcVar19 + 0xeae9c" identifier + number_literal)) ;) (expression_statement "piVar5 = *(int **)(pcVar19 + 0xe3368);" (assignment_expression "piVar5 = *(int **)(pcVar19 + 0xe3368)" identifier = (pointer_expression "*(int **)(pcVar19 + 0xe3368)" * (cast_expression "(int **)(pcVar19 + 0xe3368)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe3368)" ( (binary_expression "pcVar19 + 0xe3368" identifier + number_literal) ))))) ;) (expression_statement "puStack_ac = puVar17;" (assignment_expression "puStack_ac = puVar17" identifier = identifier) ;) (expression_statement "iStack_bc = *piVar5;" (assignment_expression "iStack_bc = *piVar5" identifier = (pointer_expression "*piVar5" * identifier)) ;) (expression_statement "pcStack_180 = pcVar21;" (assignment_expression "pcStack_180 = pcVar21" identifier = identifier) ;) (expression_statement "piStack_b4 = param_1;" (assignment_expression "piStack_b4 = param_1" identifier = identifier) ;) (expression_statement "puStack_b0 = unaff_s1;" (assignment_expression "puStack_b0 = unaff_s1" identifier = identifier) ;) (expression_statement "puStack_a8 = unaff_s3;" (assignment_expression "puStack_a8 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" identifier = identifier) ;) (if_statement "if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }" if (parenthesized_expression "(puVar6 != (undefined *)0x0)" ( (binary_expression "puVar6 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }" { (if_statement "if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" if (parenthesized_expression "(*(int *)(puVar6 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(puVar6 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(puVar6 + 0x1054)" * (cast_expression "(int *)(puVar6 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1054)" ( (binary_expression "puVar6 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }" { (if_statement "if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" if (parenthesized_expression "(*(int *)(puVar6 + 0x1050) != 0)" ( (binary_expression "*(int *)(puVar6 + 0x1050) != 0" (pointer_expression "*(int *)(puVar6 + 0x1050)" * (cast_expression "(int *)(puVar6 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1050)" ( (binary_expression "puVar6 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" { (expression_statement "puStack_184 = puVar6 + 4;" (assignment_expression "puStack_184 = puVar6 + 4" identifier = (binary_expression "puVar6 + 4" identifier + number_literal)) ;) (expression_statement "iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;" (assignment_expression "iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c" identifier = (binary_expression "*(int *)(pcVar19 + 0xe2ecc) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe2ecc)" * (cast_expression "(int *)(pcVar19 + 0xe2ecc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2ecc)" ( (binary_expression "pcVar19 + 0xe2ecc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);" (call_expression "(**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe3324))" ( (pointer_expression "**(code **)(pcVar19 + 0xe3324)" * (pointer_expression "*(code **)(pcVar19 + 0xe3324)" * (cast_expression "(code **)(pcVar19 + 0xe3324)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe3324)" ( (binary_expression "pcVar19 + 0xe3324" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2ed8) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2ed8)" * (cast_expression "(int *)(pcVar19 + 0xe2ed8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2ed8)" ( (binary_expression "pcVar19 + 0xe2ed8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2ed8) + 0x9c0" (pointer_expression "*(int *)(pcVar19 + 0xe2ed8)" * (cast_expression "(int *)(pcVar19 + 0xe2ed8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2ed8)" ( (binary_expression "pcVar19 + 0xe2ed8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "pcVar21 = pcStack_180;" (assignment_expression "pcVar21 = pcStack_180" identifier = identifier) ;) (if_statement "if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }" if (parenthesized_expression "(puVar10 == (undefined8 *)0x0)" ( (binary_expression "puVar10 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }" { (expression_statement "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x78e0))" ( (pointer_expression "**(code **)(pcStack_180 + -0x78e0)" * (pointer_expression "*(code **)(pcStack_180 + -0x78e0)" * (cast_expression "(code **)(pcStack_180 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_180 + -0x78e0)" ( (binary_expression "pcStack_180 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x104" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "unaff_s3 = puVar10;" (assignment_expression "unaff_s3 = puVar10" identifier = identifier) ;) (goto_statement "goto LAB_0006c624;" goto statement_identifier ;) })) (expression_statement "param_1 = aiStack_170;" (assignment_expression "param_1 = aiStack_170" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);" (call_expression "(**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x77a0))" ( (pointer_expression "**(code **)(pcStack_180 + -0x77a0)" * (pointer_expression "*(code **)(pcStack_180 + -0x77a0)" * (cast_expression "(code **)(pcStack_180 + -0x77a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_180 + -0x77a0)" ( (binary_expression "pcStack_180 + -0x77a0" identifier + number_literal) ))))) )) (argument_list "(puVar10,param_1)" ( identifier , identifier ))) ;) (expression_statement "piVar7 = param_1;" (assignment_expression "piVar7 = param_1" identifier = identifier) ;) (expression_statement "piVar8 = aiStack_118;" (assignment_expression "piVar8 = aiStack_118" identifier = identifier) ;) (do_statement "do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);" do (compound_statement "{\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      }" { (expression_statement "piVar4 = piVar8;" (assignment_expression "piVar4 = piVar8" identifier = identifier) ;) (expression_statement "piVar3 = piVar7;" (assignment_expression "piVar3 = piVar7" identifier = identifier) ;) (expression_statement "piVar7 = piVar3 + 4;" (assignment_expression "piVar7 = piVar3 + 4" identifier = (binary_expression "piVar3 + 4" identifier + number_literal)) ;) (expression_statement "iVar13 = piVar3[1];" (assignment_expression "iVar13 = piVar3[1]" identifier = (subscript_expression "piVar3[1]" identifier [ number_literal ])) ;) (expression_statement "iVar16 = piVar3[2];" (assignment_expression "iVar16 = piVar3[2]" identifier = (subscript_expression "piVar3[2]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = piVar3[3];" (assignment_expression "iVar1 = piVar3[3]" identifier = (subscript_expression "piVar3[3]" identifier [ number_literal ])) ;) (expression_statement "*piVar4 = *piVar3;" (assignment_expression "*piVar4 = *piVar3" (pointer_expression "*piVar4" * identifier) = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "piVar4[1] = iVar13;" (assignment_expression "piVar4[1] = iVar13" (subscript_expression "piVar4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[2] = iVar16;" (assignment_expression "piVar4[2] = iVar16" (subscript_expression "piVar4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[3] = iVar1;" (assignment_expression "piVar4[3] = iVar1" (subscript_expression "piVar4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar8 = piVar4 + 4;" (assignment_expression "piVar8 = piVar4 + 4" identifier = (binary_expression "piVar4 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar7 != aiStack_120)" ( (binary_expression "piVar7 != aiStack_120" identifier != identifier) )) ;) (expression_statement "iVar16 = *(int *)(puVar6 + 0x1034);" (assignment_expression "iVar16 = *(int *)(puVar6 + 0x1034)" identifier = (pointer_expression "*(int *)(puVar6 + 0x1034)" * (cast_expression "(int *)(puVar6 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1034)" ( (binary_expression "puVar6 + 0x1034" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(puVar6 + 0x1038);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x1038)" identifier = (pointer_expression "*(int *)(puVar6 + 0x1038)" * (cast_expression "(int *)(puVar6 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1038)" ( (binary_expression "puVar6 + 0x1038" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = piVar3[5];" (assignment_expression "iVar14 = piVar3[5]" identifier = (subscript_expression "piVar3[5]" identifier [ number_literal ])) ;) (expression_statement "iVar13 = *(int *)(puVar6 + 0x103c);" (assignment_expression "iVar13 = *(int *)(puVar6 + 0x103c)" identifier = (pointer_expression "*(int *)(puVar6 + 0x103c)" * (cast_expression "(int *)(puVar6 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x103c)" ( (binary_expression "puVar6 + 0x103c" identifier + number_literal) ))))) ;) (expression_statement "piVar4[4] = *piVar7;" (assignment_expression "piVar4[4] = *piVar7" (subscript_expression "piVar4[4]" identifier [ number_literal ]) = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piVar4[5] = iVar14;" (assignment_expression "piVar4[5] = iVar14" (subscript_expression "piVar4[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar1 = *(int *)(iVar1 + iVar16 * 4);" (assignment_expression "iVar1 = *(int *)(iVar1 + iVar16 * 4)" identifier = (pointer_expression "*(int *)(iVar1 + iVar16 * 4)" * (cast_expression "(int *)(iVar1 + iVar16 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + iVar16 * 4)" ( (binary_expression "iVar1 + iVar16 * 4" identifier + (binary_expression "iVar16 * 4" identifier * number_literal)) ))))) ;) (if_statement "if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }" { (if_statement "if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" if (parenthesized_expression "(*(int *)(iVar1 + 0x50) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x50) != 0" (pointer_expression "*(int *)(iVar1 + 0x50)" * (cast_expression "(int *)(iVar1 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x50)" ( (binary_expression "iVar1 + 0x50" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" { (expression_statement "uVar2 = *(undefined4 *)(iVar1 + 0x94);" (assignment_expression "uVar2 = *(undefined4 *)(iVar1 + 0x94)" identifier = (pointer_expression "*(undefined4 *)(iVar1 + 0x94)" * (cast_expression "(undefined4 *)(iVar1 + 0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x94)" ( (binary_expression "iVar1 + 0x94" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = *(uint *)(iVar1 + 0x90);" (assignment_expression "uVar12 = *(uint *)(iVar1 + 0x90)" identifier = (pointer_expression "*(uint *)(iVar1 + 0x90)" * (cast_expression "(uint *)(iVar1 + 0x90)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x90)" ( (binary_expression "iVar1 + 0x90" identifier + number_literal) ))))) ;) (if_statement "if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" if (parenthesized_expression "(aiStack_170[2] == 0)" ( (binary_expression "aiStack_170[2] == 0" (subscript_expression "aiStack_170[2]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" { (expression_statement "uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" identifier = (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" * (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) })) (labeled_statement "LAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);" statement_identifier : (expression_statement "dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);" (assignment_expression "dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124)" identifier = (binary_expression "(double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124)" (cast_expression "(double)CONCAT44(uVar12,uVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar12,uVar2)" identifier (argument_list "(uVar12,uVar2)" ( identifier , identifier )))) - (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,uStack_124)" identifier (argument_list "(uStack_128,uStack_124)" ( identifier , identifier )))))) ;)) (expression_statement "uVar15 = SUB84(dVar24,0);" (assignment_expression "uVar15 = SUB84(dVar24,0)" identifier = (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal )))) ;) (if_statement "if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }" if (parenthesized_expression "(dVar24 < 0.0)" ( (binary_expression "dVar24 < 0.0" identifier < number_literal) )) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }" { (expression_statement "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar24 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dVar24 = -dVar24;" (assignment_expression "dVar24 = -dVar24" identifier = (unary_expression "-dVar24" - identifier)) ;) (expression_statement "uStack_174 = uVar15;" (assignment_expression "uStack_174 = uVar15" identifier = identifier) ;) })) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (if_statement "if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" if (parenthesized_expression "(dVar24 < *(double *)(iVar16 + 0x1a98))" ( (binary_expression "dVar24 < *(double *)(iVar16 + 0x1a98)" identifier < (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) ))))) )) (compound_statement "{\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" { (if_statement "if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }" if (parenthesized_expression "((double)CONCAT44(uVar12,uVar2) < 0.0)" ( (binary_expression "(double)CONCAT44(uVar12,uVar2) < 0.0" (cast_expression "(double)CONCAT44(uVar12,uVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar12,uVar2)" identifier (argument_list "(uVar12,uVar2)" ( identifier , identifier )))) < number_literal) )) (compound_statement "{\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }" { (expression_statement "uVar12 = uVar12 ^ 0x80000000;" (assignment_expression "uVar12 = uVar12 ^ 0x80000000" identifier = (binary_expression "uVar12 ^ 0x80000000" identifier ^ number_literal)) ;) (expression_statement "uStack_178 = uVar12;" (assignment_expression "uStack_178 = uVar12" identifier = identifier) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2))" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= (cast_expression "(double)CONCAT44(uVar12,uVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar12,uVar2)" identifier (argument_list "(uVar12,uVar2)" ( identifier , identifier ))))) )) (compound_statement "{\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }" { (if_statement "if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }" if (parenthesized_expression "((double)CONCAT44(uStack_128,uStack_124) < 0.0)" ( (binary_expression "(double)CONCAT44(uStack_128,uStack_124) < 0.0" (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,uStack_124)" identifier (argument_list "(uStack_128,uStack_124)" ( identifier , identifier )))) < number_literal) )) (compound_statement "{\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }" { (expression_statement "uStack_128 = uStack_128 ^ 0x80000000;" (assignment_expression "uStack_128 = uStack_128 ^ 0x80000000" identifier = (binary_expression "uStack_128 ^ 0x80000000" identifier ^ number_literal)) ;) (expression_statement "uStack_178 = uStack_128;" (assignment_expression "uStack_178 = uStack_128" identifier = identifier) ;) (expression_statement "uStack_174 = uStack_124;" (assignment_expression "uStack_174 = uStack_124" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124))" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,uStack_124)" identifier (argument_list "(uStack_128,uStack_124)" ( identifier , identifier ))))) )) (compound_statement "{\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }" { (expression_statement "dVar24 = *(double *)(iVar1 + 0x70);" (assignment_expression "dVar24 = *(double *)(iVar1 + 0x70)" identifier = (pointer_expression "*(double *)(iVar1 + 0x70)" * (cast_expression "(double *)(iVar1 + 0x70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x70)" ( (binary_expression "iVar1 + 0x70" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0006c398;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_0006c360;" goto statement_identifier ;) })) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;) })) (if_statement "if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" if (parenthesized_expression "(aiStack_170[2] != 0)" ( (binary_expression "aiStack_170[2] != 0" (subscript_expression "aiStack_170[2]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" { (expression_statement "uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" identifier = (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" * (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (goto_statement "goto LAB_0006c260;" goto statement_identifier ;) })) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "dVar24 = *(double *)(iVar1 + 0x70);" (assignment_expression "dVar24 = *(double *)(iVar1 + 0x70)" identifier = (pointer_expression "*(double *)(iVar1 + 0x70)" * (cast_expression "(double *)(iVar1 + 0x70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x70)" ( (binary_expression "iVar1 + 0x70" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0006c398:\n        dVar24 = dVar24 - dStack_148;" statement_identifier : (expression_statement "dVar24 = dVar24 - dStack_148;" (assignment_expression "dVar24 = dVar24 - dStack_148" identifier = (binary_expression "dVar24 - dStack_148" identifier - identifier)) ;)) (expression_statement "uVar2 = SUB84(dVar24,0);" (assignment_expression "uVar2 = SUB84(dVar24,0)" identifier = (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal )))) ;) (if_statement "if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }" if (parenthesized_expression "(dVar24 < 0.0)" ( (binary_expression "dVar24 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar24 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dVar24 = -dVar24;" (assignment_expression "dVar24 = -dVar24" identifier = (unary_expression "-dVar24" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dVar24)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dVar24" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (expression_statement "dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;" (assignment_expression "dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140" identifier = (binary_expression "*(double *)(iVar1 + 0x78) - dStack_140" (pointer_expression "*(double *)(iVar1 + 0x78)" * (cast_expression "(double *)(iVar1 + 0x78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x78)" ( (binary_expression "iVar1 + 0x78" identifier + number_literal) )))) - identifier)) ;) (expression_statement "uVar2 = SUB84(dStack_140,0);" (assignment_expression "uVar2 = SUB84(dStack_140,0)" identifier = (call_expression "SUB84(dStack_140,0)" identifier (argument_list "(dStack_140,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }" if (parenthesized_expression "(dStack_140 < 0.0)" ( (binary_expression "dStack_140 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_140 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_140 >> 0x20)" ( (binary_expression "(ulonglong)dStack_140 >> 0x20" (cast_expression "(ulonglong)dStack_140" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_140 = -dStack_140;" (assignment_expression "dStack_140 = -dStack_140" identifier = (unary_expression "-dStack_140" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_140)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_140" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (expression_statement "dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;" (assignment_expression "dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138" identifier = (binary_expression "*(double *)(iVar1 + 0x80) - dStack_138" (pointer_expression "*(double *)(iVar1 + 0x80)" * (cast_expression "(double *)(iVar1 + 0x80)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x80)" ( (binary_expression "iVar1 + 0x80" identifier + number_literal) )))) - identifier)) ;) (expression_statement "uVar2 = SUB84(dStack_138,0);" (assignment_expression "uVar2 = SUB84(dStack_138,0)" identifier = (call_expression "SUB84(dStack_138,0)" identifier (argument_list "(dStack_138,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }" if (parenthesized_expression "(dStack_138 < 0.0)" ( (binary_expression "dStack_138 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_138 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_138 >> 0x20)" ( (binary_expression "(ulonglong)dStack_138 >> 0x20" (cast_expression "(ulonglong)dStack_138" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_138 = -dStack_138;" (assignment_expression "dStack_138 = -dStack_138" identifier = (unary_expression "-dStack_138" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_138)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_138" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (if_statement "if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" if (parenthesized_expression "(*(int *)(iVar1 + 0x4c) == 2)" ( (binary_expression "*(int *)(iVar1 + 0x4c) == 2" (pointer_expression "*(int *)(iVar1 + 0x4c)" * (cast_expression "(int *)(iVar1 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x4c)" ( (binary_expression "iVar1 + 0x4c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" { (expression_statement "dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;" (assignment_expression "dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130" identifier = (binary_expression "*(double *)(iVar1 + 0x88) - dStack_130" (pointer_expression "*(double *)(iVar1 + 0x88)" * (cast_expression "(double *)(iVar1 + 0x88)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x88)" ( (binary_expression "iVar1 + 0x88" identifier + number_literal) )))) - identifier)) ;) (expression_statement "uVar2 = SUB84(dStack_130,0);" (assignment_expression "uVar2 = SUB84(dStack_130,0)" identifier = (call_expression "SUB84(dStack_130,0)" identifier (argument_list "(dStack_130,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }" if (parenthesized_expression "(dStack_130 < 0.0)" ( (binary_expression "dStack_130 < 0.0" identifier < number_literal) )) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_130 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_130 >> 0x20)" ( (binary_expression "(ulonglong)dStack_130 >> 0x20" (cast_expression "(ulonglong)dStack_130" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_130 = -dStack_130;" (assignment_expression "dStack_130 = -dStack_130" identifier = (unary_expression "-dStack_130" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_130)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_130" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) })) }) (else_clause "else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" else (compound_statement "{\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" { (labeled_statement "LAB_0006c2d0:\n        piVar7 = aiStack_118;" statement_identifier : (expression_statement "piVar7 = aiStack_118;" (assignment_expression "piVar7 = aiStack_118" identifier = identifier) ;)) (expression_statement "piVar8 = (int *)(iVar1 + 0x48);" (assignment_expression "piVar8 = (int *)(iVar1 + 0x48)" identifier = (cast_expression "(int *)(iVar1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x48)" ( (binary_expression "iVar1 + 0x48" identifier + number_literal) )))) ;) (do_statement "do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);" do (compound_statement "{\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        }" { (expression_statement "piVar4 = piVar8;" (assignment_expression "piVar4 = piVar8" identifier = identifier) ;) (expression_statement "piVar3 = piVar7;" (assignment_expression "piVar3 = piVar7" identifier = identifier) ;) (expression_statement "piVar7 = piVar3 + 4;" (assignment_expression "piVar7 = piVar3 + 4" identifier = (binary_expression "piVar3 + 4" identifier + number_literal)) ;) (expression_statement "iVar13 = piVar3[1];" (assignment_expression "iVar13 = piVar3[1]" identifier = (subscript_expression "piVar3[1]" identifier [ number_literal ])) ;) (expression_statement "iVar16 = piVar3[2];" (assignment_expression "iVar16 = piVar3[2]" identifier = (subscript_expression "piVar3[2]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = piVar3[3];" (assignment_expression "iVar1 = piVar3[3]" identifier = (subscript_expression "piVar3[3]" identifier [ number_literal ])) ;) (expression_statement "*piVar4 = *piVar3;" (assignment_expression "*piVar4 = *piVar3" (pointer_expression "*piVar4" * identifier) = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "piVar4[1] = iVar13;" (assignment_expression "piVar4[1] = iVar13" (subscript_expression "piVar4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[2] = iVar16;" (assignment_expression "piVar4[2] = iVar16" (subscript_expression "piVar4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[3] = iVar1;" (assignment_expression "piVar4[3] = iVar1" (subscript_expression "piVar4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar8 = piVar4 + 4;" (assignment_expression "piVar8 = piVar4 + 4" identifier = (binary_expression "piVar4 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar7 != aiStack_118 + 0x14)" ( (binary_expression "piVar7 != aiStack_118 + 0x14" identifier != (binary_expression "aiStack_118 + 0x14" identifier + number_literal)) )) ;) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = piVar3[5];" (assignment_expression "iVar1 = piVar3[5]" identifier = (subscript_expression "piVar3[5]" identifier [ number_literal ])) ;) (expression_statement "puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);" (assignment_expression "puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" identifier = (cast_expression "(undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" ( (binary_expression "*(int *)(pcStack_180 + -0x7f90) + 0x2838" (pointer_expression "*(int *)(pcStack_180 + -0x7f90)" * (cast_expression "(int *)(pcStack_180 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7f90)" ( (binary_expression "pcStack_180 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "piVar4[4] = *piVar7;" (assignment_expression "piVar4[4] = *piVar7" (subscript_expression "piVar4[4]" identifier [ number_literal ]) = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piVar4[5] = iVar1;" (assignment_expression "piVar4[5] = iVar1" (subscript_expression "piVar4[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_00062838(puVar6,iVar16 + -0xdc);" (call_expression "FUN_00062838(puVar6,iVar16 + -0xdc)" identifier (argument_list "(puVar6,iVar16 + -0xdc)" ( identifier , (binary_expression "iVar16 + -0xdc" identifier + number_literal) ))) ;) (expression_statement "FUN_00063d20(puVar6,param_1);" (call_expression "FUN_00063d20(puVar6,param_1)" identifier (argument_list "(puVar6,param_1)" ( identifier , identifier ))) ;) (expression_statement "FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);" (call_expression "FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224)" identifier (argument_list "(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224)" ( identifier , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x224" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }))) (labeled_statement "LAB_0006c360:\n      pcVar21 = pcStack_180;" statement_identifier : (expression_statement "pcVar21 = pcStack_180;" (assignment_expression "pcVar21 = pcStack_180" identifier = identifier) ;)) (if_statement "if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }" if (parenthesized_expression "(iStack_bc == *piVar5)" ( (binary_expression "iStack_bc == *piVar5" identifier == (pointer_expression "*piVar5" * identifier)) )) (compound_statement "{\n        return *piVar5;\n      }" { (return_statement "return *piVar5;" return (pointer_expression "*piVar5" * identifier) ;) })) }) (else_clause "else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" else (compound_statement "{\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" { (labeled_statement "LAB_0006c624:\n      puVar10 = unaff_s3;" statement_identifier : (expression_statement "puVar10 = unaff_s3;" (assignment_expression "puVar10 = unaff_s3" identifier = identifier) ;)) (expression_statement "(**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcVar21 + -0x78e0))" ( (pointer_expression "**(code **)(pcVar21 + -0x78e0)" * (pointer_expression "*(code **)(pcVar21 + -0x78e0)" * (cast_expression "(code **)(pcVar21 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x78e0)" ( (binary_expression "pcVar21 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4)" ( (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar21 + -0x7c74))();" (call_expression "(**(code **)(pcVar21 + -0x7c74))()" (parenthesized_expression "(**(code **)(pcVar21 + -0x7c74))" ( (pointer_expression "**(code **)(pcVar21 + -0x7c74)" * (pointer_expression "*(code **)(pcVar21 + -0x7c74)" * (cast_expression "(code **)(pcVar21 + -0x7c74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x7c74)" ( (binary_expression "pcVar21 + -0x7c74" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "puVar17 = puVar6;" (assignment_expression "puVar17 = puVar6" identifier = identifier) ;) (expression_statement "unaff_s3 = puVar10;" (assignment_expression "unaff_s3 = puVar10" identifier = identifier) ;) })) (expression_statement "uVar2 = 0x12c1;" (assignment_expression "uVar2 = 0x12c1" identifier = number_literal) ;) (expression_statement "pcVar19 = *(code **)(pcVar21 + -0x78e0);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + -0x78e0)" identifier = (pointer_expression "*(code **)(pcVar21 + -0x78e0)" * (cast_expression "(code **)(pcVar21 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x78e0)" ( (binary_expression "pcVar21 + -0x78e0" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;" (assignment_expression "iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4" identifier = (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar22 = DrawSetFillOpacity;" (assignment_expression "pcVar22 = DrawSetFillOpacity" identifier = identifier) ;) (expression_statement "piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);" (assignment_expression "piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954)" identifier = (cast_expression "(int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + -0x7fc4) + -0x954)" ( (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x954" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);" (call_expression "(*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcStack_1b0 = pcVar19 + 0xea988;" (assignment_expression "pcStack_1b0 = pcVar19 + 0xea988" identifier = (binary_expression "pcVar19 + 0xea988" identifier + number_literal)) ;) (expression_statement "dVar24 = (double)CONCAT44(uVar2,iVar1);" (assignment_expression "dVar24 = (double)CONCAT44(uVar2,iVar1)" identifier = (cast_expression "(double)CONCAT44(uVar2,iVar1)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar2,iVar1)" identifier (argument_list "(uVar2,iVar1)" ( identifier , identifier ))))) ;) (expression_statement "piStack_1e0 = param_1;" (assignment_expression "piStack_1e0 = param_1" identifier = identifier) ;) (expression_statement "piStack_1a8 = param_1;" (assignment_expression "piStack_1a8 = param_1" identifier = identifier) ;) (expression_statement "pcStack_1a4 = pcVar22;" (assignment_expression "pcStack_1a4 = pcVar22" identifier = identifier) ;) (if_statement "if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }" if (parenthesized_expression "(piVar7 != (int *)0x0)" ( (binary_expression "piVar7 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }" { (if_statement "if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" if (parenthesized_expression "(piVar7[0x415] == -0x54535255)" ( (binary_expression "piVar7[0x415] == -0x54535255" (subscript_expression "piVar7[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" { (if_statement "if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" if (parenthesized_expression "(piVar7[0x414] != 0)" ( (binary_expression "piVar7[0x414] != 0" (subscript_expression "piVar7[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" { (expression_statement "iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;" (assignment_expression "iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c" identifier = (binary_expression "*(int *)(pcVar19 + 0xe29b8) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe29b8)" * (cast_expression "(int *)(pcVar19 + 0xe29b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29b8)" ( (binary_expression "pcVar19 + 0xe29b8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "piStack_1b4 = piVar7 + 1;" (assignment_expression "piStack_1b4 = piVar7 + 1" identifier = (binary_expression "piVar7 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);" (call_expression "(**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2e10))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2e10)" * (pointer_expression "*(code **)(pcVar19 + 0xe2e10)" * (cast_expression "(code **)(pcVar19 + 0xe2e10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2e10)" ( (binary_expression "pcVar19 + 0xe2e10" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x998" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" identifier = (pointer_expression "*(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" * (cast_expression "(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x40e] + piVar7[0x40d] * 4)" ( (binary_expression "piVar7[0x40e] + piVar7[0x40d] * 4" (subscript_expression "piVar7[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar7[0x40d] * 4" (subscript_expression "piVar7[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));" (assignment_expression "dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" identifier = (cast_expression "(double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (binary_expression "dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1b0 + -0x7fd4)" * (cast_expression "(int *)(pcStack_1b0 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1b0 + -0x7fd4)" ( (binary_expression "pcStack_1b0 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ))))) ;) (if_statement "if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }" if (parenthesized_expression "((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25))" ( (binary_expression "(piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)" (parenthesized_expression "(piVar7[0x40f] == 0)" ( (binary_expression "piVar7[0x40f] == 0" (subscript_expression "piVar7[0x40f]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(*(double *)(iVar1 + 0x90) == dVar25)" ( (binary_expression "*(double *)(iVar1 + 0x90) == dVar25" (pointer_expression "*(double *)(iVar1 + 0x90)" * (cast_expression "(double *)(iVar1 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x90)" ( (binary_expression "iVar1 + 0x90" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar1;\n      }" { (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_1b0 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_1b0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1b0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1b0 + -0x7fc4)" ( (binary_expression "pcStack_1b0 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "*(double *)(iVar1 + 0x90) = dVar25;" (assignment_expression "*(double *)(iVar1 + 0x90) = dVar25" (pointer_expression "*(double *)(iVar1 + 0x90)" * (cast_expression "(double *)(iVar1 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x90)" ( (binary_expression "iVar1 + 0x90" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));" (assignment_expression "iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier = (call_expression "FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier (argument_list "(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" ( identifier , (binary_expression "iVar16 + -0xd4" identifier + number_literal) , (cast_expression "(int)((ulonglong)dVar24 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);" (call_expression "(**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe30a8))" ( (pointer_expression "**(code **)(pcVar19 + 0xe30a8)" * (pointer_expression "*(code **)(pcVar19 + 0xe30a8)" * (cast_expression "(code **)(pcVar19 + 0xe30a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe30a8)" ( (binary_expression "pcVar19 + 0xe30a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac)" ( (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piStack_1e0 = piVar7;" (assignment_expression "piStack_1e0 = piVar7" identifier = identifier) ;) })) (expression_statement "uVar2 = 0x12f1;" (assignment_expression "uVar2 = 0x12f1" identifier = number_literal) ;) (expression_statement "pcVar22 = *(code **)(pcVar19 + 0xe30a8);" (assignment_expression "pcVar22 = *(code **)(pcVar19 + 0xe30a8)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe30a8)" * (cast_expression "(code **)(pcVar19 + 0xe30a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe30a8)" ( (binary_expression "pcVar19 + 0xe30a8" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac" identifier = (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar23 = DrawSetFontResolution;" (assignment_expression "pcVar23 = DrawSetFontResolution" identifier = identifier) ;) (expression_statement "piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);" (assignment_expression "piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954)" identifier = (cast_expression "(int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar19 + 0xe29c4) + -0x954)" ( (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);" (call_expression "(*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar21 = pcVar22 + 0xea838;" (assignment_expression "pcVar21 = pcVar22 + 0xea838" identifier = (binary_expression "pcVar22 + 0xea838" identifier + number_literal)) ;) (expression_statement "puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);" (assignment_expression "puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04)" identifier = (pointer_expression "*(undefined4 **)(pcVar22 + 0xe2d04)" * (cast_expression "(undefined4 **)(pcVar22 + 0xe2d04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2d04)" ( (binary_expression "pcVar22 + 0xe2d04" identifier + number_literal) ))))) ;) (expression_statement "piStack_1e4 = (int *)*puVar18;" (assignment_expression "piStack_1e4 = (int *)*puVar18" identifier = (cast_expression "(int *)*puVar18" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) ;) (expression_statement "uVar27 = CONCAT44(uVar2,iVar1);" (assignment_expression "uVar27 = CONCAT44(uVar2,iVar1)" identifier = (call_expression "CONCAT44(uVar2,iVar1)" identifier (argument_list "(uVar2,iVar1)" ( identifier , identifier )))) ;) (expression_statement "piVar7 = piStack_1e0;" (assignment_expression "piVar7 = piStack_1e0" identifier = identifier) ;) (expression_statement "pcStack_11f0 = pcVar21;" (assignment_expression "pcStack_11f0 = pcVar21" identifier = identifier) ;) (expression_statement "piStack_1dc = piVar5;" (assignment_expression "piStack_1dc = piVar5" identifier = identifier) ;) (expression_statement "puStack_1d8 = puVar17;" (assignment_expression "puStack_1d8 = puVar17" identifier = identifier) ;) (expression_statement "pcStack_1d4 = pcVar23;" (assignment_expression "pcStack_1d4 = pcVar23" identifier = identifier) ;) (expression_statement "dStack_1d0 = dVar24;" (assignment_expression "dStack_1d0 = dVar24" identifier = identifier) ;) (if_statement "if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(piVar8 == (int *)0x0)" ( (binary_expression "piVar8 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }" { (labeled_statement "LAB_0006c904:\n    iVar16 = 0x131f;" statement_identifier : (expression_statement "iVar16 = 0x131f;" (assignment_expression "iVar16 = 0x131f" identifier = number_literal) ;)) (expression_statement "iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;" (assignment_expression "iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980" identifier = (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);" (assignment_expression "piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954)" identifier = (cast_expression "(int *)(*(int *)(pcVar22 + 0xe2874) + -0x954)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0xe2874) + -0x954)" ( (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x954" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);" (call_expression "(**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2f58))" ( (pointer_expression "**(code **)(pcVar22 + 0xe2f58)" * (pointer_expression "*(code **)(pcVar22 + 0xe2f58)" * (cast_expression "(code **)(pcVar22 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2f58)" ( (binary_expression "pcVar22 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" { (expression_statement "piVar7 = piVar8;" (assignment_expression "piVar7 = piVar8" identifier = identifier) ;) (if_statement "if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" if (parenthesized_expression "(piVar8[0x415] != -0x54535255)" ( (binary_expression "piVar8[0x415] != -0x54535255" (subscript_expression "piVar8[0x415]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" { (expression_statement "(**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);" (call_expression "(**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2f58))" ( (pointer_expression "**(code **)(pcVar22 + 0xe2f58)" * (pointer_expression "*(code **)(pcVar22 + 0xe2f58)" * (cast_expression "(code **)(pcVar22 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2f58)" ( (binary_expression "pcVar22 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) (goto_statement "goto LAB_0006c904;" goto statement_identifier ;) })) (if_statement "if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }" if (parenthesized_expression "(piVar8[0x414] != 0)" ( (binary_expression "piVar8[0x414] != 0" (subscript_expression "piVar8[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }" { (expression_statement "iVar1 = 0x1322;" (assignment_expression "iVar1 = 0x1322" identifier = number_literal) ;) (expression_statement "uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);" (assignment_expression "uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" identifier = (call_expression "CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" identifier (argument_list "(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" ( (binary_expression "*(int *)(pcVar22 + 0xe2868) + -0x131c" (pointer_expression "*(int *)(pcVar22 + 0xe2868)" * (cast_expression "(int *)(pcVar22 + 0xe2868)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2868)" ( (binary_expression "pcVar22 + 0xe2868" identifier + number_literal) )))) + number_literal) , (binary_expression "piVar8 + 1" identifier + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);" (call_expression "(**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2cc0))" ( (pointer_expression "**(code **)(pcVar22 + 0xe2cc0)" * (pointer_expression "*(code **)(pcVar22 + 0xe2cc0)" * (cast_expression "(code **)(pcVar22 + 0xe2cc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2cc0)" ( (binary_expression "pcVar22 + 0xe2cc0" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968)" ( number_literal , (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x968" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "piVar5 = aiStack_11e4;" (assignment_expression "piVar5 = aiStack_11e4" identifier = identifier) ;) (expression_statement "iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;" (assignment_expression "iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" identifier = (binary_expression "*(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" (pointer_expression "*(int *)(pcStack_11f0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_11f0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_11f0 + -0x7fc4)" ( (binary_expression "pcStack_11f0 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uStack_1200 = uVar27;" (assignment_expression "uStack_1200 = uVar27" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);" (call_expression "(**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x7e80))" ( (pointer_expression "**(code **)(pcStack_11f0 + -0x7e80)" * (pointer_expression "*(code **)(pcStack_11f0 + -0x7e80)" * (cast_expression "(code **)(pcStack_11f0 + -0x7e80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_11f0 + -0x7e80)" ( (binary_expression "pcStack_11f0 + -0x7e80" identifier + number_literal) ))))) )) (argument_list "(piVar5,0x1000)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);" (call_expression "(**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x79d0))" ( (pointer_expression "**(code **)(pcStack_11f0 + -0x79d0)" * (pointer_expression "*(code **)(pcStack_11f0 + -0x79d0)" * (cast_expression "(code **)(pcStack_11f0 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_11f0 + -0x79d0)" ( (binary_expression "pcStack_11f0 + -0x79d0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5)" ( (binary_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290" (pointer_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" * (cast_expression "(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (binary_expression "piVar8[0x40e] + piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40d]" identifier [ number_literal ]) * number_literal)) )))) + number_literal) , identifier ))) ;) (expression_statement "piVar8 = piStack_1e4;" (assignment_expression "piVar8 = piStack_1e4" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_11f0;" (assignment_expression "pcVar21 = pcStack_11f0" identifier = identifier) ;) (if_statement "if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }" if (parenthesized_expression "(piStack_1e4 == (int *)*puVar18)" ( (binary_expression "piStack_1e4 == (int *)*puVar18" identifier == (cast_expression "(int *)*puVar18" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "pcVar21 = *(code **)(pcVar21 + -0x7c74);" (assignment_expression "pcVar21 = *(code **)(pcVar21 + -0x7c74)" identifier = (pointer_expression "*(code **)(pcVar21 + -0x7c74)" * (cast_expression "(code **)(pcVar21 + -0x7c74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x7c74)" ( (binary_expression "pcVar21 + -0x7c74" identifier + number_literal) ))))) ;) (expression_statement "pcVar19 = DrawSetOpacity;" (assignment_expression "pcVar19 = DrawSetOpacity" identifier = identifier) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_1228 = pcVar21 + 0xea6cc;" (assignment_expression "pcStack_1228 = pcVar21 + 0xea6cc" identifier = (binary_expression "pcVar21 + 0xea6cc" identifier + number_literal)) ;) (expression_statement "dVar24 = (double)CONCAT44(iVar16,iVar1);" (assignment_expression "dVar24 = (double)CONCAT44(iVar16,iVar1)" identifier = (cast_expression "(double)CONCAT44(iVar16,iVar1)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(iVar16,iVar1)" identifier (argument_list "(iVar16,iVar1)" ( identifier , identifier ))))) ;) (expression_statement "piStack_1254 = piVar7;" (assignment_expression "piStack_1254 = piVar7" identifier = identifier) ;) (expression_statement "piStack_1220 = piVar7;" (assignment_expression "piStack_1220 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_121c = pcVar19;" (assignment_expression "pcStack_121c = pcVar19" identifier = identifier) ;) (expression_statement "uStack_1218 = uVar27;" (assignment_expression "uStack_1218 = uVar27" identifier = identifier) ;) (if_statement "if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }" if (parenthesized_expression "(piVar8 != (int *)0x0)" ( (binary_expression "piVar8 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }" { (if_statement "if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" if (parenthesized_expression "(piVar8[0x415] == -0x54535255)" ( (binary_expression "piVar8[0x415] == -0x54535255" (subscript_expression "piVar8[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" { (if_statement "if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }" if (parenthesized_expression "(piVar8[0x414] != 0)" ( (binary_expression "piVar8[0x414] != 0" (subscript_expression "piVar8[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }" { (expression_statement "iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;" (assignment_expression "iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c" identifier = (binary_expression "*(int *)(pcVar21 + 0xe26fc) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe26fc)" * (cast_expression "(int *)(pcVar21 + 0xe26fc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe26fc)" ( (binary_expression "pcVar21 + 0xe26fc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "piStack_122c = piVar8 + 1;" (assignment_expression "piStack_122c = piVar8 + 1" identifier = (binary_expression "piVar8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2b54))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2b54)" * (pointer_expression "*(code **)(pcVar21 + 0xe2b54)" * (cast_expression "(code **)(pcVar21 + 0xe2b54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2b54)" ( (binary_expression "pcVar21 + 0xe2b54" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" identifier = (pointer_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" * (cast_expression "(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (binary_expression "piVar8[0x40e] + piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));" (assignment_expression "fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" identifier = (cast_expression "(float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" ( (binary_expression "dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1228 + -0x7fd4)" * (cast_expression "(int *)(pcStack_1228 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1228 + -0x7fd4)" ( (binary_expression "pcStack_1228 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (if_statement "if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }" if (parenthesized_expression "((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26))" ( (binary_expression "(piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)" (parenthesized_expression "(piVar8[0x40f] == 0)" ( (binary_expression "piVar8[0x40f] == 0" (subscript_expression "piVar8[0x40f]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(*(float *)(iVar1 + 0x2cc) == fVar26)" ( (binary_expression "*(float *)(iVar1 + 0x2cc) == fVar26" (pointer_expression "*(float *)(iVar1 + 0x2cc)" * (cast_expression "(float *)(iVar1 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2cc)" ( (binary_expression "iVar1 + 0x2cc" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar1;\n      }" { (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar16 = *(int *)(pcStack_1228 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_1228 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_1228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1228 + -0x7fc4)" ( (binary_expression "pcStack_1228 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "*(float *)(iVar1 + 0x2cc) = fVar26;" (assignment_expression "*(float *)(iVar1 + 0x2cc) = fVar26" (pointer_expression "*(float *)(iVar1 + 0x2cc)" * (cast_expression "(float *)(iVar1 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2cc)" ( (binary_expression "iVar1 + 0x2cc" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));" (assignment_expression "iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier = (call_expression "FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier (argument_list "(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" ( identifier , (binary_expression "iVar16 + -0xb4" identifier + number_literal) , (cast_expression "(int)((ulonglong)dVar24 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2dec))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2dec)" * (pointer_expression "*(code **)(pcVar21 + 0xe2dec)" * (cast_expression "(code **)(pcVar21 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2dec)" ( (binary_expression "pcVar21 + 0xe2dec" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958)" ( (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piStack_1254 = piVar8;" (assignment_expression "piStack_1254 = piVar8" identifier = identifier) ;) })) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe2dec);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe2dec)" identifier = (pointer_expression "*(code **)(pcVar21 + 0xe2dec)" * (cast_expression "(code **)(pcVar21 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2dec)" ( (binary_expression "pcVar21 + 0xe2dec" identifier + number_literal) ))))) ;) (expression_statement "pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);" (assignment_expression "pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar21 + 0xe2708) + -0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0xe2708) + -0x970)" ( (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar22 = DrawSetFillPatternURL;" (assignment_expression "pcVar22 = DrawSetFillPatternURL" identifier = identifier) ;) (expression_statement "iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954" identifier = (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);" (call_expression "(*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar7 = *(int **)(pcVar19 + 0xe2a4c);" (assignment_expression "piVar7 = *(int **)(pcVar19 + 0xe2a4c)" identifier = (pointer_expression "*(int **)(pcVar19 + 0xe2a4c)" * (cast_expression "(int **)(pcVar19 + 0xe2a4c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2a4c)" ( (binary_expression "pcVar19 + 0xe2a4c" identifier + number_literal) ))))) ;) (expression_statement "iStack_125c = *piVar7;" (assignment_expression "iStack_125c = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piStack_1250 = piVar5;" (assignment_expression "piStack_1250 = piVar5" identifier = identifier) ;) (expression_statement "puStack_124c = puVar18;" (assignment_expression "puStack_124c = puVar18" identifier = identifier) ;) (expression_statement "puStack_1248 = unaff_s3;" (assignment_expression "puStack_1248 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_1244 = pcVar22;" (assignment_expression "pcStack_1244 = pcVar22" identifier = identifier) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) == 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "iVar16 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar16 = *(int *)(&DAT_00001004 + iVar1)" identifier = (pointer_expression "*(int *)(&DAT_00001004 + iVar1)" * (cast_expression "(int *)(&DAT_00001004 + iVar1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001004 + iVar1)" ( (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" & identifier) + identifier) ))))) ;) }) (else_clause "else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" else (compound_statement "{\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "(**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);" (call_expression "(**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2a08))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2a08)" * (pointer_expression "*(code **)(pcVar19 + 0xe2a08)" * (cast_expression "(code **)(pcVar19 + 0xe2a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2a08)" ( (binary_expression "pcVar19 + 0xe2a08" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe25b0)" * (cast_expression "(int *)(pcVar19 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25b0)" ( (binary_expression "pcVar19 + 0xe25b0" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar16 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar16 = *(int *)(&DAT_00001004 + iVar1)" identifier = (pointer_expression "*(int *)(&DAT_00001004 + iVar1)" * (cast_expression "(int *)(&DAT_00001004 + iVar1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001004 + iVar1)" ( (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" & identifier) + identifier) ))))) ;) }))) (if_statement "if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" if (parenthesized_expression "(iVar16 == 0)" ( (binary_expression "iVar16 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);" (call_expression "(**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe283c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe283c)" * (pointer_expression "*(code **)(pcVar19 + 0xe283c)" * (cast_expression "(code **)(pcVar19 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe283c)" ( (binary_expression "pcVar19 + 0xe283c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" ( (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001008 + iVar1)" ( (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" & identifier) + identifier) )))) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" * (cast_expression "(int *)(pcVar19 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25ac)" ( (binary_expression "pcVar19 + 0xe25ac" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }" if (parenthesized_expression "(pcVar11 != (char *)0x0)" ( (binary_expression "pcVar11 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }" { (expression_statement "iVar13 = *(int *)(pcVar19 + 0xe25ac);" (assignment_expression "iVar13 = *(int *)(pcVar19 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" * (cast_expression "(int *)(pcVar19 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25ac)" ( (binary_expression "pcVar19 + 0xe25ac" identifier + number_literal) ))))) ;) (if_statement "if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" if (parenthesized_expression "(*pcVar11 == '#')" ( (binary_expression "*pcVar11 == '#'" (pointer_expression "*pcVar11" * identifier) == (char_literal "'#'" ' character ')) )) (compound_statement "{\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }" { (expression_statement "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);" (call_expression "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2700)" * (pointer_expression "*(code **)(pcVar19 + 0xe2700)" * (cast_expression "(code **)(pcVar19 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2700)" ( (binary_expression "pcVar19 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe25b0)" * (cast_expression "(int *)(pcVar19 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25b0)" ( (binary_expression "pcVar19 + 0xe25b0" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar11 + 1" identifier + number_literal) ))) ;) (expression_statement "iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);" (assignment_expression "iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" identifier = (call_expression "(**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2bc8))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2bc8)" * (pointer_expression "*(code **)(pcVar19 + 0xe2bc8)" * (cast_expression "(code **)(pcVar19 + 0xe2bc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2bc8)" ( (binary_expression "pcVar19 + 0xe2bc8" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" ( (pointer_expression "*(undefined4 *)(&DAT_00001004 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001004 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001004 + iVar1)" ( (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" & identifier) + identifier) )))) , identifier )))) ;) (if_statement "if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" if (parenthesized_expression "(iVar16 == 0)" ( (binary_expression "iVar16 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" { (expression_statement "iVar13 = *(int *)(pcVar19 + 0xe25ac);" (assignment_expression "iVar13 = *(int *)(pcVar19 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" * (cast_expression "(int *)(pcVar19 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25ac)" ( (binary_expression "pcVar19 + 0xe25ac" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = 0x1386;" (assignment_expression "uVar15 = 0x1386" identifier = number_literal) ;) (expression_statement "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1)" identifier = (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001008 + iVar1)" ( (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" & identifier) + identifier) ))))) ;) (expression_statement "iVar14 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar14 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe283c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe283c)" * (cast_expression "(code **)(pcVar19 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe283c)" ( (binary_expression "pcVar19 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (goto_statement "goto LAB_0006cb28;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);" (call_expression "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2700)" * (pointer_expression "*(code **)(pcVar19 + 0xe2700)" * (cast_expression "(code **)(pcVar19 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2700)" ( (binary_expression "pcVar19 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }" if (parenthesized_expression "(*(double *)(iVar16 + 0x90) != 0.0)" ( (binary_expression "*(double *)(iVar16 + 0x90) != 0.0" (pointer_expression "*(double *)(iVar16 + 0x90)" * (cast_expression "(double *)(iVar16 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x90)" ( (binary_expression "iVar16 + 0x90" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }" { (expression_statement "*(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);" (assignment_expression "*(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc)" (pointer_expression "*(double *)(iVar16 + 0x90)" * (cast_expression "(double *)(iVar16 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x90)" ( (binary_expression "iVar16 + 0x90" identifier + number_literal) )))) = (cast_expression "(double)*(float *)(iVar16 + 0x2cc)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar16 + 0x2cc)" * (cast_expression "(float *)(iVar16 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x2cc)" ( (binary_expression "iVar16 + 0x2cc" identifier + number_literal) )))))) ;) })) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "FUN_00062838(iVar1,iVar16,auStack_225c);" (call_expression "FUN_00062838(iVar1,iVar16,auStack_225c)" identifier (argument_list "(iVar1,iVar16,auStack_225c)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) }) (else_clause "else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" else (compound_statement "{\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" { (expression_statement "uVar15 = 0x1380;" (assignment_expression "uVar15 = 0x1380" identifier = number_literal) ;) (expression_statement "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1)" identifier = (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001008 + iVar1)" ( (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" & identifier) + identifier) ))))) ;) (expression_statement "iVar14 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar14 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe283c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe283c)" * (cast_expression "(code **)(pcVar19 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe283c)" ( (binary_expression "pcVar19 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0006cb28:\n          iVar16 = iVar16 + -0x970;" statement_identifier : (expression_statement "iVar16 = iVar16 + -0x970;" (assignment_expression "iVar16 = iVar16 + -0x970" identifier = (binary_expression "iVar16 + -0x970" identifier + number_literal)) ;)) (expression_statement "(*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);" (call_expression "(*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11)" ( identifier , identifier , (binary_expression "iVar14 + 0x918" identifier + number_literal) , identifier , number_literal , identifier , (binary_expression "iVar13 + 0x5cf4" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) }))) (expression_statement "iVar1 = iStack_125c;" (assignment_expression "iVar1 = iStack_125c" identifier = identifier) ;) (if_statement "if (iStack_125c == *piVar7) {\n          return iVar13;\n        }" if (parenthesized_expression "(iStack_125c == *piVar7)" ( (binary_expression "iStack_125c == *piVar7" identifier == (pointer_expression "*piVar7" * identifier)) )) (compound_statement "{\n          return iVar13;\n        }" { (return_statement "return iVar13;" return identifier ;) })) (goto_statement "goto LAB_0006cd54;" goto statement_identifier ;) })) }) (else_clause "else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" else (compound_statement "{\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" { (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" * (cast_expression "(code **)(pcVar19 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2ca0)" ( (binary_expression "pcVar19 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" * (cast_expression "(code **)(pcVar19 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2ca0)" ( (binary_expression "pcVar19 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" * (cast_expression "(code **)(pcVar19 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2ca0)" ( (binary_expression "pcVar19 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe290c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe290c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe290c)" * (cast_expression "(code **)(pcVar19 + 0xe290c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe290c)" ( (binary_expression "pcVar19 + 0xe290c" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2728))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2728)" * (pointer_expression "*(code **)(pcVar21 + 0xe2728)" * (cast_expression "(code **)(pcVar21 + 0xe2728)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2728)" ( (binary_expression "pcVar21 + 0xe2728" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe22d0)" * (cast_expression "(int *)(pcVar21 + 0xe22d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22d0)" ( (binary_expression "pcVar21 + 0xe22d0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }" if (parenthesized_expression "((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16))" ( (binary_expression "(*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)" (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" * (cast_expression "(int *)(iVar1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x103c)" ( (binary_expression "iVar1 + 0x103c" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(iVar13 + 0x240) == iVar16)" ( (binary_expression "*(int *)(iVar13 + 0x240) == iVar16" (pointer_expression "*(int *)(iVar13 + 0x240)" * (cast_expression "(int *)(iVar13 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x240)" ( (binary_expression "iVar13 + 0x240" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar13;\n      }" { (return_statement "return iVar13;" return identifier ;) })) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe2408);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe2408)" identifier = (pointer_expression "*(code **)(pcVar21 + 0xe2408)" * (cast_expression "(code **)(pcVar21 + 0xe2408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2408)" ( (binary_expression "pcVar21 + 0xe2408" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(iVar13 + 0x240) = iVar16;" (assignment_expression "*(int *)(iVar13 + 0x240) = iVar16" (pointer_expression "*(int *)(iVar13 + 0x240)" * (cast_expression "(int *)(iVar13 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x240)" ( (binary_expression "iVar13 + 0x240" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar2 = (*pcVar19)(0x1a,iVar16);" (assignment_expression "uVar2 = (*pcVar19)(0x1a,iVar16)" identifier = (call_expression "(*pcVar19)(0x1a,iVar16)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(0x1a,iVar16)" ( number_literal , identifier )))) ;) (expression_statement "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);" (assignment_expression "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" identifier = (call_expression "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" identifier (argument_list "(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" ( identifier , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe29c0))" ( (pointer_expression "**(code **)(pcVar21 + 0xe29c0)" * (pointer_expression "*(code **)(pcVar21 + 0xe29c0)" * (cast_expression "(code **)(pcVar21 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe29c0)" ( (binary_expression "pcVar21 + 0xe29c0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908)" ( (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe29c0);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe29c0)" identifier = (pointer_expression "*(code **)(pcVar21 + 0xe29c0)" * (cast_expression "(code **)(pcVar21 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe29c0)" ( (binary_expression "pcVar21 + 0xe29c0" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970" identifier = (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954" identifier = (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);" (call_expression "(*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe25e4))" ( (pointer_expression "**(code **)(pcVar19 + 0xe25e4)" * (pointer_expression "*(code **)(pcVar19 + 0xe25e4)" * (cast_expression "(code **)(pcVar19 + 0xe25e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe25e4)" ( (binary_expression "pcVar19 + 0xe25e4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe218c)" * (cast_expression "(int *)(pcVar19 + 0xe218c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe218c)" ( (binary_expression "pcVar19 + 0xe218c" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }" if (parenthesized_expression "(iVar16 != 0)" ( (binary_expression "iVar16 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }" { (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }" if (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" * (cast_expression "(int *)(iVar1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x103c)" ( (binary_expression "iVar1 + 0x103c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }" { (expression_statement "iVar14 = *(int *)(iVar13 + 0x264);" (assignment_expression "iVar14 = *(int *)(iVar13 + 0x264)" identifier = (pointer_expression "*(int *)(iVar13 + 0x264)" * (cast_expression "(int *)(iVar13 + 0x264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x264)" ( (binary_expression "iVar13 + 0x264" identifier + number_literal) ))))) ;) (if_statement "if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }" if (parenthesized_expression "((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0))" ( (binary_expression "(iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)" (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)" ( (comma_expression "iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0" (assignment_expression "iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16)" identifier = (call_expression "(**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2544))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2544)" * (pointer_expression "*(code **)(pcVar19 + 0xe2544)" * (cast_expression "(code **)(pcVar19 + 0xe2544)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2544)" ( (binary_expression "pcVar19 + 0xe2544" identifier + number_literal) ))))) )) (argument_list "(iVar14,iVar16)" ( identifier , identifier )))) , (binary_expression "iVar14 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);" (call_expression "(**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe278c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe278c)" * (pointer_expression "*(code **)(pcVar19 + 0xe278c)" * (cast_expression "(code **)(pcVar19 + 0xe278c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe278c)" ( (binary_expression "pcVar19 + 0xe278c" identifier + number_literal) ))))) )) (argument_list "(iVar13 + 0x264,iVar16)" ( (binary_expression "iVar13 + 0x264" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16)" identifier (argument_list "(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16)" ( identifier , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe287c)" * (pointer_expression "*(code **)(pcVar19 + 0xe287c)" * (cast_expression "(code **)(pcVar19 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe287c)" ( (binary_expression "pcVar19 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe287c)" * (pointer_expression "*(code **)(pcVar19 + 0xe287c)" * (cast_expression "(code **)(pcVar19 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe287c)" ( (binary_expression "pcVar19 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe287c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe287c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe287c)" * (cast_expression "(code **)(pcVar19 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe287c)" ( (binary_expression "pcVar19 + 0xe287c" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970" identifier = (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954" identifier = (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2704)" * (pointer_expression "*(code **)(pcVar21 + 0xe2704)" * (cast_expression "(code **)(pcVar21 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2704)" ( (binary_expression "pcVar21 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" { (expression_statement "(**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe246c))" ( (pointer_expression "**(code **)(pcVar21 + 0xe246c)" * (pointer_expression "*(code **)(pcVar21 + 0xe246c)" * (cast_expression "(code **)(pcVar21 + 0xe246c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe246c)" ( (binary_expression "pcVar21 + 0xe246c" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe2014)" * (cast_expression "(int *)(pcVar21 + 0xe2014)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2014)" ( (binary_expression "pcVar21 + 0xe2014" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }" if (parenthesized_expression "(iVar16 != 0)" ( (binary_expression "iVar16 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }" { (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" * (cast_expression "(int *)(iVar1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x103c)" ( (binary_expression "iVar1 + 0x103c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }" { (expression_statement "iVar14 = *(int *)(iVar13 + 0x26c);" (assignment_expression "iVar14 = *(int *)(iVar13 + 0x26c)" identifier = (pointer_expression "*(int *)(iVar13 + 0x26c)" * (cast_expression "(int *)(iVar13 + 0x26c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x26c)" ( (binary_expression "iVar13 + 0x26c" identifier + number_literal) ))))) ;) (if_statement "if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }" if (parenthesized_expression "((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           )" ( (binary_expression "(iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)" (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)" ( (comma_expression "iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0" (assignment_expression "iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe23cc))" ( (pointer_expression "**(code **)(pcVar21 + 0xe23cc)" * (pointer_expression "*(code **)(pcVar21 + 0xe23cc)" * (cast_expression "(code **)(pcVar21 + 0xe23cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe23cc)" ( (binary_expression "pcVar21 + 0xe23cc" identifier + number_literal) ))))) )) (argument_list "(iVar14,iVar16)" ( identifier , identifier )))) , (binary_expression "iVar14 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);" (call_expression "(**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2614))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2614)" * (pointer_expression "*(code **)(pcVar21 + 0xe2614)" * (cast_expression "(code **)(pcVar21 + 0xe2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2614)" ( (binary_expression "pcVar21 + 0xe2614" identifier + number_literal) ))))) )) (argument_list "(iVar13 + 0x26c,iVar16)" ( (binary_expression "iVar13 + 0x26c" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16)" identifier (argument_list "(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16)" ( identifier , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2704)" * (pointer_expression "*(code **)(pcVar21 + 0xe2704)" * (cast_expression "(code **)(pcVar21 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2704)" ( (binary_expression "pcVar21 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2704)" * (pointer_expression "*(code **)(pcVar21 + 0xe2704)" * (cast_expression "(code **)(pcVar21 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2704)" ( (binary_expression "pcVar21 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit "/* WARNING: Enum "GravityType": Some values do not have unique names */\n/* WARNING: Enum "DisposeType": Some values do not have unique names */\n/* WARNING: Enum "ChannelType": Some values do not have unique names */\n/* WARNING: Enum "PixelChannel": Some values do not have unique names */\n/* WARNING: Enum "ExceptionType": Some values do not have unique names */\n/* WARNING: Enum "ComplianceType": Some values do not have unique names */\n\nvoid DrawSetClipUnits(DrawingWand *wand,ClipPathUnits clip_units)\n\n{\n  PixelInfo *pPVar1;\n  int iVar2;\n  DrawInfo *pDVar3;\n  undefined4 uVar4;\n  ClassType *pCVar5;\n  ClassType *pCVar6;\n  Image *pIVar7;\n  PixelInfo *pPVar8;\n  DrawingWand *pDVar9;\n  char *pcVar10;\n  DrawInfo **ppDVar11;\n  DrawingWand *pDVar12;\n  DrawingWand *pDVar13;\n  ExceptionInfo *pEVar14;\n  undefined *puVar15;\n  AffineMatrix *pAVar16;\n  ClassType CVar17;\n  size_t sVar18;\n  int iVar19;\n  char *format;\n  ClassType CVar20;\n  MagickBooleanType MVar21;\n  uint uVar22;\n  int iVar23;\n  int iVar24;\n  ClassType CVar25;\n  DrawingWand *unaff_s0;\n  undefined *unaff_s1;\n  int *piVar26;\n  int *piVar27;\n  int *piVar28;\n  AffineMatrix *unaff_s3;\n  undefined *puVar29;\n  code *pcVar30;\n  undefined *puVar31;\n  code *pcVar32;\n  code *pcVar33;\n  code *pcVar34;\n  double dVar35;\n  undefined4 uVar37;\n  double dVar36;\n  float fVar38;\n  undefined8 uVar39;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  DrawingWand *pDStack_125c;\n  DrawingWand *pDStack_1254;\n  int *piStack_1250;\n  int *piStack_124c;\n  AffineMatrix *pAStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  char *pcStack_122c;\n  code *pcStack_1228;\n  DrawingWand *pDStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  DrawingWand *pDStack_1e4;\n  DrawingWand *pDStack_1e0;\n  int *piStack_1dc;\n  DrawingWand *pDStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  char *pcStack_1b4;\n  code *pcStack_1b0;\n  DrawingWand *pDStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  char *pcStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  char acStack_174 [4];\n  size_t asStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  char acStack_124 [12];\n  ClassType aCStack_118 [23];\n  int iStack_bc;\n  DrawingWand *pDStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  AffineMatrix *pAStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  DrawingWand *pDStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  char *local_5c;\n  AffineMatrix affine;\n  \n  pDVar13 = (DrawingWand *)PTR___stack_chk_guard_0014f4cc;\n  iVar2 = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (wand == (DrawingWand *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    wand = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar15 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar32 = DrawSetDensity;\n  pDVar9 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar29 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)\n  ;\n  puVar31 = puVar29 + 0xeb02c;\n  puStack_78 = (undefined *)pDVar13;\n  puStack_88 = puVar31;\n  pDStack_80 = wand;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar32;\n  if (pDVar9 == (DrawingWand *)0x0) {\n    iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2);\nLAB_0006c128:\n    iVar2 = iVar2 + 0x9f8;\n    (**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar2 = *(int *)(puStack_88 + -0x7fc4);\n    wand = pDVar9;\n    unaff_s1 = puVar15;\n    puVar31 = puStack_88;\n    if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar30 = *(code **)(puVar31 + -0x78e0);\n  pAVar16 = (AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970);\n  pcVar33 = DrawSetFillColor;\n  pDVar9 = (DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c);\n  (*pcVar30)(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8);\n  pcVar32 = pcVar30 + 0xeae9c;\n  piVar26 = *(int **)(pcVar30 + 0xe3368);\n  puStack_ac = (undefined *)pDVar13;\n  iStack_bc = *piVar26;\n  pcStack_180 = pcVar32;\n  pDStack_b4 = wand;\n  puStack_b0 = unaff_s1;\n  pAStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar33;\n  if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }\n    else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar32 + -0x7c74))();\n    pDVar13 = pDVar9;\n    unaff_s3 = pAVar16;\n  }\n  uVar4 = 0x12c1;\n  pcVar30 = *(code **)(pcVar32 + -0x78e0);\n  iVar2 = *(int *)(pcVar32 + -0x7fc4) + 0x9d4;\n  pcVar33 = DrawSetFillOpacity;\n  pDVar9 = (DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954);\n  (*pcVar30)(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar30 + 0xea988;\n  dVar35 = (double)CONCAT44(uVar4,iVar2);\n  pDStack_1e0 = wand;\n  pDStack_1a8 = wand;\n  pcStack_1a4 = pcVar33;\n  if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);\n    pDStack_1e0 = pDVar9;\n  }\n  uVar4 = 0x12f1;\n  pcVar33 = *(code **)(pcVar30 + 0xe30a8);\n  iVar2 = *(int *)(pcVar30 + 0xe29c4) + 0x9ac;\n  pcVar34 = DrawSetFontResolution;\n  pDVar12 = (DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954);\n  (*pcVar33)(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970);\n  pcVar32 = pcVar33 + 0xea838;\n  piVar27 = *(int **)(pcVar33 + 0xe2d04);\n  pDStack_1e4 = (DrawingWand *)*piVar27;\n  uVar39 = CONCAT44(uVar4,iVar2);\n  pDVar9 = pDStack_1e0;\n  pcStack_11f0 = pcVar32;\n  piStack_1dc = piVar26;\n  pDStack_1d8 = pDVar13;\n  pcStack_1d4 = pcVar34;\n  dStack_1d0 = dVar35;\n  if (pDVar12 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar23 = 0x131f;\n    iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;\n    pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);\n    (**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar9 = pDVar12;\n    if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }\n    piVar26 = aiStack_11e4;\n    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar39;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);\n    pDVar13 = pDStack_1e4;\n    pcVar32 = pcStack_11f0;\n    if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }\n  }\n  pcVar32 = *(code **)(pcVar32 + -0x7c74);\n  pcVar30 = DrawSetOpacity;\n  (*pcVar32)();\n  pcStack_1228 = pcVar32 + 0xea6cc;\n  dVar35 = (double)CONCAT44(iVar23,iVar2);\n  pDStack_1254 = pDVar9;\n  pDStack_1220 = pDVar9;\n  pcStack_121c = pcVar30;\n  uStack_1218 = uVar39;\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958);\n    pDStack_1254 = pDVar13;\n  }\n  pcVar30 = *(code **)(pcVar32 + 0xe2dec);\n  pcVar10 = (char *)(*(int *)(pcVar32 + 0xe2708) + -0x970);\n  pcVar33 = DrawSetFillPatternURL;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954);\n  (*pcVar30)(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958);\n  piVar28 = *(int **)(pcVar30 + 0xe2a4c);\n  pDStack_125c = (DrawingWand *)*piVar28;\n  piStack_1250 = piVar26;\n  piStack_124c = piVar27;\n  pAStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar33;\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930);\n  }\n  format = (char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970);\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954);\n  (**(code **)(pcVar30 + 0xe2ca0))(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar32 = *(code **)(pcVar30 + 0xe290c);\n  (*pcVar32)();\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908);\n  }\n  pcVar30 = *(code **)(pcVar32 + 0xe29c0);\n  iVar2 = *(int *)(pcVar32 + 0xe22dc) + -0x970;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954);\n  (*pcVar30)(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908);\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  }\n  pcVar32 = *(code **)(pcVar30 + 0xe287c);\n  iVar2 = *(int *)(pcVar30 + 0xe2198) + -0x970;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954);\n  (*pcVar32)(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  if (pDVar13 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }\n  if (pDVar13->signature == 0xabacadab) {\n    if (pDVar13->debug != MagickFalse) {\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }\n    if (iVar2 != 0) {\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }\n  (**(code **)(pcVar32 + 0xe2704))\n            (*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n  return;\n}\n\n" comment comment comment comment comment comment (function_definition "void DrawSetClipUnits(DrawingWand *wand,ClipPathUnits clip_units)\n\n{\n  PixelInfo *pPVar1;\n  int iVar2;\n  DrawInfo *pDVar3;\n  undefined4 uVar4;\n  ClassType *pCVar5;\n  ClassType *pCVar6;\n  Image *pIVar7;\n  PixelInfo *pPVar8;\n  DrawingWand *pDVar9;\n  char *pcVar10;\n  DrawInfo **ppDVar11;\n  DrawingWand *pDVar12;\n  DrawingWand *pDVar13;\n  ExceptionInfo *pEVar14;\n  undefined *puVar15;\n  AffineMatrix *pAVar16;\n  ClassType CVar17;\n  size_t sVar18;\n  int iVar19;\n  char *format;\n  ClassType CVar20;\n  MagickBooleanType MVar21;\n  uint uVar22;\n  int iVar23;\n  int iVar24;\n  ClassType CVar25;\n  DrawingWand *unaff_s0;\n  undefined *unaff_s1;\n  int *piVar26;\n  int *piVar27;\n  int *piVar28;\n  AffineMatrix *unaff_s3;\n  undefined *puVar29;\n  code *pcVar30;\n  undefined *puVar31;\n  code *pcVar32;\n  code *pcVar33;\n  code *pcVar34;\n  double dVar35;\n  undefined4 uVar37;\n  double dVar36;\n  float fVar38;\n  undefined8 uVar39;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  DrawingWand *pDStack_125c;\n  DrawingWand *pDStack_1254;\n  int *piStack_1250;\n  int *piStack_124c;\n  AffineMatrix *pAStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  char *pcStack_122c;\n  code *pcStack_1228;\n  DrawingWand *pDStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  DrawingWand *pDStack_1e4;\n  DrawingWand *pDStack_1e0;\n  int *piStack_1dc;\n  DrawingWand *pDStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  char *pcStack_1b4;\n  code *pcStack_1b0;\n  DrawingWand *pDStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  char *pcStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  char acStack_174 [4];\n  size_t asStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  char acStack_124 [12];\n  ClassType aCStack_118 [23];\n  int iStack_bc;\n  DrawingWand *pDStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  AffineMatrix *pAStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  DrawingWand *pDStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  char *local_5c;\n  AffineMatrix affine;\n  \n  pDVar13 = (DrawingWand *)PTR___stack_chk_guard_0014f4cc;\n  iVar2 = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (wand == (DrawingWand *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    wand = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar15 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar32 = DrawSetDensity;\n  pDVar9 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar29 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)\n  ;\n  puVar31 = puVar29 + 0xeb02c;\n  puStack_78 = (undefined *)pDVar13;\n  puStack_88 = puVar31;\n  pDStack_80 = wand;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar32;\n  if (pDVar9 == (DrawingWand *)0x0) {\n    iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2);\nLAB_0006c128:\n    iVar2 = iVar2 + 0x9f8;\n    (**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar2 = *(int *)(puStack_88 + -0x7fc4);\n    wand = pDVar9;\n    unaff_s1 = puVar15;\n    puVar31 = puStack_88;\n    if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar30 = *(code **)(puVar31 + -0x78e0);\n  pAVar16 = (AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970);\n  pcVar33 = DrawSetFillColor;\n  pDVar9 = (DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c);\n  (*pcVar30)(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8);\n  pcVar32 = pcVar30 + 0xeae9c;\n  piVar26 = *(int **)(pcVar30 + 0xe3368);\n  puStack_ac = (undefined *)pDVar13;\n  iStack_bc = *piVar26;\n  pcStack_180 = pcVar32;\n  pDStack_b4 = wand;\n  puStack_b0 = unaff_s1;\n  pAStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar33;\n  if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }\n    else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar32 + -0x7c74))();\n    pDVar13 = pDVar9;\n    unaff_s3 = pAVar16;\n  }\n  uVar4 = 0x12c1;\n  pcVar30 = *(code **)(pcVar32 + -0x78e0);\n  iVar2 = *(int *)(pcVar32 + -0x7fc4) + 0x9d4;\n  pcVar33 = DrawSetFillOpacity;\n  pDVar9 = (DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954);\n  (*pcVar30)(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar30 + 0xea988;\n  dVar35 = (double)CONCAT44(uVar4,iVar2);\n  pDStack_1e0 = wand;\n  pDStack_1a8 = wand;\n  pcStack_1a4 = pcVar33;\n  if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);\n    pDStack_1e0 = pDVar9;\n  }\n  uVar4 = 0x12f1;\n  pcVar33 = *(code **)(pcVar30 + 0xe30a8);\n  iVar2 = *(int *)(pcVar30 + 0xe29c4) + 0x9ac;\n  pcVar34 = DrawSetFontResolution;\n  pDVar12 = (DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954);\n  (*pcVar33)(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970);\n  pcVar32 = pcVar33 + 0xea838;\n  piVar27 = *(int **)(pcVar33 + 0xe2d04);\n  pDStack_1e4 = (DrawingWand *)*piVar27;\n  uVar39 = CONCAT44(uVar4,iVar2);\n  pDVar9 = pDStack_1e0;\n  pcStack_11f0 = pcVar32;\n  piStack_1dc = piVar26;\n  pDStack_1d8 = pDVar13;\n  pcStack_1d4 = pcVar34;\n  dStack_1d0 = dVar35;\n  if (pDVar12 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar23 = 0x131f;\n    iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;\n    pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);\n    (**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar9 = pDVar12;\n    if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }\n    piVar26 = aiStack_11e4;\n    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar39;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);\n    pDVar13 = pDStack_1e4;\n    pcVar32 = pcStack_11f0;\n    if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }\n  }\n  pcVar32 = *(code **)(pcVar32 + -0x7c74);\n  pcVar30 = DrawSetOpacity;\n  (*pcVar32)();\n  pcStack_1228 = pcVar32 + 0xea6cc;\n  dVar35 = (double)CONCAT44(iVar23,iVar2);\n  pDStack_1254 = pDVar9;\n  pDStack_1220 = pDVar9;\n  pcStack_121c = pcVar30;\n  uStack_1218 = uVar39;\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958);\n    pDStack_1254 = pDVar13;\n  }\n  pcVar30 = *(code **)(pcVar32 + 0xe2dec);\n  pcVar10 = (char *)(*(int *)(pcVar32 + 0xe2708) + -0x970);\n  pcVar33 = DrawSetFillPatternURL;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954);\n  (*pcVar30)(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958);\n  piVar28 = *(int **)(pcVar30 + 0xe2a4c);\n  pDStack_125c = (DrawingWand *)*piVar28;\n  piStack_1250 = piVar26;\n  piStack_124c = piVar27;\n  pAStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar33;\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930);\n  }\n  format = (char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970);\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954);\n  (**(code **)(pcVar30 + 0xe2ca0))(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar32 = *(code **)(pcVar30 + 0xe290c);\n  (*pcVar32)();\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908);\n  }\n  pcVar30 = *(code **)(pcVar32 + 0xe29c0);\n  iVar2 = *(int *)(pcVar32 + 0xe22dc) + -0x970;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954);\n  (*pcVar30)(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908);\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  }\n  pcVar32 = *(code **)(pcVar30 + 0xe287c);\n  iVar2 = *(int *)(pcVar30 + 0xe2198) + -0x970;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954);\n  (*pcVar32)(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  if (pDVar13 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }\n  if (pDVar13->signature == 0xabacadab) {\n    if (pDVar13->debug != MagickFalse) {\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }\n    if (iVar2 != 0) {\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }\n  (**(code **)(pcVar32 + 0xe2704))\n            (*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n  return;\n}" primitive_type (function_declarator "DrawSetClipUnits(DrawingWand *wand,ClipPathUnits clip_units)" identifier (parameter_list "(DrawingWand *wand,ClipPathUnits clip_units)" ( (parameter_declaration "DrawingWand *wand" type_identifier (pointer_declarator "*wand" * identifier)) , (parameter_declaration "ClipPathUnits clip_units" type_identifier identifier) ))) (compound_statement "{\n  PixelInfo *pPVar1;\n  int iVar2;\n  DrawInfo *pDVar3;\n  undefined4 uVar4;\n  ClassType *pCVar5;\n  ClassType *pCVar6;\n  Image *pIVar7;\n  PixelInfo *pPVar8;\n  DrawingWand *pDVar9;\n  char *pcVar10;\n  DrawInfo **ppDVar11;\n  DrawingWand *pDVar12;\n  DrawingWand *pDVar13;\n  ExceptionInfo *pEVar14;\n  undefined *puVar15;\n  AffineMatrix *pAVar16;\n  ClassType CVar17;\n  size_t sVar18;\n  int iVar19;\n  char *format;\n  ClassType CVar20;\n  MagickBooleanType MVar21;\n  uint uVar22;\n  int iVar23;\n  int iVar24;\n  ClassType CVar25;\n  DrawingWand *unaff_s0;\n  undefined *unaff_s1;\n  int *piVar26;\n  int *piVar27;\n  int *piVar28;\n  AffineMatrix *unaff_s3;\n  undefined *puVar29;\n  code *pcVar30;\n  undefined *puVar31;\n  code *pcVar32;\n  code *pcVar33;\n  code *pcVar34;\n  double dVar35;\n  undefined4 uVar37;\n  double dVar36;\n  float fVar38;\n  undefined8 uVar39;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  DrawingWand *pDStack_125c;\n  DrawingWand *pDStack_1254;\n  int *piStack_1250;\n  int *piStack_124c;\n  AffineMatrix *pAStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  char *pcStack_122c;\n  code *pcStack_1228;\n  DrawingWand *pDStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  DrawingWand *pDStack_1e4;\n  DrawingWand *pDStack_1e0;\n  int *piStack_1dc;\n  DrawingWand *pDStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  char *pcStack_1b4;\n  code *pcStack_1b0;\n  DrawingWand *pDStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  char *pcStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  char acStack_174 [4];\n  size_t asStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  char acStack_124 [12];\n  ClassType aCStack_118 [23];\n  int iStack_bc;\n  DrawingWand *pDStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  AffineMatrix *pAStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  DrawingWand *pDStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  char *local_5c;\n  AffineMatrix affine;\n  \n  pDVar13 = (DrawingWand *)PTR___stack_chk_guard_0014f4cc;\n  iVar2 = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (wand == (DrawingWand *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    wand = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar15 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar32 = DrawSetDensity;\n  pDVar9 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar29 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)\n  ;\n  puVar31 = puVar29 + 0xeb02c;\n  puStack_78 = (undefined *)pDVar13;\n  puStack_88 = puVar31;\n  pDStack_80 = wand;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar32;\n  if (pDVar9 == (DrawingWand *)0x0) {\n    iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2);\nLAB_0006c128:\n    iVar2 = iVar2 + 0x9f8;\n    (**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar2 = *(int *)(puStack_88 + -0x7fc4);\n    wand = pDVar9;\n    unaff_s1 = puVar15;\n    puVar31 = puStack_88;\n    if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar30 = *(code **)(puVar31 + -0x78e0);\n  pAVar16 = (AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970);\n  pcVar33 = DrawSetFillColor;\n  pDVar9 = (DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c);\n  (*pcVar30)(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8);\n  pcVar32 = pcVar30 + 0xeae9c;\n  piVar26 = *(int **)(pcVar30 + 0xe3368);\n  puStack_ac = (undefined *)pDVar13;\n  iStack_bc = *piVar26;\n  pcStack_180 = pcVar32;\n  pDStack_b4 = wand;\n  puStack_b0 = unaff_s1;\n  pAStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar33;\n  if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }\n    else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar32 + -0x7c74))();\n    pDVar13 = pDVar9;\n    unaff_s3 = pAVar16;\n  }\n  uVar4 = 0x12c1;\n  pcVar30 = *(code **)(pcVar32 + -0x78e0);\n  iVar2 = *(int *)(pcVar32 + -0x7fc4) + 0x9d4;\n  pcVar33 = DrawSetFillOpacity;\n  pDVar9 = (DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954);\n  (*pcVar30)(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar30 + 0xea988;\n  dVar35 = (double)CONCAT44(uVar4,iVar2);\n  pDStack_1e0 = wand;\n  pDStack_1a8 = wand;\n  pcStack_1a4 = pcVar33;\n  if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);\n    pDStack_1e0 = pDVar9;\n  }\n  uVar4 = 0x12f1;\n  pcVar33 = *(code **)(pcVar30 + 0xe30a8);\n  iVar2 = *(int *)(pcVar30 + 0xe29c4) + 0x9ac;\n  pcVar34 = DrawSetFontResolution;\n  pDVar12 = (DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954);\n  (*pcVar33)(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970);\n  pcVar32 = pcVar33 + 0xea838;\n  piVar27 = *(int **)(pcVar33 + 0xe2d04);\n  pDStack_1e4 = (DrawingWand *)*piVar27;\n  uVar39 = CONCAT44(uVar4,iVar2);\n  pDVar9 = pDStack_1e0;\n  pcStack_11f0 = pcVar32;\n  piStack_1dc = piVar26;\n  pDStack_1d8 = pDVar13;\n  pcStack_1d4 = pcVar34;\n  dStack_1d0 = dVar35;\n  if (pDVar12 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar23 = 0x131f;\n    iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;\n    pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);\n    (**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar9 = pDVar12;\n    if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }\n    piVar26 = aiStack_11e4;\n    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar39;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);\n    pDVar13 = pDStack_1e4;\n    pcVar32 = pcStack_11f0;\n    if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }\n  }\n  pcVar32 = *(code **)(pcVar32 + -0x7c74);\n  pcVar30 = DrawSetOpacity;\n  (*pcVar32)();\n  pcStack_1228 = pcVar32 + 0xea6cc;\n  dVar35 = (double)CONCAT44(iVar23,iVar2);\n  pDStack_1254 = pDVar9;\n  pDStack_1220 = pDVar9;\n  pcStack_121c = pcVar30;\n  uStack_1218 = uVar39;\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958);\n    pDStack_1254 = pDVar13;\n  }\n  pcVar30 = *(code **)(pcVar32 + 0xe2dec);\n  pcVar10 = (char *)(*(int *)(pcVar32 + 0xe2708) + -0x970);\n  pcVar33 = DrawSetFillPatternURL;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954);\n  (*pcVar30)(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958);\n  piVar28 = *(int **)(pcVar30 + 0xe2a4c);\n  pDStack_125c = (DrawingWand *)*piVar28;\n  piStack_1250 = piVar26;\n  piStack_124c = piVar27;\n  pAStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar33;\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930);\n  }\n  format = (char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970);\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954);\n  (**(code **)(pcVar30 + 0xe2ca0))(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar32 = *(code **)(pcVar30 + 0xe290c);\n  (*pcVar32)();\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908);\n  }\n  pcVar30 = *(code **)(pcVar32 + 0xe29c0);\n  iVar2 = *(int *)(pcVar32 + 0xe22dc) + -0x970;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954);\n  (*pcVar30)(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908);\n  if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  }\n  pcVar32 = *(code **)(pcVar30 + 0xe287c);\n  iVar2 = *(int *)(pcVar30 + 0xe2198) + -0x970;\n  pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954);\n  (*pcVar32)(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  if (pDVar13 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }\n  if (pDVar13->signature == 0xabacadab) {\n    if (pDVar13->debug != MagickFalse) {\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }\n    if (iVar2 != 0) {\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }\n  (**(code **)(pcVar32 + 0xe2704))\n            (*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n  return;\n}" { (declaration "PixelInfo *pPVar1;" type_identifier (pointer_declarator "*pPVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "DrawInfo *pDVar3;" type_identifier (pointer_declarator "*pDVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "ClassType *pCVar5;" type_identifier (pointer_declarator "*pCVar5" * identifier) ;) (declaration "ClassType *pCVar6;" type_identifier (pointer_declarator "*pCVar6" * identifier) ;) (declaration "Image *pIVar7;" type_identifier (pointer_declarator "*pIVar7" * identifier) ;) (declaration "PixelInfo *pPVar8;" type_identifier (pointer_declarator "*pPVar8" * identifier) ;) (declaration "DrawingWand *pDVar9;" type_identifier (pointer_declarator "*pDVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "DrawInfo **ppDVar11;" type_identifier (pointer_declarator "**ppDVar11" * (pointer_declarator "*ppDVar11" * identifier)) ;) (declaration "DrawingWand *pDVar12;" type_identifier (pointer_declarator "*pDVar12" * identifier) ;) (declaration "DrawingWand *pDVar13;" type_identifier (pointer_declarator "*pDVar13" * identifier) ;) (declaration "ExceptionInfo *pEVar14;" type_identifier (pointer_declarator "*pEVar14" * identifier) ;) (declaration "undefined *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "AffineMatrix *pAVar16;" type_identifier (pointer_declarator "*pAVar16" * identifier) ;) (declaration "ClassType CVar17;" type_identifier identifier ;) (declaration "size_t sVar18;" primitive_type identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "ClassType CVar20;" type_identifier identifier ;) (declaration "MagickBooleanType MVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "ClassType CVar25;" type_identifier identifier ;) (declaration "DrawingWand *unaff_s0;" type_identifier (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "undefined *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "int *piVar26;" primitive_type (pointer_declarator "*piVar26" * identifier) ;) (declaration "int *piVar27;" primitive_type (pointer_declarator "*piVar27" * identifier) ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "AffineMatrix *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "undefined *puVar29;" type_identifier (pointer_declarator "*puVar29" * identifier) ;) (declaration "code *pcVar30;" type_identifier (pointer_declarator "*pcVar30" * identifier) ;) (declaration "undefined *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "code *pcVar32;" type_identifier (pointer_declarator "*pcVar32" * identifier) ;) (declaration "code *pcVar33;" type_identifier (pointer_declarator "*pcVar33" * identifier) ;) (declaration "code *pcVar34;" type_identifier (pointer_declarator "*pcVar34" * identifier) ;) (declaration "double dVar35;" primitive_type identifier ;) (declaration "undefined4 uVar37;" type_identifier identifier ;) (declaration "double dVar36;" primitive_type identifier ;) (declaration "float fVar38;" primitive_type identifier ;) (declaration "undefined8 uVar39;" type_identifier identifier ;) (declaration "undefined1 auStack_325c [4096];" type_identifier (array_declarator "auStack_325c [4096]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_225c [4096];" type_identifier (array_declarator "auStack_225c [4096]" identifier [ number_literal ]) ;) (declaration "DrawingWand *pDStack_125c;" type_identifier (pointer_declarator "*pDStack_125c" * identifier) ;) (declaration "DrawingWand *pDStack_1254;" type_identifier (pointer_declarator "*pDStack_1254" * identifier) ;) (declaration "int *piStack_1250;" primitive_type (pointer_declarator "*piStack_1250" * identifier) ;) (declaration "int *piStack_124c;" primitive_type (pointer_declarator "*piStack_124c" * identifier) ;) (declaration "AffineMatrix *pAStack_1248;" type_identifier (pointer_declarator "*pAStack_1248" * identifier) ;) (declaration "code *pcStack_1244;" type_identifier (pointer_declarator "*pcStack_1244" * identifier) ;) (declaration "int iStack_1230;" primitive_type identifier ;) (declaration "char *pcStack_122c;" primitive_type (pointer_declarator "*pcStack_122c" * identifier) ;) (declaration "code *pcStack_1228;" type_identifier (pointer_declarator "*pcStack_1228" * identifier) ;) (declaration "DrawingWand *pDStack_1220;" type_identifier (pointer_declarator "*pDStack_1220" * identifier) ;) (declaration "code *pcStack_121c;" type_identifier (pointer_declarator "*pcStack_121c" * identifier) ;) (declaration "undefined8 uStack_1218;" type_identifier identifier ;) (declaration "undefined8 uStack_1200;" type_identifier identifier ;) (declaration "code *pcStack_11f0;" type_identifier (pointer_declarator "*pcStack_11f0" * identifier) ;) (declaration "int aiStack_11e4 [1024];" primitive_type (array_declarator "aiStack_11e4 [1024]" identifier [ number_literal ]) ;) (declaration "DrawingWand *pDStack_1e4;" type_identifier (pointer_declarator "*pDStack_1e4" * identifier) ;) (declaration "DrawingWand *pDStack_1e0;" type_identifier (pointer_declarator "*pDStack_1e0" * identifier) ;) (declaration "int *piStack_1dc;" primitive_type (pointer_declarator "*piStack_1dc" * identifier) ;) (declaration "DrawingWand *pDStack_1d8;" type_identifier (pointer_declarator "*pDStack_1d8" * identifier) ;) (declaration "code *pcStack_1d4;" type_identifier (pointer_declarator "*pcStack_1d4" * identifier) ;) (declaration "double dStack_1d0;" primitive_type identifier ;) (declaration "int iStack_1b8;" primitive_type identifier ;) (declaration "char *pcStack_1b4;" primitive_type (pointer_declarator "*pcStack_1b4" * identifier) ;) (declaration "code *pcStack_1b0;" type_identifier (pointer_declarator "*pcStack_1b0" * identifier) ;) (declaration "DrawingWand *pDStack_1a8;" type_identifier (pointer_declarator "*pDStack_1a8" * identifier) ;) (declaration "code *pcStack_1a4;" type_identifier (pointer_declarator "*pcStack_1a4" * identifier) ;) (declaration "int iStack_188;" primitive_type identifier ;) (declaration "char *pcStack_184;" primitive_type (pointer_declarator "*pcStack_184" * identifier) ;) (declaration "code *pcStack_180;" type_identifier (pointer_declarator "*pcStack_180" * identifier) ;) (declaration "uint uStack_178;" type_identifier identifier ;) (declaration "char acStack_174 [4];" primitive_type (array_declarator "acStack_174 [4]" identifier [ number_literal ]) ;) (declaration "size_t asStack_170 [10];" primitive_type (array_declarator "asStack_170 [10]" identifier [ number_literal ]) ;) (declaration "double dStack_148;" primitive_type identifier ;) (declaration "double dStack_140;" primitive_type identifier ;) (declaration "double dStack_138;" primitive_type identifier ;) (declaration "double dStack_130;" primitive_type identifier ;) (declaration "uint uStack_128;" type_identifier identifier ;) (declaration "char acStack_124 [12];" primitive_type (array_declarator "acStack_124 [12]" identifier [ number_literal ]) ;) (declaration "ClassType aCStack_118 [23];" type_identifier (array_declarator "aCStack_118 [23]" identifier [ number_literal ]) ;) (declaration "int iStack_bc;" primitive_type identifier ;) (declaration "DrawingWand *pDStack_b4;" type_identifier (pointer_declarator "*pDStack_b4" * identifier) ;) (declaration "undefined *puStack_b0;" type_identifier (pointer_declarator "*puStack_b0" * identifier) ;) (declaration "undefined *puStack_ac;" type_identifier (pointer_declarator "*puStack_ac" * identifier) ;) (declaration "AffineMatrix *pAStack_a8;" type_identifier (pointer_declarator "*pAStack_a8" * identifier) ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "undefined *puStack_8c;" type_identifier (pointer_declarator "*puStack_8c" * identifier) ;) (declaration "undefined *puStack_88;" type_identifier (pointer_declarator "*puStack_88" * identifier) ;) (declaration "DrawingWand *pDStack_80;" type_identifier (pointer_declarator "*pDStack_80" * identifier) ;) (declaration "undefined *puStack_7c;" type_identifier (pointer_declarator "*puStack_7c" * identifier) ;) (declaration "undefined *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "code *pcStack_74;" type_identifier (pointer_declarator "*pcStack_74" * identifier) ;) (declaration "undefined *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (declaration "char *local_5c;" primitive_type (pointer_declarator "*local_5c" * identifier) ;) (declaration "AffineMatrix affine;" type_identifier identifier ;) (expression_statement "pDVar13 = (DrawingWand *)PTR___stack_chk_guard_0014f4cc;" (assignment_expression "pDVar13 = (DrawingWand *)PTR___stack_chk_guard_0014f4cc" identifier = (cast_expression "(DrawingWand *)PTR___stack_chk_guard_0014f4cc" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_0014f4cc;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_0014f4cc" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0014f4cc" * (cast_expression "(int *)PTR___stack_chk_guard_0014f4cc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (wand == (DrawingWand *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    wand = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }" if (parenthesized_expression "(wand == (DrawingWand *)0x0)" ( (binary_expression "wand == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    wand = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }" { (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" ( (pointer_expression "*(code *)PTR___assert_fail_0014f720" * (cast_expression "(code *)PTR___assert_fail_0014f720" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" identifier + number_literal) ))) ;) (expression_statement "wand = unaff_s0;" (assignment_expression "wand = unaff_s0" identifier = identifier) ;) (labeled_statement "LAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();" statement_identifier : (expression_statement "(*(code *)PTR___stack_chk_fail_0014f38c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0014f38c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0014f38c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0014f38c" * (cast_expression "(code *)PTR___stack_chk_fail_0014f38c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;)) }) (else_clause "else if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }" else (if_statement "if (wand->signature == 0xabacadab) {\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }" if (parenthesized_expression "(wand->signature == 0xabacadab)" ( (binary_expression "wand->signature == 0xabacadab" (field_expression "wand->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    pDVar3 = wand->graphic_context[wand->index];\n    if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }\n    unaff_s1 = (undefined *)clip_units;\n    if (iVar2 == *(int *)pDVar13) {\n      return;\n    }\n    goto LAB_0006bfa4;\n  }" { (if_statement "if (wand->debug != MagickFalse) {\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" if (parenthesized_expression "(wand->debug != MagickFalse)" ( (binary_expression "wand->debug != MagickFalse" (field_expression "wand->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      local_5c = wand->name;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" { (expression_statement "local_5c = wand->name;" (assignment_expression "local_5c = wand->name" identifier = (field_expression "wand->name" identifier -> field_identifier)) ;) (expression_statement "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;" (assignment_expression "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" identifier = (binary_expression "PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_0014f488)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_0014f488" * (cast_expression "(code *)PTR_LogMagickEvent_0014f488" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" ( number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa08" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "pDVar3 = wand->graphic_context[wand->index];" (assignment_expression "pDVar3 = wand->graphic_context[wand->index]" identifier = (subscript_expression "wand->graphic_context[wand->index]" (field_expression "wand->graphic_context" identifier -> field_identifier) [ (field_expression "wand->index" identifier -> field_identifier) ])) ;) (if_statement "if (wand->filter_off == MagickFalse) {\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }" if (parenthesized_expression "(wand->filter_off == MagickFalse)" ( (binary_expression "wand->filter_off == MagickFalse" (field_expression "wand->filter_off" identifier -> field_identifier) == identifier) )) (compound_statement "{\n      if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }\n    }" { (if_statement "if (pDVar3->clip_units != clip_units) {\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }" if (parenthesized_expression "(pDVar3->clip_units != clip_units)" ( (binary_expression "pDVar3->clip_units != clip_units" (field_expression "pDVar3->clip_units" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        pDVar3->clip_units = clip_units;\n        goto joined_r0x0006bed8;\n      }" { (expression_statement "pDVar3->clip_units = clip_units;" (assignment_expression "pDVar3->clip_units = clip_units" (field_expression "pDVar3->clip_units" identifier -> field_identifier) = identifier) ;) (goto_statement "goto joined_r0x0006bed8;" goto statement_identifier ;) })) }) (else_clause "else {\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }" else (compound_statement "{\n      pDVar3->clip_units = clip_units;\njoined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }\n      uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);\n      MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);\n    }" { (expression_statement "pDVar3->clip_units = clip_units;" (assignment_expression "pDVar3->clip_units = clip_units" (field_expression "pDVar3->clip_units" identifier -> field_identifier) = identifier) ;) (labeled_statement "joined_r0x0006bed8:\n      if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }" statement_identifier : (if_statement "if (clip_units == ObjectBoundingBox) {\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }" if (parenthesized_expression "(clip_units == ObjectBoundingBox)" ( (binary_expression "clip_units == ObjectBoundingBox" identifier == identifier) )) (compound_statement "{\n        unaff_s3 = &affine;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        pDVar3 = wand->graphic_context[wand->index];\n        affine.sx = (pDVar3->bounds).x2;\n        affine.sy = (pDVar3->bounds).y2;\n        affine.tx = (pDVar3->bounds).x1;\n        affine.ty = (pDVar3->bounds).y1;\n        AdjustAffine(wand,unaff_s3);\n      }" { (expression_statement "unaff_s3 = &affine;" (assignment_expression "unaff_s3 = &affine" identifier = (pointer_expression "&affine" & identifier)) ;) (expression_statement "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);" (call_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)" ( (pointer_expression "*(code *)PTR_GetAffineMatrix_0014f1f8" * (cast_expression "(code *)PTR_GetAffineMatrix_0014f1f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "pDVar3 = wand->graphic_context[wand->index];" (assignment_expression "pDVar3 = wand->graphic_context[wand->index]" identifier = (subscript_expression "wand->graphic_context[wand->index]" (field_expression "wand->graphic_context" identifier -> field_identifier) [ (field_expression "wand->index" identifier -> field_identifier) ])) ;) (expression_statement "affine.sx = (pDVar3->bounds).x2;" (assignment_expression "affine.sx = (pDVar3->bounds).x2" (field_expression "affine.sx" identifier . field_identifier) = (field_expression "(pDVar3->bounds).x2" (parenthesized_expression "(pDVar3->bounds)" ( (field_expression "pDVar3->bounds" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "affine.sy = (pDVar3->bounds).y2;" (assignment_expression "affine.sy = (pDVar3->bounds).y2" (field_expression "affine.sy" identifier . field_identifier) = (field_expression "(pDVar3->bounds).y2" (parenthesized_expression "(pDVar3->bounds)" ( (field_expression "pDVar3->bounds" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "affine.tx = (pDVar3->bounds).x1;" (assignment_expression "affine.tx = (pDVar3->bounds).x1" (field_expression "affine.tx" identifier . field_identifier) = (field_expression "(pDVar3->bounds).x1" (parenthesized_expression "(pDVar3->bounds)" ( (field_expression "pDVar3->bounds" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "affine.ty = (pDVar3->bounds).y1;" (assignment_expression "affine.ty = (pDVar3->bounds).y1" (field_expression "affine.ty" identifier . field_identifier) = (field_expression "(pDVar3->bounds).y1" (parenthesized_expression "(pDVar3->bounds)" ( (field_expression "pDVar3->bounds" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "AdjustAffine(wand,unaff_s3);" (call_expression "AdjustAffine(wand,unaff_s3)" identifier (argument_list "(wand,unaff_s3)" ( identifier , identifier ))) ;) }))) (expression_statement "uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units);" (assignment_expression "uVar4 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units)" identifier = (call_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,clip_units)" (parenthesized_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)" ( (pointer_expression "*(code *)PTR_CommandOptionToMnemonic_0014f168" * (cast_expression "(code *)PTR_CommandOptionToMnemonic_0014f168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(6,clip_units)" ( number_literal , identifier )))) ;) (expression_statement "MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4);" (call_expression "MVGPrintf(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4)" identifier (argument_list "(wand,PTR_s_t_char____NULL_0014f03c + -0x148,uVar4)" ( identifier , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x148" identifier + number_literal) , identifier ))) ;) }))) (expression_statement "unaff_s1 = (undefined *)clip_units;" (assignment_expression "unaff_s1 = (undefined *)clip_units" identifier = (cast_expression "(undefined *)clip_units" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (iVar2 == *(int *)pDVar13) {\n      return;\n    }" if (parenthesized_expression "(iVar2 == *(int *)pDVar13)" ( (binary_expression "iVar2 == *(int *)pDVar13" identifier == (pointer_expression "*(int *)pDVar13" * (cast_expression "(int *)pDVar13" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (goto_statement "goto LAB_0006bfa4;" goto statement_identifier ;) })))) (expression_statement "puVar15 = PTR_s_t_char____NULL_0014f03c + -0x970;" (assignment_expression "puVar15 = PTR_s_t_char____NULL_0014f03c + -0x970" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal)) ;) (expression_statement "pcVar32 = DrawSetDensity;" (assignment_expression "pcVar32 = DrawSetDensity" identifier = identifier) ;) (expression_statement "pDVar9 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c);" (assignment_expression "pDVar9 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" identifier = (cast_expression "(DrawingWand *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_t_char____NULL_0014f03c + 0x419c)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" identifier + number_literal) )))) ;) (expression_statement "puVar29 = PTR___assert_fail_0014f720;" (assignment_expression "puVar29 = PTR___assert_fail_0014f720" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)\n  ;" (call_expression "(*(code *)PTR___assert_fail_0014f720)(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" ( (pointer_expression "*(code *)PTR___assert_fail_0014f720" * (cast_expression "(code *)PTR___assert_fail_0014f720" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pDVar9,puVar15,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" ( identifier , identifier , number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" identifier + number_literal) ))) ;) (expression_statement "puVar31 = puVar29 + 0xeb02c;" (assignment_expression "puVar31 = puVar29 + 0xeb02c" identifier = (binary_expression "puVar29 + 0xeb02c" identifier + number_literal)) ;) (expression_statement "puStack_78 = (undefined *)pDVar13;" (assignment_expression "puStack_78 = (undefined *)pDVar13" identifier = (cast_expression "(undefined *)pDVar13" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puStack_88 = puVar31;" (assignment_expression "puStack_88 = puVar31" identifier = identifier) ;) (expression_statement "pDStack_80 = wand;" (assignment_expression "pDStack_80 = wand" identifier = identifier) ;) (expression_statement "puStack_7c = unaff_s1;" (assignment_expression "puStack_7c = unaff_s1" identifier = identifier) ;) (expression_statement "pcStack_74 = pcVar32;" (assignment_expression "pcStack_74 = pcVar32" identifier = identifier) ;) (if_statement "if (pDVar9 == (DrawingWand *)0x0) {\n    iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2);\nLAB_0006c128:\n    iVar2 = iVar2 + 0x9f8;\n    (**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar2 = *(int *)(puStack_88 + -0x7fc4);\n    wand = pDVar9;\n    unaff_s1 = puVar15;\n    puVar31 = puStack_88;\n    if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }\n  }" if (parenthesized_expression "(pDVar9 == (DrawingWand *)0x0)" ( (binary_expression "pDVar9 == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2);\nLAB_0006c128:\n    iVar2 = iVar2 + 0x9f8;\n    (**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);\n  }" { (expression_statement "iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8;" (assignment_expression "iVar2 = *(int *)(puVar29 + 0xe3068) + 0x9f8" identifier = (binary_expression "*(int *)(puVar29 + 0xe3068) + 0x9f8" (pointer_expression "*(int *)(puVar29 + 0xe3068)" * (cast_expression "(int *)(puVar29 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe3068)" ( (binary_expression "puVar29 + 0xe3068" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2);" (call_expression "(**(code **)(puVar29 + 0xe374c))\n              (*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2)" (parenthesized_expression "(**(code **)(puVar29 + 0xe374c))" ( (pointer_expression "**(code **)(puVar29 + 0xe374c)" * (pointer_expression "*(code **)(puVar29 + 0xe374c)" * (cast_expression "(code **)(puVar29 + 0xe374c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + 0xe374c)" ( (binary_expression "puVar29 + 0xe374c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar29 + 0xe3068) + -0x954,*(int *)(puVar29 + 0xe3068) + -0x970,0x1293,\n               iVar2)" ( (binary_expression "*(int *)(puVar29 + 0xe3068) + -0x954" (pointer_expression "*(int *)(puVar29 + 0xe3068)" * (cast_expression "(int *)(puVar29 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe3068)" ( (binary_expression "puVar29 + 0xe3068" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar29 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar29 + 0xe3068)" * (cast_expression "(int *)(puVar29 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe3068)" ( (binary_expression "puVar29 + 0xe3068" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_0006c128:\n    iVar2 = iVar2 + 0x9f8;" statement_identifier : (expression_statement "iVar2 = iVar2 + 0x9f8;" (assignment_expression "iVar2 = iVar2 + 0x9f8" identifier = (binary_expression "iVar2 + 0x9f8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970);" (call_expression "(**(code **)(puVar31 + -0x78e0))\n              (*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970)" (parenthesized_expression "(**(code **)(puVar31 + -0x78e0))" ( (pointer_expression "**(code **)(puVar31 + -0x78e0)" * (pointer_expression "*(code **)(puVar31 + -0x78e0)" * (cast_expression "(code **)(puVar31 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + -0x78e0)" ( (binary_expression "puVar31 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar31 + -0x7fc4) + -0x134,*(int *)(puVar31 + -0x7fc4) + -0x970)" ( (binary_expression "*(int *)(puVar31 + -0x7fc4) + -0x134" (pointer_expression "*(int *)(puVar31 + -0x7fc4)" * (cast_expression "(int *)(puVar31 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x7fc4)" ( (binary_expression "puVar31 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar31 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar31 + -0x7fc4)" * (cast_expression "(int *)(puVar31 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x7fc4)" ( (binary_expression "puVar31 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar2 = *(int *)(puStack_88 + -0x7fc4);\n    wand = pDVar9;\n    unaff_s1 = puVar15;\n    puVar31 = puStack_88;\n    if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }\n  }" else (compound_statement "{\n    if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar2 = *(int *)(puStack_88 + -0x7fc4);\n    wand = pDVar9;\n    unaff_s1 = puVar15;\n    puVar31 = puStack_88;\n    if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }\n  }" { (if_statement "if (pDVar9->debug != MagickFalse) {\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" if (parenthesized_expression "(pDVar9->debug != MagickFalse)" ( (binary_expression "pDVar9->debug != MagickFalse" (field_expression "pDVar9->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;\n      puStack_8c = puVar15;\n      (**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" { (expression_statement "iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c;" (assignment_expression "iStack_90 = *(int *)(puVar29 + 0xe305c) + -0x131c" identifier = (binary_expression "*(int *)(puVar29 + 0xe305c) + -0x131c" (pointer_expression "*(int *)(puVar29 + 0xe305c)" * (cast_expression "(int *)(puVar29 + 0xe305c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe305c)" ( (binary_expression "puVar29 + 0xe305c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puStack_8c = puVar15;" (assignment_expression "puStack_8c = puVar15" identifier = identifier) ;) (expression_statement "(**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295);" (call_expression "(**(code **)(puVar29 + 0xe34b4))\n                (0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295)" (parenthesized_expression "(**(code **)(puVar29 + 0xe34b4))" ( (pointer_expression "**(code **)(puVar29 + 0xe34b4)" * (pointer_expression "*(code **)(puVar29 + 0xe34b4)" * (cast_expression "(code **)(puVar29 + 0xe34b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar29 + 0xe34b4)" ( (binary_expression "puVar29 + 0xe34b4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(puVar29 + 0xe3068) + -0x970,*(int *)(puVar29 + 0xe3068) + 0x9e8,\n                 0x1295)" ( number_literal , (binary_expression "*(int *)(puVar29 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar29 + 0xe3068)" * (cast_expression "(int *)(puVar29 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe3068)" ( (binary_expression "puVar29 + 0xe3068" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar29 + 0xe3068) + 0x9e8" (pointer_expression "*(int *)(puVar29 + 0xe3068)" * (cast_expression "(int *)(puVar29 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar29 + 0xe3068)" ( (binary_expression "puVar29 + 0xe3068" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar2 = *(int *)(puStack_88 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(puStack_88 + -0x7fc4)" identifier = (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" * (cast_expression "(int *)(puStack_88 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_88 + -0x7fc4)" ( (binary_expression "puStack_88 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "wand = pDVar9;" (assignment_expression "wand = pDVar9" identifier = identifier) ;) (expression_statement "unaff_s1 = puVar15;" (assignment_expression "unaff_s1 = puVar15" identifier = identifier) ;) (expression_statement "puVar31 = puStack_88;" (assignment_expression "puVar31 = puStack_88" identifier = identifier) ;) (if_statement "if (pDVar9->signature == 0xabacadab) {\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }" if (parenthesized_expression "(pDVar9->signature == 0xabacadab)" ( (binary_expression "pDVar9->signature == 0xabacadab" (field_expression "pDVar9->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }\n      goto LAB_0006c128;\n    }" { (if_statement "if (puVar15 != (undefined *)0x0) {\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }" if (parenthesized_expression "(puVar15 != (undefined *)0x0)" ( (binary_expression "puVar15 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pDVar3 = pDVar9->graphic_context[pDVar9->index];\n        pcVar10 = pDVar3->density;\n        pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar32)(&pDVar3->density,puVar15);\n        MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);\n        return;\n      }" { (expression_statement "pDVar3 = pDVar9->graphic_context[pDVar9->index];" (assignment_expression "pDVar3 = pDVar9->graphic_context[pDVar9->index]" identifier = (subscript_expression "pDVar9->graphic_context[pDVar9->index]" (field_expression "pDVar9->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar9->index" identifier -> field_identifier) ])) ;) (expression_statement "pcVar10 = pDVar3->density;" (assignment_expression "pcVar10 = pDVar3->density" identifier = (field_expression "pDVar3->density" identifier -> field_identifier)) ;) (expression_statement "pcVar32 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar32 = *(code **)(puStack_88 + -0x79d0)" identifier = (pointer_expression "*(code **)(puStack_88 + -0x79d0)" * (cast_expression "(code **)(puStack_88 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x79d0)" ( (binary_expression "puStack_88 + -0x79d0" identifier + number_literal) ))))) ;) (if_statement "if (pcVar10 != (char *)0x0) {\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }" if (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }\n          pcVar32 = *(code **)(puStack_88 + -0x79d0);\n        }" { (if_statement "if ((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)) {\n            return;\n          }" if (parenthesized_expression "((pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0))" ( (binary_expression "(pDVar9->filter_off == MagickFalse) &&\n             (iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)" (parenthesized_expression "(pDVar9->filter_off == MagickFalse)" ( (binary_expression "pDVar9->filter_off == MagickFalse" (field_expression "pDVar9->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "(iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0)" ( (comma_expression "iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297), iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297)" identifier = (call_expression "(**(code **)(puStack_88 + -0x7c18))(pcVar10,puVar15,0x1297)" (parenthesized_expression "(**(code **)(puStack_88 + -0x7c18))" ( (pointer_expression "**(code **)(puStack_88 + -0x7c18)" * (pointer_expression "*(code **)(puStack_88 + -0x7c18)" * (cast_expression "(code **)(puStack_88 + -0x7c18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x7c18)" ( (binary_expression "puStack_88 + -0x7c18" identifier + number_literal) ))))) )) (argument_list "(pcVar10,puVar15,0x1297)" ( identifier , identifier , number_literal )))) , (binary_expression "iVar2 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) (expression_statement "pcVar32 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar32 = *(code **)(puStack_88 + -0x79d0)" identifier = (pointer_expression "*(code **)(puStack_88 + -0x79d0)" * (cast_expression "(code **)(puStack_88 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x79d0)" ( (binary_expression "puStack_88 + -0x79d0" identifier + number_literal) ))))) ;) })) (expression_statement "(*pcVar32)(&pDVar3->density,puVar15);" (call_expression "(*pcVar32)(&pDVar3->density,puVar15)" (parenthesized_expression "(*pcVar32)" ( (pointer_expression "*pcVar32" * identifier) )) (argument_list "(&pDVar3->density,puVar15)" ( (pointer_expression "&pDVar3->density" & (field_expression "pDVar3->density" identifier -> field_identifier)) , identifier ))) ;) (expression_statement "MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15);" (call_expression "MVGPrintf(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15)" identifier (argument_list "(pDVar9,(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114),puVar15)" ( identifier , (cast_expression "(char *)(*(int *)(puStack_88 + -0x7fc4) + -0x114)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_88 + -0x7fc4) + -0x114)" ( (binary_expression "*(int *)(puStack_88 + -0x7fc4) + -0x114" (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" * (cast_expression "(int *)(puStack_88 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_88 + -0x7fc4)" ( (binary_expression "puStack_88 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (goto_statement "goto LAB_0006c128;" goto statement_identifier ;) })) }))) (expression_statement "pcVar30 = *(code **)(puVar31 + -0x78e0);" (assignment_expression "pcVar30 = *(code **)(puVar31 + -0x78e0)" identifier = (pointer_expression "*(code **)(puVar31 + -0x78e0)" * (cast_expression "(code **)(puVar31 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar31 + -0x78e0)" ( (binary_expression "puVar31 + -0x78e0" identifier + number_literal) ))))) ;) (expression_statement "pAVar16 = (AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970);" (assignment_expression "pAVar16 = (AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970)" identifier = (cast_expression "(AffineMatrix *)(*(int *)(puVar31 + -0x7fc4) + -0x970)" ( (type_descriptor "AffineMatrix *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar31 + -0x7fc4) + -0x970)" ( (binary_expression "*(int *)(puVar31 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar31 + -0x7fc4)" * (cast_expression "(int *)(puVar31 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x7fc4)" ( (binary_expression "puVar31 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar33 = DrawSetFillColor;" (assignment_expression "pcVar33 = DrawSetFillColor" identifier = identifier) ;) (expression_statement "pDVar9 = (DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c);" (assignment_expression "pDVar9 = (DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c)" identifier = (cast_expression "(DrawingWand *)(*(int *)(puVar31 + -0x7fc4) + 0x419c)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar31 + -0x7fc4) + 0x419c)" ( (binary_expression "*(int *)(puVar31 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(puVar31 + -0x7fc4)" * (cast_expression "(int *)(puVar31 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar31 + -0x7fc4)" ( (binary_expression "puVar31 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar30)(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8);" (call_expression "(*pcVar30)(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(pDVar9,pAVar16,0x1296,iVar2 + 0x9f8)" ( identifier , identifier , number_literal , (binary_expression "iVar2 + 0x9f8" identifier + number_literal) ))) ;) (expression_statement "pcVar32 = pcVar30 + 0xeae9c;" (assignment_expression "pcVar32 = pcVar30 + 0xeae9c" identifier = (binary_expression "pcVar30 + 0xeae9c" identifier + number_literal)) ;) (expression_statement "piVar26 = *(int **)(pcVar30 + 0xe3368);" (assignment_expression "piVar26 = *(int **)(pcVar30 + 0xe3368)" identifier = (pointer_expression "*(int **)(pcVar30 + 0xe3368)" * (cast_expression "(int **)(pcVar30 + 0xe3368)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe3368)" ( (binary_expression "pcVar30 + 0xe3368" identifier + number_literal) ))))) ;) (expression_statement "puStack_ac = (undefined *)pDVar13;" (assignment_expression "puStack_ac = (undefined *)pDVar13" identifier = (cast_expression "(undefined *)pDVar13" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "iStack_bc = *piVar26;" (assignment_expression "iStack_bc = *piVar26" identifier = (pointer_expression "*piVar26" * identifier)) ;) (expression_statement "pcStack_180 = pcVar32;" (assignment_expression "pcStack_180 = pcVar32" identifier = identifier) ;) (expression_statement "pDStack_b4 = wand;" (assignment_expression "pDStack_b4 = wand" identifier = identifier) ;) (expression_statement "puStack_b0 = unaff_s1;" (assignment_expression "puStack_b0 = unaff_s1" identifier = identifier) ;) (expression_statement "pAStack_a8 = unaff_s3;" (assignment_expression "pAStack_a8 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar33;" (assignment_expression "pcStack_a4 = pcVar33" identifier = identifier) ;) (if_statement "if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }\n    else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar32 + -0x7c74))();\n    pDVar13 = pDVar9;\n    unaff_s3 = pAVar16;\n  }" if (parenthesized_expression "(pDVar9 != (DrawingWand *)0x0)" ( (binary_expression "pDVar9 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }\n    else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar32 + -0x7c74))();\n    pDVar13 = pDVar9;\n    unaff_s3 = pAVar16;\n  }" { (if_statement "if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }\n    else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }" if (parenthesized_expression "(pDVar9->signature == 0xabacadab)" ( (binary_expression "pDVar9->signature == 0xabacadab" (field_expression "pDVar9->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar32 = pcStack_180;\n      if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }\n      wand = (DrawingWand *)asStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);\n      pDVar13 = wand;\n      pCVar6 = aCStack_118;\n      do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));\n      sVar18 = pDVar9->index;\n      ppDVar11 = pDVar9->graphic_context;\n      CVar17 = *(ClassType *)(pDVar12->name + 0x10);\n      MVar21 = pDVar9->filter_off;\n      pCVar5[4] = pDVar13->id;\n      pCVar5[5] = CVar17;\n      pDVar3 = ppDVar11[sVar18];\n      if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }\nLAB_0006c360:\n      pcVar32 = pcStack_180;\n      if (iStack_bc == *piVar26) {\n        return;\n      }\n    }" { (if_statement "if (pDVar9->debug != MagickFalse) {\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" if (parenthesized_expression "(pDVar9->debug != MagickFalse)" ( (binary_expression "pDVar9->debug != MagickFalse" (field_expression "pDVar9->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        pcStack_184 = pDVar9->name;\n        iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" { (expression_statement "pcStack_184 = pDVar9->name;" (assignment_expression "pcStack_184 = pDVar9->name" identifier = (field_expression "pDVar9->name" identifier -> field_identifier)) ;) (expression_statement "iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c;" (assignment_expression "iStack_188 = *(int *)(pcVar30 + 0xe2ecc) + -0x131c" identifier = (binary_expression "*(int *)(pcVar30 + 0xe2ecc) + -0x131c" (pointer_expression "*(int *)(pcVar30 + 0xe2ecc)" * (cast_expression "(int *)(pcVar30 + 0xe2ecc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2ecc)" ( (binary_expression "pcVar30 + 0xe2ecc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4);" (call_expression "(**(code **)(pcVar30 + 0xe3324))\n                  (0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe3324))" ( (pointer_expression "**(code **)(pcVar30 + 0xe3324)" * (pointer_expression "*(code **)(pcVar30 + 0xe3324)" * (cast_expression "(code **)(pcVar30 + 0xe3324)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe3324)" ( (binary_expression "pcVar30 + 0xe3324" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar30 + 0xe2ed8) + -0x970,*(int *)(pcVar30 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" ( number_literal , (binary_expression "*(int *)(pcVar30 + 0xe2ed8) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe2ed8)" * (cast_expression "(int *)(pcVar30 + 0xe2ed8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2ed8)" ( (binary_expression "pcVar30 + 0xe2ed8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe2ed8) + 0x9c0" (pointer_expression "*(int *)(pcVar30 + 0xe2ed8)" * (cast_expression "(int *)(pcVar30 + 0xe2ed8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2ed8)" ( (binary_expression "pcVar30 + 0xe2ed8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "pcVar32 = pcStack_180;" (assignment_expression "pcVar32 = pcStack_180" identifier = identifier) ;) (if_statement "if (pAVar16 == (AffineMatrix *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }" if (parenthesized_expression "(pAVar16 == (AffineMatrix *)0x0)" ( (binary_expression "pAVar16 == (AffineMatrix *)0x0" identifier == (cast_expression "(AffineMatrix *)0x0" ( (type_descriptor "AffineMatrix *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = pAVar16;\n        goto LAB_0006c624;\n      }" { (expression_statement "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x78e0))" ( (pointer_expression "**(code **)(pcStack_180 + -0x78e0)" * (pointer_expression "*(code **)(pcStack_180 + -0x78e0)" * (cast_expression "(code **)(pcStack_180 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_180 + -0x78e0)" ( (binary_expression "pcStack_180 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x104" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "unaff_s3 = pAVar16;" (assignment_expression "unaff_s3 = pAVar16" identifier = identifier) ;) (goto_statement "goto LAB_0006c624;" goto statement_identifier ;) })) (expression_statement "wand = (DrawingWand *)asStack_170;" (assignment_expression "wand = (DrawingWand *)asStack_170" identifier = (cast_expression "(DrawingWand *)asStack_170" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand);" (call_expression "(**(code **)(pcStack_180 + -0x77a0))(pAVar16,wand)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x77a0))" ( (pointer_expression "**(code **)(pcStack_180 + -0x77a0)" * (pointer_expression "*(code **)(pcStack_180 + -0x77a0)" * (cast_expression "(code **)(pcStack_180 + -0x77a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_180 + -0x77a0)" ( (binary_expression "pcStack_180 + -0x77a0" identifier + number_literal) ))))) )) (argument_list "(pAVar16,wand)" ( identifier , identifier ))) ;) (expression_statement "pDVar13 = wand;" (assignment_expression "pDVar13 = wand" identifier = identifier) ;) (expression_statement "pCVar6 = aCStack_118;" (assignment_expression "pCVar6 = aCStack_118" identifier = identifier) ;) (do_statement "do {\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      } while (pDVar13 != (DrawingWand *)(acStack_124 + 4));" do (compound_statement "{\n        pCVar5 = pCVar6;\n        pDVar12 = pDVar13;\n        pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);\n        CVar25 = *(ClassType *)pDVar12->name;\n        CVar20 = *(ClassType *)(pDVar12->name + 4);\n        CVar17 = *(ClassType *)(pDVar12->name + 8);\n        *pCVar5 = pDVar12->id;\n        pCVar5[1] = CVar25;\n        pCVar5[2] = CVar20;\n        pCVar5[3] = CVar17;\n        pCVar6 = pCVar5 + 4;\n      }" { (expression_statement "pCVar5 = pCVar6;" (assignment_expression "pCVar5 = pCVar6" identifier = identifier) ;) (expression_statement "pDVar12 = pDVar13;" (assignment_expression "pDVar12 = pDVar13" identifier = identifier) ;) (expression_statement "pDVar13 = (DrawingWand *)(pDVar12->name + 0xc);" (assignment_expression "pDVar13 = (DrawingWand *)(pDVar12->name + 0xc)" identifier = (cast_expression "(DrawingWand *)(pDVar12->name + 0xc)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar12->name + 0xc)" ( (binary_expression "pDVar12->name + 0xc" (field_expression "pDVar12->name" identifier -> field_identifier) + number_literal) )))) ;) (expression_statement "CVar25 = *(ClassType *)pDVar12->name;" (assignment_expression "CVar25 = *(ClassType *)pDVar12->name" identifier = (pointer_expression "*(ClassType *)pDVar12->name" * (cast_expression "(ClassType *)pDVar12->name" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pDVar12->name" identifier -> field_identifier)))) ;) (expression_statement "CVar20 = *(ClassType *)(pDVar12->name + 4);" (assignment_expression "CVar20 = *(ClassType *)(pDVar12->name + 4)" identifier = (pointer_expression "*(ClassType *)(pDVar12->name + 4)" * (cast_expression "(ClassType *)(pDVar12->name + 4)" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar12->name + 4)" ( (binary_expression "pDVar12->name + 4" (field_expression "pDVar12->name" identifier -> field_identifier) + number_literal) ))))) ;) (expression_statement "CVar17 = *(ClassType *)(pDVar12->name + 8);" (assignment_expression "CVar17 = *(ClassType *)(pDVar12->name + 8)" identifier = (pointer_expression "*(ClassType *)(pDVar12->name + 8)" * (cast_expression "(ClassType *)(pDVar12->name + 8)" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar12->name + 8)" ( (binary_expression "pDVar12->name + 8" (field_expression "pDVar12->name" identifier -> field_identifier) + number_literal) ))))) ;) (expression_statement "*pCVar5 = pDVar12->id;" (assignment_expression "*pCVar5 = pDVar12->id" (pointer_expression "*pCVar5" * identifier) = (field_expression "pDVar12->id" identifier -> field_identifier)) ;) (expression_statement "pCVar5[1] = CVar25;" (assignment_expression "pCVar5[1] = CVar25" (subscript_expression "pCVar5[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pCVar5[2] = CVar20;" (assignment_expression "pCVar5[2] = CVar20" (subscript_expression "pCVar5[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pCVar5[3] = CVar17;" (assignment_expression "pCVar5[3] = CVar17" (subscript_expression "pCVar5[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pCVar6 = pCVar5 + 4;" (assignment_expression "pCVar6 = pCVar5 + 4" identifier = (binary_expression "pCVar5 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(pDVar13 != (DrawingWand *)(acStack_124 + 4))" ( (binary_expression "pDVar13 != (DrawingWand *)(acStack_124 + 4)" identifier != (cast_expression "(DrawingWand *)(acStack_124 + 4)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(acStack_124 + 4)" ( (binary_expression "acStack_124 + 4" identifier + number_literal) )))) )) ;) (expression_statement "sVar18 = pDVar9->index;" (assignment_expression "sVar18 = pDVar9->index" identifier = (field_expression "pDVar9->index" identifier -> field_identifier)) ;) (expression_statement "ppDVar11 = pDVar9->graphic_context;" (assignment_expression "ppDVar11 = pDVar9->graphic_context" identifier = (field_expression "pDVar9->graphic_context" identifier -> field_identifier)) ;) (expression_statement "CVar17 = *(ClassType *)(pDVar12->name + 0x10);" (assignment_expression "CVar17 = *(ClassType *)(pDVar12->name + 0x10)" identifier = (pointer_expression "*(ClassType *)(pDVar12->name + 0x10)" * (cast_expression "(ClassType *)(pDVar12->name + 0x10)" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pDVar12->name + 0x10)" ( (binary_expression "pDVar12->name + 0x10" (field_expression "pDVar12->name" identifier -> field_identifier) + number_literal) ))))) ;) (expression_statement "MVar21 = pDVar9->filter_off;" (assignment_expression "MVar21 = pDVar9->filter_off" identifier = (field_expression "pDVar9->filter_off" identifier -> field_identifier)) ;) (expression_statement "pCVar5[4] = pDVar13->id;" (assignment_expression "pCVar5[4] = pDVar13->id" (subscript_expression "pCVar5[4]" identifier [ number_literal ]) = (field_expression "pDVar13->id" identifier -> field_identifier)) ;) (expression_statement "pCVar5[5] = CVar17;" (assignment_expression "pCVar5[5] = CVar17" (subscript_expression "pCVar5[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pDVar3 = ppDVar11[sVar18];" (assignment_expression "pDVar3 = ppDVar11[sVar18]" identifier = (subscript_expression "ppDVar11[sVar18]" identifier [ identifier ])) ;) (if_statement "if (MVar21 == MagickFalse) {\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }" if (parenthesized_expression "(MVar21 == MagickFalse)" ( (binary_expression "MVar21 == MagickFalse" identifier == identifier) )) (compound_statement "{\n        if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar35 = (pDVar3->fill).red;\nLAB_0006c398:\n        dVar35 = dVar35 - dStack_148;\n        uVar4 = SUB84(dVar35,0);\n        if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;\n        dStack_140 = (pDVar3->fill).green - dStack_140;\n        uVar4 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = (pDVar3->fill).blue - dStack_138;\n        uVar4 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }\n        if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }" { (if_statement "if ((pDVar3->fill).alpha_trait != UndefinedPixelTrait) {\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" if (parenthesized_expression "((pDVar3->fill).alpha_trait != UndefinedPixelTrait)" ( (binary_expression "(pDVar3->fill).alpha_trait != UndefinedPixelTrait" (field_expression "(pDVar3->fill).alpha_trait" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) != identifier) )) (compound_statement "{\n          uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);\n          uVar22 = *(uint *)&(pDVar3->fill).alpha;\n          if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);\n          uVar37 = SUB84(dVar35,0);\n          if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }\n          iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" { (expression_statement "uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4);" (assignment_expression "uVar4 = *(undefined4 *)((int)&(pDVar3->fill).alpha + 4)" identifier = (pointer_expression "*(undefined4 *)((int)&(pDVar3->fill).alpha + 4)" * (cast_expression "(undefined4 *)((int)&(pDVar3->fill).alpha + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(pDVar3->fill).alpha + 4)" ( (binary_expression "(int)&(pDVar3->fill).alpha + 4" (cast_expression "(int)&(pDVar3->fill).alpha" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(pDVar3->fill).alpha" & (field_expression "(pDVar3->fill).alpha" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) ;) (expression_statement "uVar22 = *(uint *)&(pDVar3->fill).alpha;" (assignment_expression "uVar22 = *(uint *)&(pDVar3->fill).alpha" identifier = (pointer_expression "*(uint *)&(pDVar3->fill).alpha" * (cast_expression "(uint *)&(pDVar3->fill).alpha" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pDVar3->fill).alpha" & (field_expression "(pDVar3->fill).alpha" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier))))) ;) (if_statement "if (asStack_170[2] == 0) {\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" if (parenthesized_expression "(asStack_170[2] == 0)" ( (binary_expression "asStack_170[2] == 0" (subscript_expression "asStack_170[2]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n            acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" { (expression_statement "acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "acStack_124._0_4_ = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (field_expression "acStack_124._0_4_" identifier . field_identifier) = (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" identifier = (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" * (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) })) (labeled_statement "LAB_0006c260:\n          dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);" statement_identifier : (expression_statement "dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_);" (assignment_expression "dVar35 = (double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_)" identifier = (binary_expression "(double)CONCAT44(uVar22,uVar4) - (double)CONCAT44(uStack_128,acStack_124._0_4_)" (cast_expression "(double)CONCAT44(uVar22,uVar4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar22,uVar4)" identifier (argument_list "(uVar22,uVar4)" ( identifier , identifier )))) - (cast_expression "(double)CONCAT44(uStack_128,acStack_124._0_4_)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,acStack_124._0_4_)" identifier (argument_list "(uStack_128,acStack_124._0_4_)" ( identifier , (field_expression "acStack_124._0_4_" identifier . field_identifier) )))))) ;)) (expression_statement "uVar37 = SUB84(dVar35,0);" (assignment_expression "uVar37 = SUB84(dVar35,0)" identifier = (call_expression "SUB84(dVar35,0)" identifier (argument_list "(dVar35,0)" ( identifier , number_literal )))) ;) (if_statement "if (dVar35 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }" if (parenthesized_expression "(dVar35 < 0.0)" ( (binary_expression "dVar35 < 0.0" identifier < number_literal) )) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n            dVar35 = -dVar35;\n            acStack_174 = (char  [4])uVar37;\n          }" { (expression_statement "uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar35 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dVar35 >> 0x20)" ( (binary_expression "(ulonglong)dVar35 >> 0x20" (cast_expression "(ulonglong)dVar35" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dVar35 = -dVar35;" (assignment_expression "dVar35 = -dVar35" identifier = (unary_expression "-dVar35" - identifier)) ;) (expression_statement "acStack_174 = (char  [4])uVar37;" (assignment_expression "acStack_174 = (char  [4])uVar37" identifier = (cast_expression "(char  [4])uVar37" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) })) (expression_statement "iVar2 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (if_statement "if (dVar35 < *(double *)(iVar2 + 0x1a98)) {\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" if (parenthesized_expression "(dVar35 < *(double *)(iVar2 + 0x1a98))" ( (binary_expression "dVar35 < *(double *)(iVar2 + 0x1a98)" identifier < (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) ))))) )) (compound_statement "{\n            if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }\n            if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" { (if_statement "if ((double)CONCAT44(uVar22,uVar4) < 0.0) {\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }" if (parenthesized_expression "((double)CONCAT44(uVar22,uVar4) < 0.0)" ( (binary_expression "(double)CONCAT44(uVar22,uVar4) < 0.0" (cast_expression "(double)CONCAT44(uVar22,uVar4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar22,uVar4)" identifier (argument_list "(uVar22,uVar4)" ( identifier , identifier )))) < number_literal) )) (compound_statement "{\n              uVar22 = uVar22 ^ 0x80000000;\n              uStack_178 = uVar22;\n              acStack_174 = (char  [4])uVar4;\n            }" { (expression_statement "uVar22 = uVar22 ^ 0x80000000;" (assignment_expression "uVar22 = uVar22 ^ 0x80000000" identifier = (binary_expression "uVar22 ^ 0x80000000" identifier ^ number_literal)) ;) (expression_statement "uStack_178 = uVar22;" (assignment_expression "uStack_178 = uVar22" identifier = identifier) ;) (expression_statement "acStack_174 = (char  [4])uVar4;" (assignment_expression "acStack_174 = (char  [4])uVar4" identifier = (cast_expression "(char  [4])uVar4" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) })) (if_statement "if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)) {\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }" if (parenthesized_expression "(*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4))" ( (binary_expression "*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uVar22,uVar4)" (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) )))) <= (cast_expression "(double)CONCAT44(uVar22,uVar4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar22,uVar4)" identifier (argument_list "(uVar22,uVar4)" ( identifier , identifier ))))) )) (compound_statement "{\n              if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }\n              if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }\n            }" { (if_statement "if ((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }" if (parenthesized_expression "((double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0)" ( (binary_expression "(double)CONCAT44(uStack_128,acStack_124._0_4_) < 0.0" (cast_expression "(double)CONCAT44(uStack_128,acStack_124._0_4_)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,acStack_124._0_4_)" identifier (argument_list "(uStack_128,acStack_124._0_4_)" ( identifier , (field_expression "acStack_124._0_4_" identifier . field_identifier) )))) < number_literal) )) (compound_statement "{\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                acStack_174 = (char  [4])acStack_124._0_4_;\n              }" { (expression_statement "uStack_128 = uStack_128 ^ 0x80000000;" (assignment_expression "uStack_128 = uStack_128 ^ 0x80000000" identifier = (binary_expression "uStack_128 ^ 0x80000000" identifier ^ number_literal)) ;) (expression_statement "uStack_178 = uStack_128;" (assignment_expression "uStack_178 = uStack_128" identifier = identifier) ;) (expression_statement "acStack_174 = (char  [4])acStack_124._0_4_;" (assignment_expression "acStack_174 = (char  [4])acStack_124._0_4_" identifier = (cast_expression "(char  [4])acStack_124._0_4_" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) (field_expression "acStack_124._0_4_" identifier . field_identifier))) ;) })) (if_statement "if (*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)) {\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }" if (parenthesized_expression "(*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_))" ( (binary_expression "*(double *)(iVar2 + 0x1a98) <= (double)CONCAT44(uStack_128,acStack_124._0_4_)" (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) )))) <= (cast_expression "(double)CONCAT44(uStack_128,acStack_124._0_4_)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,acStack_124._0_4_)" identifier (argument_list "(uStack_128,acStack_124._0_4_)" ( identifier , (field_expression "acStack_124._0_4_" identifier . field_identifier) ))))) )) (compound_statement "{\n                dVar35 = (pDVar3->fill).red;\n                goto LAB_0006c398;\n              }" { (expression_statement "dVar35 = (pDVar3->fill).red;" (assignment_expression "dVar35 = (pDVar3->fill).red" identifier = (field_expression "(pDVar3->fill).red" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier)) ;) (goto_statement "goto LAB_0006c398;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_0006c360;" goto statement_identifier ;) })) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;) })) (if_statement "if (asStack_170[2] != 0) {\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" if (parenthesized_expression "(asStack_170[2] != 0)" ( (binary_expression "asStack_170[2] != 0" (subscript_expression "asStack_170[2]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n          uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" { (expression_statement "uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uVar4 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uVar22 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" identifier = (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" * (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (goto_statement "goto LAB_0006c260;" goto statement_identifier ;) })) (expression_statement "iVar2 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "dVar35 = (pDVar3->fill).red;" (assignment_expression "dVar35 = (pDVar3->fill).red" identifier = (field_expression "(pDVar3->fill).red" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier)) ;) (labeled_statement "LAB_0006c398:\n        dVar35 = dVar35 - dStack_148;" statement_identifier : (expression_statement "dVar35 = dVar35 - dStack_148;" (assignment_expression "dVar35 = dVar35 - dStack_148" identifier = (binary_expression "dVar35 - dStack_148" identifier - identifier)) ;)) (expression_statement "uVar4 = SUB84(dVar35,0);" (assignment_expression "uVar4 = SUB84(dVar35,0)" identifier = (call_expression "SUB84(dVar35,0)" identifier (argument_list "(dVar35,0)" ( identifier , number_literal )))) ;) (if_statement "if (dVar35 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }" if (parenthesized_expression "(dVar35 < 0.0)" ( (binary_expression "dVar35 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;\n          dVar35 = -dVar35;\n          acStack_174 = (char  [4])uVar4;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dVar35 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar35 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dVar35 >> 0x20)" ( (binary_expression "(ulonglong)dVar35 >> 0x20" (cast_expression "(ulonglong)dVar35" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dVar35 = -dVar35;" (assignment_expression "dVar35 = -dVar35" identifier = (unary_expression "-dVar35" - identifier)) ;) (expression_statement "acStack_174 = (char  [4])uVar4;" (assignment_expression "acStack_174 = (char  [4])uVar4" identifier = (cast_expression "(char  [4])uVar4" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) })) (if_statement "if (*(double *)(iVar2 + 0x1a98) <= dVar35) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar2 + 0x1a98) <= dVar35)" ( (binary_expression "*(double *)(iVar2 + 0x1a98) <= dVar35" (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (expression_statement "dStack_140 = (pDVar3->fill).green - dStack_140;" (assignment_expression "dStack_140 = (pDVar3->fill).green - dStack_140" identifier = (binary_expression "(pDVar3->fill).green - dStack_140" (field_expression "(pDVar3->fill).green" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) - identifier)) ;) (expression_statement "uVar4 = SUB84(dStack_140,0);" (assignment_expression "uVar4 = SUB84(dStack_140,0)" identifier = (call_expression "SUB84(dStack_140,0)" identifier (argument_list "(dStack_140,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }" if (parenthesized_expression "(dStack_140 < 0.0)" ( (binary_expression "dStack_140 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          acStack_174 = (char  [4])uVar4;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_140 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_140 >> 0x20)" ( (binary_expression "(ulonglong)dStack_140 >> 0x20" (cast_expression "(ulonglong)dStack_140" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_140 = -dStack_140;" (assignment_expression "dStack_140 = -dStack_140" identifier = (unary_expression "-dStack_140" - identifier)) ;) (expression_statement "acStack_174 = (char  [4])uVar4;" (assignment_expression "acStack_174 = (char  [4])uVar4" identifier = (cast_expression "(char  [4])uVar4" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) })) (if_statement "if (*(double *)(iVar2 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar2 + 0x1a98) <= dStack_140)" ( (binary_expression "*(double *)(iVar2 + 0x1a98) <= dStack_140" (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (expression_statement "dStack_138 = (pDVar3->fill).blue - dStack_138;" (assignment_expression "dStack_138 = (pDVar3->fill).blue - dStack_138" identifier = (binary_expression "(pDVar3->fill).blue - dStack_138" (field_expression "(pDVar3->fill).blue" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) - identifier)) ;) (expression_statement "uVar4 = SUB84(dStack_138,0);" (assignment_expression "uVar4 = SUB84(dStack_138,0)" identifier = (call_expression "SUB84(dStack_138,0)" identifier (argument_list "(dStack_138,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }" if (parenthesized_expression "(dStack_138 < 0.0)" ( (binary_expression "dStack_138 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          acStack_174 = (char  [4])uVar4;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_138 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_138 >> 0x20)" ( (binary_expression "(ulonglong)dStack_138 >> 0x20" (cast_expression "(ulonglong)dStack_138" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_138 = -dStack_138;" (assignment_expression "dStack_138 = -dStack_138" identifier = (unary_expression "-dStack_138" - identifier)) ;) (expression_statement "acStack_174 = (char  [4])uVar4;" (assignment_expression "acStack_174 = (char  [4])uVar4" identifier = (cast_expression "(char  [4])uVar4" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) })) (if_statement "if (*(double *)(iVar2 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar2 + 0x1a98) <= dStack_138)" ( (binary_expression "*(double *)(iVar2 + 0x1a98) <= dStack_138" (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (if_statement "if ((pDVar3->fill).colorspace == CMYKColorspace) {\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" if (parenthesized_expression "((pDVar3->fill).colorspace == CMYKColorspace)" ( (binary_expression "(pDVar3->fill).colorspace == CMYKColorspace" (field_expression "(pDVar3->fill).colorspace" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) == identifier) )) (compound_statement "{\n          dStack_130 = (pDVar3->fill).black - dStack_130;\n          uVar4 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }\n          if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" { (expression_statement "dStack_130 = (pDVar3->fill).black - dStack_130;" (assignment_expression "dStack_130 = (pDVar3->fill).black - dStack_130" identifier = (binary_expression "(pDVar3->fill).black - dStack_130" (field_expression "(pDVar3->fill).black" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) - identifier)) ;) (expression_statement "uVar4 = SUB84(dStack_130,0);" (assignment_expression "uVar4 = SUB84(dStack_130,0)" identifier = (call_expression "SUB84(dStack_130,0)" identifier (argument_list "(dStack_130,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }" if (parenthesized_expression "(dStack_130 < 0.0)" ( (binary_expression "dStack_130 < 0.0" identifier < number_literal) )) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            acStack_174 = (char  [4])uVar4;\n          }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_130 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_130 >> 0x20)" ( (binary_expression "(ulonglong)dStack_130 >> 0x20" (cast_expression "(ulonglong)dStack_130" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_130 = -dStack_130;" (assignment_expression "dStack_130 = -dStack_130" identifier = (unary_expression "-dStack_130" - identifier)) ;) (expression_statement "acStack_174 = (char  [4])uVar4;" (assignment_expression "acStack_174 = (char  [4])uVar4" identifier = (cast_expression "(char  [4])uVar4" ( (type_descriptor "char  [4]" primitive_type (abstract_array_declarator "[4]" [ number_literal ])) ) identifier)) ;) })) (if_statement "if (*(double *)(iVar2 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar2 + 0x1a98) <= dStack_130)" ( (binary_expression "*(double *)(iVar2 + 0x1a98) <= dStack_130" (pointer_expression "*(double *)(iVar2 + 0x1a98)" * (cast_expression "(double *)(iVar2 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x1a98)" ( (binary_expression "iVar2 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) })) }) (else_clause "else {\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }" else (compound_statement "{\nLAB_0006c2d0:\n        pCVar6 = aCStack_118;\n        pPVar1 = &pDVar3->fill;\n        do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);\n        iVar2 = *(int *)(pcStack_180 + -0x7fc4);\n        CVar17 = pCVar5[5];\n        pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        *(ClassType *)&pPVar8->fuzz = *pCVar6;\n        *(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;\n        MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));\n        MVGAppendColor(pDVar9,(PixelInfo *)wand);\n        MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));\n      }" { (labeled_statement "LAB_0006c2d0:\n        pCVar6 = aCStack_118;" statement_identifier : (expression_statement "pCVar6 = aCStack_118;" (assignment_expression "pCVar6 = aCStack_118" identifier = identifier) ;)) (expression_statement "pPVar1 = &pDVar3->fill;" (assignment_expression "pPVar1 = &pDVar3->fill" identifier = (pointer_expression "&pDVar3->fill" & (field_expression "pDVar3->fill" identifier -> field_identifier))) ;) (do_statement "do {\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        } while (pCVar6 != aCStack_118 + 0x14);" do (compound_statement "{\n          pPVar8 = pPVar1;\n          pCVar5 = pCVar6;\n          pCVar6 = pCVar5 + 4;\n          CVar25 = pCVar5[1];\n          CVar20 = pCVar5[2];\n          CVar17 = pCVar5[3];\n          pPVar8->storage_class = *pCVar5;\n          pPVar8->colorspace = CVar25;\n          pPVar8->alpha_trait = CVar20;\n          *(ClassType *)&pPVar8->field_0xc = CVar17;\n          pPVar1 = (PixelInfo *)&pPVar8->fuzz;\n        }" { (expression_statement "pPVar8 = pPVar1;" (assignment_expression "pPVar8 = pPVar1" identifier = identifier) ;) (expression_statement "pCVar5 = pCVar6;" (assignment_expression "pCVar5 = pCVar6" identifier = identifier) ;) (expression_statement "pCVar6 = pCVar5 + 4;" (assignment_expression "pCVar6 = pCVar5 + 4" identifier = (binary_expression "pCVar5 + 4" identifier + number_literal)) ;) (expression_statement "CVar25 = pCVar5[1];" (assignment_expression "CVar25 = pCVar5[1]" identifier = (subscript_expression "pCVar5[1]" identifier [ number_literal ])) ;) (expression_statement "CVar20 = pCVar5[2];" (assignment_expression "CVar20 = pCVar5[2]" identifier = (subscript_expression "pCVar5[2]" identifier [ number_literal ])) ;) (expression_statement "CVar17 = pCVar5[3];" (assignment_expression "CVar17 = pCVar5[3]" identifier = (subscript_expression "pCVar5[3]" identifier [ number_literal ])) ;) (expression_statement "pPVar8->storage_class = *pCVar5;" (assignment_expression "pPVar8->storage_class = *pCVar5" (field_expression "pPVar8->storage_class" identifier -> field_identifier) = (pointer_expression "*pCVar5" * identifier)) ;) (expression_statement "pPVar8->colorspace = CVar25;" (assignment_expression "pPVar8->colorspace = CVar25" (field_expression "pPVar8->colorspace" identifier -> field_identifier) = identifier) ;) (expression_statement "pPVar8->alpha_trait = CVar20;" (assignment_expression "pPVar8->alpha_trait = CVar20" (field_expression "pPVar8->alpha_trait" identifier -> field_identifier) = identifier) ;) (expression_statement "*(ClassType *)&pPVar8->field_0xc = CVar17;" (assignment_expression "*(ClassType *)&pPVar8->field_0xc = CVar17" (pointer_expression "*(ClassType *)&pPVar8->field_0xc" * (cast_expression "(ClassType *)&pPVar8->field_0xc" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pPVar8->field_0xc" & (field_expression "pPVar8->field_0xc" identifier -> field_identifier)))) = identifier) ;) (expression_statement "pPVar1 = (PixelInfo *)&pPVar8->fuzz;" (assignment_expression "pPVar1 = (PixelInfo *)&pPVar8->fuzz" identifier = (cast_expression "(PixelInfo *)&pPVar8->fuzz" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pPVar8->fuzz" & (field_expression "pPVar8->fuzz" identifier -> field_identifier)))) ;) }) while (parenthesized_expression "(pCVar6 != aCStack_118 + 0x14)" ( (binary_expression "pCVar6 != aCStack_118 + 0x14" identifier != (binary_expression "aCStack_118 + 0x14" identifier + number_literal)) )) ;) (expression_statement "iVar2 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "CVar17 = pCVar5[5];" (assignment_expression "CVar17 = pCVar5[5]" identifier = (subscript_expression "pCVar5[5]" identifier [ number_literal ])) ;) (expression_statement "pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);" (assignment_expression "pAVar16 = (AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" identifier = (cast_expression "(AffineMatrix *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" ( (type_descriptor "AffineMatrix *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" ( (binary_expression "*(int *)(pcStack_180 + -0x7f90) + 0x2838" (pointer_expression "*(int *)(pcStack_180 + -0x7f90)" * (cast_expression "(int *)(pcStack_180 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7f90)" ( (binary_expression "pcStack_180 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(ClassType *)&pPVar8->fuzz = *pCVar6;" (assignment_expression "*(ClassType *)&pPVar8->fuzz = *pCVar6" (pointer_expression "*(ClassType *)&pPVar8->fuzz" * (cast_expression "(ClassType *)&pPVar8->fuzz" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pPVar8->fuzz" & (field_expression "pPVar8->fuzz" identifier -> field_identifier)))) = (pointer_expression "*pCVar6" * identifier)) ;) (expression_statement "*(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17;" (assignment_expression "*(ClassType *)((int)&pPVar8->fuzz + 4) = CVar17" (pointer_expression "*(ClassType *)((int)&pPVar8->fuzz + 4)" * (cast_expression "(ClassType *)((int)&pPVar8->fuzz + 4)" ( (type_descriptor "ClassType *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pPVar8->fuzz + 4)" ( (binary_expression "(int)&pPVar8->fuzz + 4" (cast_expression "(int)&pPVar8->fuzz" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pPVar8->fuzz" & (field_expression "pPVar8->fuzz" identifier -> field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc));" (call_expression "MVGPrintf(pDVar9,(char *)(iVar2 + -0xdc))" identifier (argument_list "(pDVar9,(char *)(iVar2 + -0xdc))" ( identifier , (cast_expression "(char *)(iVar2 + -0xdc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xdc)" ( (binary_expression "iVar2 + -0xdc" identifier + number_literal) ))) ))) ;) (expression_statement "MVGAppendColor(pDVar9,(PixelInfo *)wand);" (call_expression "MVGAppendColor(pDVar9,(PixelInfo *)wand)" identifier (argument_list "(pDVar9,(PixelInfo *)wand)" ( identifier , (cast_expression "(PixelInfo *)wand" ( (type_descriptor "PixelInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224));" (call_expression "MVGPrintf(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224))" identifier (argument_list "(pDVar9,(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224))" ( identifier , (cast_expression "(char *)(*(int *)(pcStack_180 + -0x7fc4) + -0x224)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fc4) + -0x224)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x224" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ))) ;) }))) (labeled_statement "LAB_0006c360:\n      pcVar32 = pcStack_180;" statement_identifier : (expression_statement "pcVar32 = pcStack_180;" (assignment_expression "pcVar32 = pcStack_180" identifier = identifier) ;)) (if_statement "if (iStack_bc == *piVar26) {\n        return;\n      }" if (parenthesized_expression "(iStack_bc == *piVar26)" ( (binary_expression "iStack_bc == *piVar26" identifier == (pointer_expression "*piVar26" * identifier)) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) }) (else_clause "else {\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }" else (compound_statement "{\nLAB_0006c624:\n      pAVar16 = unaff_s3;\n      (**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);\n    }" { (labeled_statement "LAB_0006c624:\n      pAVar16 = unaff_s3;" statement_identifier : (expression_statement "pAVar16 = unaff_s3;" (assignment_expression "pAVar16 = unaff_s3" identifier = identifier) ;)) (expression_statement "(**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcVar32 + -0x78e0))\n                (*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcVar32 + -0x78e0))" ( (pointer_expression "**(code **)(pcVar32 + -0x78e0)" * (pointer_expression "*(code **)(pcVar32 + -0x78e0)" * (cast_expression "(code **)(pcVar32 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + -0x78e0)" ( (binary_expression "pcVar32 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar32 + -0x7fc4) + 0x419c,*(int *)(pcVar32 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar32 + -0x7fc4) + 0x9d4)" ( (binary_expression "*(int *)(pcVar32 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(pcVar32 + -0x7fc4)" * (cast_expression "(int *)(pcVar32 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + -0x7fc4)" ( (binary_expression "pcVar32 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar32 + -0x7fc4)" * (cast_expression "(int *)(pcVar32 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + -0x7fc4)" ( (binary_expression "pcVar32 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar32 + -0x7fc4)" * (cast_expression "(int *)(pcVar32 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + -0x7fc4)" ( (binary_expression "pcVar32 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar32 + -0x7c74))();" (call_expression "(**(code **)(pcVar32 + -0x7c74))()" (parenthesized_expression "(**(code **)(pcVar32 + -0x7c74))" ( (pointer_expression "**(code **)(pcVar32 + -0x7c74)" * (pointer_expression "*(code **)(pcVar32 + -0x7c74)" * (cast_expression "(code **)(pcVar32 + -0x7c74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + -0x7c74)" ( (binary_expression "pcVar32 + -0x7c74" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "pDVar13 = pDVar9;" (assignment_expression "pDVar13 = pDVar9" identifier = identifier) ;) (expression_statement "unaff_s3 = pAVar16;" (assignment_expression "unaff_s3 = pAVar16" identifier = identifier) ;) })) (expression_statement "uVar4 = 0x12c1;" (assignment_expression "uVar4 = 0x12c1" identifier = number_literal) ;) (expression_statement "pcVar30 = *(code **)(pcVar32 + -0x78e0);" (assignment_expression "pcVar30 = *(code **)(pcVar32 + -0x78e0)" identifier = (pointer_expression "*(code **)(pcVar32 + -0x78e0)" * (cast_expression "(code **)(pcVar32 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + -0x78e0)" ( (binary_expression "pcVar32 + -0x78e0" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar32 + -0x7fc4) + 0x9d4;" (assignment_expression "iVar2 = *(int *)(pcVar32 + -0x7fc4) + 0x9d4" identifier = (binary_expression "*(int *)(pcVar32 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar32 + -0x7fc4)" * (cast_expression "(int *)(pcVar32 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + -0x7fc4)" ( (binary_expression "pcVar32 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar33 = DrawSetFillOpacity;" (assignment_expression "pcVar33 = DrawSetFillOpacity" identifier = identifier) ;) (expression_statement "pDVar9 = (DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954);" (assignment_expression "pDVar9 = (DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar32 + -0x7fc4) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar32 + -0x7fc4) + -0x954)" ( (binary_expression "*(int *)(pcVar32 + -0x7fc4) + -0x954" (pointer_expression "*(int *)(pcVar32 + -0x7fc4)" * (cast_expression "(int *)(pcVar32 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + -0x7fc4)" ( (binary_expression "pcVar32 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar30)(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970);" (call_expression "(*pcVar30)(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(pDVar9,*(int *)(pcVar32 + -0x7fc4) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar32 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar32 + -0x7fc4)" * (cast_expression "(int *)(pcVar32 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + -0x7fc4)" ( (binary_expression "pcVar32 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcStack_1b0 = pcVar30 + 0xea988;" (assignment_expression "pcStack_1b0 = pcVar30 + 0xea988" identifier = (binary_expression "pcVar30 + 0xea988" identifier + number_literal)) ;) (expression_statement "dVar35 = (double)CONCAT44(uVar4,iVar2);" (assignment_expression "dVar35 = (double)CONCAT44(uVar4,iVar2)" identifier = (cast_expression "(double)CONCAT44(uVar4,iVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar4,iVar2)" identifier (argument_list "(uVar4,iVar2)" ( identifier , identifier ))))) ;) (expression_statement "pDStack_1e0 = wand;" (assignment_expression "pDStack_1e0 = wand" identifier = identifier) ;) (expression_statement "pDStack_1a8 = wand;" (assignment_expression "pDStack_1a8 = wand" identifier = identifier) ;) (expression_statement "pcStack_1a4 = pcVar33;" (assignment_expression "pcStack_1a4 = pcVar33" identifier = identifier) ;) (if_statement "if (pDVar9 != (DrawingWand *)0x0) {\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);\n    pDStack_1e0 = pDVar9;\n  }" if (parenthesized_expression "(pDVar9 != (DrawingWand *)0x0)" ( (binary_expression "pDVar9 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);\n    pDStack_1e0 = pDVar9;\n  }" { (if_statement "if (pDVar9->signature == 0xabacadab) {\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }" if (parenthesized_expression "(pDVar9->signature == 0xabacadab)" ( (binary_expression "pDVar9->signature == 0xabacadab" (field_expression "pDVar9->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);\n      (pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;\n      MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }" { (if_statement "if (pDVar9->debug != MagickFalse) {\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" if (parenthesized_expression "(pDVar9->debug != MagickFalse)" ( (binary_expression "pDVar9->debug != MagickFalse" (field_expression "pDVar9->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;\n        pcStack_1b4 = pDVar9->name;\n        (**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" { (expression_statement "iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c;" (assignment_expression "iStack_1b8 = *(int *)(pcVar30 + 0xe29b8) + -0x131c" identifier = (binary_expression "*(int *)(pcVar30 + 0xe29b8) + -0x131c" (pointer_expression "*(int *)(pcVar30 + 0xe29b8)" * (cast_expression "(int *)(pcVar30 + 0xe29b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29b8)" ( (binary_expression "pcVar30 + 0xe29b8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcStack_1b4 = pDVar9->name;" (assignment_expression "pcStack_1b4 = pDVar9->name" identifier = (field_expression "pDVar9->name" identifier -> field_identifier)) ;) (expression_statement "(**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4);" (call_expression "(**(code **)(pcVar30 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2e10))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2e10)" * (pointer_expression "*(code **)(pcVar30 + 0xe2e10)" * (cast_expression "(code **)(pcVar30 + 0xe2e10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2e10)" ( (binary_expression "pcVar30 + 0xe2e10" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar30 + 0xe29c4) + -0x970,*(int *)(pcVar30 + 0xe29c4) + 0x998,\n                   0x12f4)" ( number_literal , (binary_expression "*(int *)(pcVar30 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe29c4) + 0x998" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));" (assignment_expression "dVar36 = (double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" identifier = (cast_expression "(double)(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (binary_expression "dVar35 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1b0 + -0x7fd4)" * (cast_expression "(int *)(pcStack_1b0 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1b0 + -0x7fd4)" ( (binary_expression "pcStack_1b0 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ))))) ;) (if_statement "if ((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)) {\n        return;\n      }" if (parenthesized_expression "((pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36))" ( (binary_expression "(pDVar9->filter_off == MagickFalse) &&\n         ((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)" (parenthesized_expression "(pDVar9->filter_off == MagickFalse)" ( (binary_expression "pDVar9->filter_off == MagickFalse" (field_expression "pDVar9->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "((pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36)" ( (binary_expression "(pDVar9->graphic_context[pDVar9->index]->fill).alpha == dVar36" (field_expression "(pDVar9->graphic_context[pDVar9->index]->fill).alpha" (parenthesized_expression "(pDVar9->graphic_context[pDVar9->index]->fill)" ( (field_expression "pDVar9->graphic_context[pDVar9->index]->fill" (subscript_expression "pDVar9->graphic_context[pDVar9->index]" (field_expression "pDVar9->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar9->index" identifier -> field_identifier) ]) -> field_identifier) )) . field_identifier) == identifier) ))) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (expression_statement "iVar2 = *(int *)(pcStack_1b0 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(pcStack_1b0 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_1b0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1b0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1b0 + -0x7fc4)" ( (binary_expression "pcStack_1b0 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "(pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36;" (assignment_expression "(pDVar9->graphic_context[pDVar9->index]->fill).alpha = dVar36" (field_expression "(pDVar9->graphic_context[pDVar9->index]->fill).alpha" (parenthesized_expression "(pDVar9->graphic_context[pDVar9->index]->fill)" ( (field_expression "pDVar9->graphic_context[pDVar9->index]->fill" (subscript_expression "pDVar9->graphic_context[pDVar9->index]" (field_expression "pDVar9->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar9->index" identifier -> field_identifier) ]) -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));" (call_expression "MVGPrintf(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0))" identifier (argument_list "(pDVar9,(char *)(iVar2 + -0xd4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0))" ( identifier , (cast_expression "(char *)(iVar2 + -0xd4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xd4)" ( (binary_expression "iVar2 + -0xd4" identifier + number_literal) ))) , (cast_expression "(int)((ulonglong)dVar35 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar35 >> 0x20)" ( (binary_expression "(ulonglong)dVar35 >> 0x20" (cast_expression "(ulonglong)dVar35" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar35,0)" identifier (argument_list "(dVar35,0)" ( identifier , number_literal ))) ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac);" (call_expression "(**(code **)(pcVar30 + 0xe30a8))\n              (*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe30a8))" ( (pointer_expression "**(code **)(pcVar30 + 0xe30a8)" * (pointer_expression "*(code **)(pcVar30 + 0xe30a8)" * (cast_expression "(code **)(pcVar30 + 0xe30a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe30a8)" ( (binary_expression "pcVar30 + 0xe30a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar30 + 0xe29c4) + 0x419c,*(int *)(pcVar30 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar30 + 0xe29c4) + 0x9ac)" ( (binary_expression "*(int *)(pcVar30 + 0xe29c4) + 0x419c" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pDStack_1e0 = pDVar9;" (assignment_expression "pDStack_1e0 = pDVar9" identifier = identifier) ;) })) (expression_statement "uVar4 = 0x12f1;" (assignment_expression "uVar4 = 0x12f1" identifier = number_literal) ;) (expression_statement "pcVar33 = *(code **)(pcVar30 + 0xe30a8);" (assignment_expression "pcVar33 = *(code **)(pcVar30 + 0xe30a8)" identifier = (pointer_expression "*(code **)(pcVar30 + 0xe30a8)" * (cast_expression "(code **)(pcVar30 + 0xe30a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe30a8)" ( (binary_expression "pcVar30 + 0xe30a8" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar30 + 0xe29c4) + 0x9ac;" (assignment_expression "iVar2 = *(int *)(pcVar30 + 0xe29c4) + 0x9ac" identifier = (binary_expression "*(int *)(pcVar30 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar34 = DrawSetFontResolution;" (assignment_expression "pcVar34 = DrawSetFontResolution" identifier = identifier) ;) (expression_statement "pDVar12 = (DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954);" (assignment_expression "pDVar12 = (DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar30 + 0xe29c4) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar30 + 0xe29c4) + -0x954)" ( (binary_expression "*(int *)(pcVar30 + 0xe29c4) + -0x954" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar33)(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970);" (call_expression "(*pcVar33)(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970)" (parenthesized_expression "(*pcVar33)" ( (pointer_expression "*pcVar33" * identifier) )) (argument_list "(pDVar12,*(int *)(pcVar30 + 0xe29c4) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar30 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe29c4)" * (cast_expression "(int *)(pcVar30 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe29c4)" ( (binary_expression "pcVar30 + 0xe29c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar32 = pcVar33 + 0xea838;" (assignment_expression "pcVar32 = pcVar33 + 0xea838" identifier = (binary_expression "pcVar33 + 0xea838" identifier + number_literal)) ;) (expression_statement "piVar27 = *(int **)(pcVar33 + 0xe2d04);" (assignment_expression "piVar27 = *(int **)(pcVar33 + 0xe2d04)" identifier = (pointer_expression "*(int **)(pcVar33 + 0xe2d04)" * (cast_expression "(int **)(pcVar33 + 0xe2d04)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0xe2d04)" ( (binary_expression "pcVar33 + 0xe2d04" identifier + number_literal) ))))) ;) (expression_statement "pDStack_1e4 = (DrawingWand *)*piVar27;" (assignment_expression "pDStack_1e4 = (DrawingWand *)*piVar27" identifier = (cast_expression "(DrawingWand *)*piVar27" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar27" * identifier))) ;) (expression_statement "uVar39 = CONCAT44(uVar4,iVar2);" (assignment_expression "uVar39 = CONCAT44(uVar4,iVar2)" identifier = (call_expression "CONCAT44(uVar4,iVar2)" identifier (argument_list "(uVar4,iVar2)" ( identifier , identifier )))) ;) (expression_statement "pDVar9 = pDStack_1e0;" (assignment_expression "pDVar9 = pDStack_1e0" identifier = identifier) ;) (expression_statement "pcStack_11f0 = pcVar32;" (assignment_expression "pcStack_11f0 = pcVar32" identifier = identifier) ;) (expression_statement "piStack_1dc = piVar26;" (assignment_expression "piStack_1dc = piVar26" identifier = identifier) ;) (expression_statement "pDStack_1d8 = pDVar13;" (assignment_expression "pDStack_1d8 = pDVar13" identifier = identifier) ;) (expression_statement "pcStack_1d4 = pcVar34;" (assignment_expression "pcStack_1d4 = pcVar34" identifier = identifier) ;) (expression_statement "dStack_1d0 = dVar35;" (assignment_expression "dStack_1d0 = dVar35" identifier = identifier) ;) (if_statement "if (pDVar12 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar23 = 0x131f;\n    iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;\n    pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);\n    (**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar9 = pDVar12;\n    if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }\n    piVar26 = aiStack_11e4;\n    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar39;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);\n    pDVar13 = pDStack_1e4;\n    pcVar32 = pcStack_11f0;\n    if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }\n  }" if (parenthesized_expression "(pDVar12 == (DrawingWand *)0x0)" ( (binary_expression "pDVar12 == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0006c904:\n    iVar23 = 0x131f;\n    iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;\n    pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);\n    (**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);\n  }" { (labeled_statement "LAB_0006c904:\n    iVar23 = 0x131f;" statement_identifier : (expression_statement "iVar23 = 0x131f;" (assignment_expression "iVar23 = 0x131f" identifier = number_literal) ;)) (expression_statement "iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980;" (assignment_expression "iVar2 = *(int *)(pcVar33 + 0xe2874) + 0x980" identifier = (binary_expression "*(int *)(pcVar33 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954);" (assignment_expression "pDVar13 = (DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar33 + 0xe2874) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar33 + 0xe2874) + -0x954)" ( (binary_expression "*(int *)(pcVar33 + 0xe2874) + -0x954" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970);" (call_expression "(**(code **)(pcVar33 + 0xe2f58))(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(pcVar33 + 0xe2f58))" ( (pointer_expression "**(code **)(pcVar33 + 0xe2f58)" * (pointer_expression "*(code **)(pcVar33 + 0xe2f58)" * (cast_expression "(code **)(pcVar33 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0xe2f58)" ( (binary_expression "pcVar33 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(pDVar13,*(int *)(pcVar33 + 0xe2874) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar33 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    pDVar9 = pDVar12;\n    if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }\n    piVar26 = aiStack_11e4;\n    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar39;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);\n    pDVar13 = pDStack_1e4;\n    pcVar32 = pcStack_11f0;\n    if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }\n  }" else (compound_statement "{\n    pDVar9 = pDVar12;\n    if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }\n    piVar26 = aiStack_11e4;\n    iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar39;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);\n    pDVar13 = pDStack_1e4;\n    pcVar32 = pcStack_11f0;\n    if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }\n  }" { (expression_statement "pDVar9 = pDVar12;" (assignment_expression "pDVar9 = pDVar12" identifier = identifier) ;) (if_statement "if (pDVar12->signature != 0xabacadab) {\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" if (parenthesized_expression "(pDVar12->signature != 0xabacadab)" ( (binary_expression "pDVar12->signature != 0xabacadab" (field_expression "pDVar12->signature" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n      (**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" { (expression_statement "(**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980);" (call_expression "(**(code **)(pcVar33 + 0xe2f58))\n                (*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(pcVar33 + 0xe2f58))" ( (pointer_expression "**(code **)(pcVar33 + 0xe2f58)" * (pointer_expression "*(code **)(pcVar33 + 0xe2f58)" * (cast_expression "(code **)(pcVar33 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0xe2f58)" ( (binary_expression "pcVar33 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar33 + 0xe2874) + 0x419c,*(int *)(pcVar33 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar33 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(pcVar33 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar33 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar33 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) (goto_statement "goto LAB_0006c904;" goto statement_identifier ;) })) (if_statement "if (pDVar12->debug != MagickFalse) {\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }" if (parenthesized_expression "(pDVar12->debug != MagickFalse)" ( (binary_expression "pDVar12->debug != MagickFalse" (field_expression "pDVar12->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      iVar2 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);\n      (**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);\n    }" { (expression_statement "iVar2 = 0x1322;" (assignment_expression "iVar2 = 0x1322" identifier = number_literal) ;) (expression_statement "uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name);" (assignment_expression "uStack_1200 = CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name)" identifier = (call_expression "CONCAT44(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name)" identifier (argument_list "(*(int *)(pcVar33 + 0xe2868) + -0x131c,pDVar12->name)" ( (binary_expression "*(int *)(pcVar33 + 0xe2868) + -0x131c" (pointer_expression "*(int *)(pcVar33 + 0xe2868)" * (cast_expression "(int *)(pcVar33 + 0xe2868)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2868)" ( (binary_expression "pcVar33 + 0xe2868" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar12->name" identifier -> field_identifier) )))) ;) (expression_statement "(**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968);" (call_expression "(**(code **)(pcVar33 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(pcVar33 + 0xe2cc0))" ( (pointer_expression "**(code **)(pcVar33 + 0xe2cc0)" * (pointer_expression "*(code **)(pcVar33 + 0xe2cc0)" * (cast_expression "(code **)(pcVar33 + 0xe2cc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar33 + 0xe2cc0)" ( (binary_expression "pcVar33 + 0xe2cc0" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar33 + 0xe2874) + -0x970,*(int *)(pcVar33 + 0xe2874) + 0x968)" ( number_literal , (binary_expression "*(int *)(pcVar33 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar33 + 0xe2874) + 0x968" (pointer_expression "*(int *)(pcVar33 + 0xe2874)" * (cast_expression "(int *)(pcVar33 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar33 + 0xe2874)" ( (binary_expression "pcVar33 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "piVar26 = aiStack_11e4;" (assignment_expression "piVar26 = aiStack_11e4" identifier = identifier) ;) (expression_statement "iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;" (assignment_expression "iVar23 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" identifier = (binary_expression "*(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" (pointer_expression "*(int *)(pcStack_11f0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_11f0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_11f0 + -0x7fc4)" ( (binary_expression "pcStack_11f0 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uStack_1200 = uVar39;" (assignment_expression "uStack_1200 = uVar39" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000);" (call_expression "(**(code **)(pcStack_11f0 + -0x7e80))(piVar26,0x1000)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x7e80))" ( (pointer_expression "**(code **)(pcStack_11f0 + -0x7e80)" * (pointer_expression "*(code **)(pcStack_11f0 + -0x7e80)" * (cast_expression "(code **)(pcStack_11f0 + -0x7e80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_11f0 + -0x7e80)" ( (binary_expression "pcStack_11f0 + -0x7e80" identifier + number_literal) ))))) )) (argument_list "(piVar26,0x1000)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26);" (call_expression "(**(code **)(pcStack_11f0 + -0x79d0))\n              (&pDVar12->graphic_context[pDVar12->index]->density,piVar26)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x79d0))" ( (pointer_expression "**(code **)(pcStack_11f0 + -0x79d0)" * (pointer_expression "*(code **)(pcStack_11f0 + -0x79d0)" * (cast_expression "(code **)(pcStack_11f0 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_11f0 + -0x79d0)" ( (binary_expression "pcStack_11f0 + -0x79d0" identifier + number_literal) ))))) )) (argument_list "(&pDVar12->graphic_context[pDVar12->index]->density,piVar26)" ( (pointer_expression "&pDVar12->graphic_context[pDVar12->index]->density" & (field_expression "pDVar12->graphic_context[pDVar12->index]->density" (subscript_expression "pDVar12->graphic_context[pDVar12->index]" (field_expression "pDVar12->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar12->index" identifier -> field_identifier) ]) -> field_identifier)) , identifier ))) ;) (expression_statement "pDVar13 = pDStack_1e4;" (assignment_expression "pDVar13 = pDStack_1e4" identifier = identifier) ;) (expression_statement "pcVar32 = pcStack_11f0;" (assignment_expression "pcVar32 = pcStack_11f0" identifier = identifier) ;) (if_statement "if (pDStack_1e4 == (DrawingWand *)*piVar27) {\n      return;\n    }" if (parenthesized_expression "(pDStack_1e4 == (DrawingWand *)*piVar27)" ( (binary_expression "pDStack_1e4 == (DrawingWand *)*piVar27" identifier == (cast_expression "(DrawingWand *)*piVar27" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar27" * identifier))) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) }))) (expression_statement "pcVar32 = *(code **)(pcVar32 + -0x7c74);" (assignment_expression "pcVar32 = *(code **)(pcVar32 + -0x7c74)" identifier = (pointer_expression "*(code **)(pcVar32 + -0x7c74)" * (cast_expression "(code **)(pcVar32 + -0x7c74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + -0x7c74)" ( (binary_expression "pcVar32 + -0x7c74" identifier + number_literal) ))))) ;) (expression_statement "pcVar30 = DrawSetOpacity;" (assignment_expression "pcVar30 = DrawSetOpacity" identifier = identifier) ;) (expression_statement "(*pcVar32)();" (call_expression "(*pcVar32)()" (parenthesized_expression "(*pcVar32)" ( (pointer_expression "*pcVar32" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_1228 = pcVar32 + 0xea6cc;" (assignment_expression "pcStack_1228 = pcVar32 + 0xea6cc" identifier = (binary_expression "pcVar32 + 0xea6cc" identifier + number_literal)) ;) (expression_statement "dVar35 = (double)CONCAT44(iVar23,iVar2);" (assignment_expression "dVar35 = (double)CONCAT44(iVar23,iVar2)" identifier = (cast_expression "(double)CONCAT44(iVar23,iVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(iVar23,iVar2)" identifier (argument_list "(iVar23,iVar2)" ( identifier , identifier ))))) ;) (expression_statement "pDStack_1254 = pDVar9;" (assignment_expression "pDStack_1254 = pDVar9" identifier = identifier) ;) (expression_statement "pDStack_1220 = pDVar9;" (assignment_expression "pDStack_1220 = pDVar9" identifier = identifier) ;) (expression_statement "pcStack_121c = pcVar30;" (assignment_expression "pcStack_121c = pcVar30" identifier = identifier) ;) (expression_statement "uStack_1218 = uVar39;" (assignment_expression "uStack_1218 = uVar39" identifier = identifier) ;) (if_statement "if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958);\n    pDStack_1254 = pDVar13;\n  }" if (parenthesized_expression "(pDVar13 != (DrawingWand *)0x0)" ( (binary_expression "pDVar13 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958);\n    pDStack_1254 = pDVar13;\n  }" { (if_statement "if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }" if (parenthesized_expression "(pDVar13->signature == 0xabacadab)" ( (binary_expression "pDVar13->signature == 0xabacadab" (field_expression "pDVar13->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }\n      iVar2 = *(int *)(pcStack_1228 + -0x7fc4);\n      pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;\n      MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));\n      return;\n    }" { (if_statement "if (pDVar13->debug != MagickFalse) {\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }" if (parenthesized_expression "(pDVar13->debug != MagickFalse)" ( (binary_expression "pDVar13->debug != MagickFalse" (field_expression "pDVar13->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;\n        pcStack_122c = pDVar13->name;\n        (**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);\n      }" { (expression_statement "iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c;" (assignment_expression "iStack_1230 = *(int *)(pcVar32 + 0xe26fc) + -0x131c" identifier = (binary_expression "*(int *)(pcVar32 + 0xe26fc) + -0x131c" (pointer_expression "*(int *)(pcVar32 + 0xe26fc)" * (cast_expression "(int *)(pcVar32 + 0xe26fc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe26fc)" ( (binary_expression "pcVar32 + 0xe26fc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcStack_122c = pDVar13->name;" (assignment_expression "pcStack_122c = pDVar13->name" identifier = (field_expression "pDVar13->name" identifier -> field_identifier)) ;) (expression_statement "(**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar32 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2b54))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2b54)" * (pointer_expression "*(code **)(pcVar32 + 0xe2b54)" * (cast_expression "(code **)(pcVar32 + 0xe2b54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2b54)" ( (binary_expression "pcVar32 + 0xe2b54" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar32 + 0xe2708) + -0x970,*(int *)(pcVar32 + 0xe2708) + 0x948,\n                   0x134a)" ( number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));" (assignment_expression "fVar38 = (float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" identifier = (cast_expression "(float)(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" ( (binary_expression "dVar35 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1228 + -0x7fd4)" * (cast_expression "(int *)(pcStack_1228 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1228 + -0x7fd4)" ( (binary_expression "pcStack_1228 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (if_statement "if ((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)) {\n        return;\n      }" if (parenthesized_expression "((pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38))" ( (binary_expression "(pDVar13->filter_off == MagickFalse) &&\n         (pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)" (parenthesized_expression "(pDVar13->filter_off == MagickFalse)" ( (binary_expression "pDVar13->filter_off == MagickFalse" (field_expression "pDVar13->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "(pDVar13->graphic_context[pDVar13->index]->alpha == fVar38)" ( (binary_expression "pDVar13->graphic_context[pDVar13->index]->alpha == fVar38" (field_expression "pDVar13->graphic_context[pDVar13->index]->alpha" (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ]) -> field_identifier) == identifier) ))) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (expression_statement "iVar2 = *(int *)(pcStack_1228 + -0x7fc4);" (assignment_expression "iVar2 = *(int *)(pcStack_1228 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_1228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1228 + -0x7fc4)" ( (binary_expression "pcStack_1228 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "pDVar13->graphic_context[pDVar13->index]->alpha = fVar38;" (assignment_expression "pDVar13->graphic_context[pDVar13->index]->alpha = fVar38" (field_expression "pDVar13->graphic_context[pDVar13->index]->alpha" (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ]) -> field_identifier) = identifier) ;) (expression_statement "MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0));" (call_expression "MVGPrintf(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0))" identifier (argument_list "(pDVar13,(char *)(iVar2 + -0xb4),(int)((ulonglong)dVar35 >> 0x20),SUB84(dVar35,0))" ( identifier , (cast_expression "(char *)(iVar2 + -0xb4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb4)" ( (binary_expression "iVar2 + -0xb4" identifier + number_literal) ))) , (cast_expression "(int)((ulonglong)dVar35 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar35 >> 0x20)" ( (binary_expression "(ulonglong)dVar35 >> 0x20" (cast_expression "(ulonglong)dVar35" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar35,0)" identifier (argument_list "(dVar35,0)" ( identifier , number_literal ))) ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar32 + 0xe2dec))\n              (*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2dec))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2dec)" * (pointer_expression "*(code **)(pcVar32 + 0xe2dec)" * (cast_expression "(code **)(pcVar32 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2dec)" ( (binary_expression "pcVar32 + 0xe2dec" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar32 + 0xe2708) + 0x419c,*(int *)(pcVar32 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar32 + 0xe2708) + 0x958)" ( (binary_expression "*(int *)(pcVar32 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pDStack_1254 = pDVar13;" (assignment_expression "pDStack_1254 = pDVar13" identifier = identifier) ;) })) (expression_statement "pcVar30 = *(code **)(pcVar32 + 0xe2dec);" (assignment_expression "pcVar30 = *(code **)(pcVar32 + 0xe2dec)" identifier = (pointer_expression "*(code **)(pcVar32 + 0xe2dec)" * (cast_expression "(code **)(pcVar32 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2dec)" ( (binary_expression "pcVar32 + 0xe2dec" identifier + number_literal) ))))) ;) (expression_statement "pcVar10 = (char *)(*(int *)(pcVar32 + 0xe2708) + -0x970);" (assignment_expression "pcVar10 = (char *)(*(int *)(pcVar32 + 0xe2708) + -0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar32 + 0xe2708) + -0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar32 + 0xe2708) + -0x970)" ( (binary_expression "*(int *)(pcVar32 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar33 = DrawSetFillPatternURL;" (assignment_expression "pcVar33 = DrawSetFillPatternURL" identifier = identifier) ;) (expression_statement "pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954);" (assignment_expression "pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar32 + 0xe2708) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar32 + 0xe2708) + -0x954)" ( (binary_expression "*(int *)(pcVar32 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar30)(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958);" (call_expression "(*pcVar30)(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(pDVar13,pcVar10,0x1347,*(int *)(pcVar32 + 0xe2708) + 0x958)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar32 + 0xe2708)" * (cast_expression "(int *)(pcVar32 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2708)" ( (binary_expression "pcVar32 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar28 = *(int **)(pcVar30 + 0xe2a4c);" (assignment_expression "piVar28 = *(int **)(pcVar30 + 0xe2a4c)" identifier = (pointer_expression "*(int **)(pcVar30 + 0xe2a4c)" * (cast_expression "(int **)(pcVar30 + 0xe2a4c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2a4c)" ( (binary_expression "pcVar30 + 0xe2a4c" identifier + number_literal) ))))) ;) (expression_statement "pDStack_125c = (DrawingWand *)*piVar28;" (assignment_expression "pDStack_125c = (DrawingWand *)*piVar28" identifier = (cast_expression "(DrawingWand *)*piVar28" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar28" * identifier))) ;) (expression_statement "piStack_1250 = piVar26;" (assignment_expression "piStack_1250 = piVar26" identifier = identifier) ;) (expression_statement "piStack_124c = piVar27;" (assignment_expression "piStack_124c = piVar27" identifier = identifier) ;) (expression_statement "pAStack_1248 = unaff_s3;" (assignment_expression "pAStack_1248 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_1244 = pcVar33;" (assignment_expression "pcStack_1244 = pcVar33" identifier = identifier) ;) (if_statement "if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930);\n  }" if (parenthesized_expression "(pDVar13 != (DrawingWand *)0x0)" ( (binary_expression "pDVar13 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930);\n  }" { (if_statement "if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }" if (parenthesized_expression "(pDVar13->signature == 0xabacadab)" ( (binary_expression "pDVar13->signature == 0xabacadab" (field_expression "pDVar13->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }\n      if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }\n      if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }" { (if_statement "if (pDVar13->debug == MagickFalse) {\n        pIVar7 = pDVar13->image;\n      }\n      else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }" if (parenthesized_expression "(pDVar13->debug == MagickFalse)" ( (binary_expression "pDVar13->debug == MagickFalse" (field_expression "pDVar13->debug" identifier -> field_identifier) == identifier) )) (compound_statement "{\n        pIVar7 = pDVar13->image;\n      }" { (expression_statement "pIVar7 = pDVar13->image;" (assignment_expression "pIVar7 = pDVar13->image" identifier = (field_expression "pDVar13->image" identifier -> field_identifier)) ;) }) (else_clause "else {\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }" else (compound_statement "{\n        (**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);\n        pIVar7 = pDVar13->image;\n      }" { (expression_statement "(**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10);" (call_expression "(**(code **)(pcVar30 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2a08))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2a08)" * (pointer_expression "*(code **)(pcVar30 + 0xe2a08)" * (cast_expression "(code **)(pcVar30 + 0xe2a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2a08)" ( (binary_expression "pcVar30 + 0xe2a08" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar30 + 0xe25bc) + -0x970,*(int *)(pcVar30 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10)" ( number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar30 + 0xe25b0)" * (cast_expression "(int *)(pcVar30 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25b0)" ( (binary_expression "pcVar30 + 0xe25b0" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "pIVar7 = pDVar13->image;" (assignment_expression "pIVar7 = pDVar13->image" identifier = (field_expression "pDVar13->image" identifier -> field_identifier)) ;) }))) (if_statement "if (pIVar7 == (Image *)0x0) {\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }" if (parenthesized_expression "(pIVar7 == (Image *)0x0)" ( (binary_expression "pIVar7 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);\n      }" { (expression_statement "(**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name);" (call_expression "(**(code **)(pcVar30 + 0xe283c))\n                  (pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe283c))" ( (pointer_expression "**(code **)(pcVar30 + 0xe283c)" * (pointer_expression "*(code **)(pcVar30 + 0xe283c)" * (cast_expression "(code **)(pcVar30 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe283c)" ( (binary_expression "pcVar30 + 0xe283c" identifier + number_literal) ))))) )) (argument_list "(pDVar13->exception,*(int *)(pcVar30 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar30 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar30 + 0xe25bc) + -0x225c,*(int *)(pcVar30 + 0xe25ac) + 0x5cf4,\n                   pDVar13->name)" ( (field_expression "pDVar13->exception" identifier -> field_identifier) , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar30 + 0xe25ac)" * (cast_expression "(int *)(pcVar30 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25ac)" ( (binary_expression "pcVar30 + 0xe25ac" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar13->name" identifier -> field_identifier) ))) ;) })) (if_statement "if (pcVar10 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }" if (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar2 = *(int *)(pcVar30 + 0xe25ac);\n        if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }\n        pDVar13 = pDStack_125c;\n        if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }" { (expression_statement "iVar2 = *(int *)(pcVar30 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar30 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar30 + 0xe25ac)" * (cast_expression "(int *)(pcVar30 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25ac)" ( (binary_expression "pcVar30 + 0xe25ac" identifier + number_literal) ))))) ;) (if_statement "if (*pcVar10 == '#') {\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }\n        else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }" if (parenthesized_expression "(*pcVar10 == '#')" ( (binary_expression "*pcVar10 == '#'" (pointer_expression "*pcVar10" * identifier) == (char_literal "'#'" ' character ')) )) (compound_statement "{\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);\n          iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);\n          if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);\n          pDVar3 = pDVar13->graphic_context[pDVar13->index];\n          if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }\n          format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar13,format,auStack_225c);\n        }" { (expression_statement "(**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1);" (call_expression "(**(code **)(pcVar30 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2700)" * (pointer_expression "*(code **)(pcVar30 + 0xe2700)" * (cast_expression "(code **)(pcVar30 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2700)" ( (binary_expression "pcVar30 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_325c,0x1000,*(int *)(pcVar30 + 0xe25b0) + -0x131c,pcVar10 + 1)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar30 + 0xe25b0)" * (cast_expression "(int *)(pcVar30 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25b0)" ( (binary_expression "pcVar30 + 0xe25b0" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar10 + 1" identifier + number_literal) ))) ;) (expression_statement "iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c);" (assignment_expression "iVar2 = (**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c)" identifier = (call_expression "(**(code **)(pcVar30 + 0xe2bc8))(pDVar13->image,auStack_325c)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2bc8))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2bc8)" * (pointer_expression "*(code **)(pcVar30 + 0xe2bc8)" * (cast_expression "(code **)(pcVar30 + 0xe2bc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2bc8)" ( (binary_expression "pcVar30 + 0xe2bc8" identifier + number_literal) ))))) )) (argument_list "(pDVar13->image,auStack_325c)" ( (field_expression "pDVar13->image" identifier -> field_identifier) , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar2 = *(int *)(pcVar30 + 0xe25ac);\n            uVar4 = 0x1386;\n            pEVar14 = pDVar13->exception;\n            iVar24 = *(int *)(pcVar30 + 0xe25bc);\n            iVar19 = *(int *)(pcVar30 + 0xe25bc);\n            pcVar32 = *(code **)(pcVar30 + 0xe283c);\n            iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" { (expression_statement "iVar2 = *(int *)(pcVar30 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar30 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar30 + 0xe25ac)" * (cast_expression "(int *)(pcVar30 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25ac)" ( (binary_expression "pcVar30 + 0xe25ac" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = 0x1386;" (assignment_expression "uVar4 = 0x1386" identifier = number_literal) ;) (expression_statement "pEVar14 = pDVar13->exception;" (assignment_expression "pEVar14 = pDVar13->exception" identifier = (field_expression "pDVar13->exception" identifier -> field_identifier)) ;) (expression_statement "iVar24 = *(int *)(pcVar30 + 0xe25bc);" (assignment_expression "iVar24 = *(int *)(pcVar30 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar19 = *(int *)(pcVar30 + 0xe25bc);" (assignment_expression "iVar19 = *(int *)(pcVar30 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar32 = *(code **)(pcVar30 + 0xe283c);" (assignment_expression "pcVar32 = *(code **)(pcVar30 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar30 + 0xe283c)" * (cast_expression "(code **)(pcVar30 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe283c)" ( (binary_expression "pcVar30 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74;" (assignment_expression "iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x74" identifier = (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (goto_statement "goto LAB_0006cb28;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10);" (call_expression "(**(code **)(pcVar30 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2700)" * (pointer_expression "*(code **)(pcVar30 + 0xe2700)" * (cast_expression "(code **)(pcVar30 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2700)" ( (binary_expression "pcVar30 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_225c,0x1000,*(int *)(pcVar30 + 0xe25bc) + -0x68,pcVar10)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "pDVar3 = pDVar13->graphic_context[pDVar13->index];" (assignment_expression "pDVar3 = pDVar13->graphic_context[pDVar13->index]" identifier = (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ])) ;) (if_statement "if ((pDVar3->fill).alpha != 0.0) {\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }" if (parenthesized_expression "((pDVar3->fill).alpha != 0.0)" ( (binary_expression "(pDVar3->fill).alpha != 0.0" (field_expression "(pDVar3->fill).alpha" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) != number_literal) )) (compound_statement "{\n            (pDVar3->fill).alpha = (double)pDVar3->alpha;\n          }" { (expression_statement "(pDVar3->fill).alpha = (double)pDVar3->alpha;" (assignment_expression "(pDVar3->fill).alpha = (double)pDVar3->alpha" (field_expression "(pDVar3->fill).alpha" (parenthesized_expression "(pDVar3->fill)" ( (field_expression "pDVar3->fill" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(double)pDVar3->alpha" ( (type_descriptor "double" primitive_type) ) (field_expression "pDVar3->alpha" identifier -> field_identifier))) ;) })) (expression_statement "format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60);" (assignment_expression "format = (char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60)" identifier = (cast_expression "(char *)(*(int *)(pcVar30 + 0xe25bc) + -0x60)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar30 + 0xe25bc) + -0x60)" ( (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "MVGPrintf(pDVar13,format,auStack_225c);" (call_expression "MVGPrintf(pDVar13,format,auStack_225c)" identifier (argument_list "(pDVar13,format,auStack_225c)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }" else (compound_statement "{\n          uVar4 = 0x1380;\n          pEVar14 = pDVar13->exception;\n          iVar24 = *(int *)(pcVar30 + 0xe25bc);\n          iVar19 = *(int *)(pcVar30 + 0xe25bc);\n          pcVar32 = *(code **)(pcVar30 + 0xe283c);\n          iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);\n          (*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);\n        }" { (expression_statement "uVar4 = 0x1380;" (assignment_expression "uVar4 = 0x1380" identifier = number_literal) ;) (expression_statement "pEVar14 = pDVar13->exception;" (assignment_expression "pEVar14 = pDVar13->exception" identifier = (field_expression "pDVar13->exception" identifier -> field_identifier)) ;) (expression_statement "iVar24 = *(int *)(pcVar30 + 0xe25bc);" (assignment_expression "iVar24 = *(int *)(pcVar30 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar19 = *(int *)(pcVar30 + 0xe25bc);" (assignment_expression "iVar19 = *(int *)(pcVar30 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar32 = *(code **)(pcVar30 + 0xe283c);" (assignment_expression "pcVar32 = *(code **)(pcVar30 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar30 + 0xe283c)" * (cast_expression "(code **)(pcVar30 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe283c)" ( (binary_expression "pcVar30 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84;" (assignment_expression "iVar23 = *(int *)(pcVar30 + 0xe25bc) + -0x84" identifier = (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0006cb28:\n          format = (char *)(iVar19 - 0x970);" statement_identifier : (expression_statement "format = (char *)(iVar19 - 0x970);" (assignment_expression "format = (char *)(iVar19 - 0x970)" identifier = (cast_expression "(char *)(iVar19 - 0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 - 0x970)" ( (binary_expression "iVar19 - 0x970" identifier - number_literal) )))) ;)) (expression_statement "(*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10);" (call_expression "(*pcVar32)(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10)" (parenthesized_expression "(*pcVar32)" ( (pointer_expression "*pcVar32" * identifier) )) (argument_list "(pEVar14,format,iVar24 + 0x918,uVar4,0x1cc,iVar23,iVar2 + 0x5cf4,pcVar10)" ( identifier , identifier , (binary_expression "iVar24 + 0x918" identifier + number_literal) , identifier , number_literal , identifier , (binary_expression "iVar2 + 0x5cf4" identifier + number_literal) , identifier ))) ;) }))) (expression_statement "pDVar13 = pDStack_125c;" (assignment_expression "pDVar13 = pDStack_125c" identifier = identifier) ;) (if_statement "if (pDStack_125c == (DrawingWand *)*piVar28) {\n          return;\n        }" if (parenthesized_expression "(pDStack_125c == (DrawingWand *)*piVar28)" ( (binary_expression "pDStack_125c == (DrawingWand *)*piVar28" identifier == (cast_expression "(DrawingWand *)*piVar28" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar28" * identifier))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (goto_statement "goto LAB_0006cd54;" goto statement_identifier ;) })) }) (else_clause "else {\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }" else (compound_statement "{\n      (**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);\n    }" { (expression_statement "(**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar30 + 0xe2ca0))\n                (*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar30 + 0xe2ca0)" * (cast_expression "(code **)(pcVar30 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2ca0)" ( (binary_expression "pcVar30 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar30 + 0xe25bc) + 0x419c,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar30 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar30 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar30 + 0xe2ca0))\n              (*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar30 + 0xe2ca0)" * (cast_expression "(code **)(pcVar30 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2ca0)" ( (binary_expression "pcVar30 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar30 + 0xe25bc) + -0xa4,*(int *)(pcVar30 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar30 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "format = (char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970);" (assignment_expression "format = (char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar30 + 0xe25bc) - 0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar30 + 0xe25bc) - 0x970)" ( (binary_expression "*(int *)(pcVar30 + 0xe25bc) - 0x970" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) - number_literal) )))) ;) (expression_statement "pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954);" (assignment_expression "pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar30 + 0xe25bc) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar30 + 0xe25bc) + -0x954)" ( (binary_expression "*(int *)(pcVar30 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar30 + 0xe2ca0))(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar30 + 0xe2ca0))(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar30 + 0xe2ca0)" * (cast_expression "(code **)(pcVar30 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2ca0)" ( (binary_expression "pcVar30 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(pDVar13,format,0x1377,*(int *)(pcVar30 + 0xe25bc) + 0x930)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar30 + 0xe25bc)" * (cast_expression "(int *)(pcVar30 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe25bc)" ( (binary_expression "pcVar30 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0006cd54:\n  pcVar32 = *(code **)(pcVar30 + 0xe290c);" statement_identifier : (expression_statement "pcVar32 = *(code **)(pcVar30 + 0xe290c);" (assignment_expression "pcVar32 = *(code **)(pcVar30 + 0xe290c)" identifier = (pointer_expression "*(code **)(pcVar30 + 0xe290c)" * (cast_expression "(code **)(pcVar30 + 0xe290c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe290c)" ( (binary_expression "pcVar30 + 0xe290c" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar32)();" (call_expression "(*pcVar32)()" (parenthesized_expression "(*pcVar32)" ( (pointer_expression "*pcVar32" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908);\n  }" if (parenthesized_expression "(pDVar13 != (DrawingWand *)0x0)" ( (binary_expression "pDVar13 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908);\n  }" { (if_statement "if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }" if (parenthesized_expression "(pDVar13->signature == 0xabacadab)" ( (binary_expression "pDVar13->signature == 0xabacadab" (field_expression "pDVar13->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }\n      if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar30 = *(code **)(pcVar32 + 0xe2408);\n      pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;\n      uVar4 = (*pcVar30)(0x1a,format);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);\n      return;\n    }" { (if_statement "if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }" if (parenthesized_expression "(pDVar13->debug != MagickFalse)" ( (binary_expression "pDVar13->debug != MagickFalse" (field_expression "pDVar13->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        (**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);\n      }" { (expression_statement "(**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name);" (call_expression "(**(code **)(pcVar32 + 0xe2728))\n                  (0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2728))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2728)" * (pointer_expression "*(code **)(pcVar32 + 0xe2728)" * (cast_expression "(code **)(pcVar32 + 0xe2728)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2728)" ( (binary_expression "pcVar32 + 0xe2728" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar32 + 0xe22dc) + -0x970,*(int *)(pcVar32 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar32 + 0xe22d0) + -0x131c,pDVar13->name)" ( number_literal , (binary_expression "*(int *)(pcVar32 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar32 + 0xe22d0)" * (cast_expression "(int *)(pcVar32 + 0xe22d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22d0)" ( (binary_expression "pcVar32 + 0xe22d0" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar13->name" identifier -> field_identifier) ))) ;) })) (if_statement "if ((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)) {\n        return;\n      }" if (parenthesized_expression "((pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format))" ( (binary_expression "(pDVar13->filter_off == MagickFalse) &&\n         ((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)" (parenthesized_expression "(pDVar13->filter_off == MagickFalse)" ( (binary_expression "pDVar13->filter_off == MagickFalse" (field_expression "pDVar13->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "((char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format)" ( (binary_expression "(char *)pDVar13->graphic_context[pDVar13->index]->fill_rule == format" (cast_expression "(char *)pDVar13->graphic_context[pDVar13->index]->fill_rule" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "pDVar13->graphic_context[pDVar13->index]->fill_rule" (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ]) -> field_identifier)) == identifier) ))) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (expression_statement "pcVar30 = *(code **)(pcVar32 + 0xe2408);" (assignment_expression "pcVar30 = *(code **)(pcVar32 + 0xe2408)" identifier = (pointer_expression "*(code **)(pcVar32 + 0xe2408)" * (cast_expression "(code **)(pcVar32 + 0xe2408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2408)" ( (binary_expression "pcVar32 + 0xe2408" identifier + number_literal) ))))) ;) (expression_statement "pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format;" (assignment_expression "pDVar13->graphic_context[pDVar13->index]->fill_rule = (FillRule)format" (field_expression "pDVar13->graphic_context[pDVar13->index]->fill_rule" (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ]) -> field_identifier) = (cast_expression "(FillRule)format" ( (type_descriptor "FillRule" type_identifier) ) identifier)) ;) (expression_statement "uVar4 = (*pcVar30)(0x1a,format);" (assignment_expression "uVar4 = (*pcVar30)(0x1a,format)" identifier = (call_expression "(*pcVar30)(0x1a,format)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(0x1a,format)" ( number_literal , identifier )))) ;) (expression_statement "MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4);" (call_expression "MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4)" identifier (argument_list "(pDVar13,(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54),uVar4)" ( identifier , (cast_expression "(char *)(*(int *)(pcVar32 + 0xe22dc) + -0x54)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar32 + 0xe22dc) + -0x54)" ( (binary_expression "*(int *)(pcVar32 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar32 + 0xe29c0))\n              (*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe29c0))" ( (pointer_expression "**(code **)(pcVar32 + 0xe29c0)" * (pointer_expression "*(code **)(pcVar32 + 0xe29c0)" * (cast_expression "(code **)(pcVar32 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe29c0)" ( (binary_expression "pcVar32 + 0xe29c0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar32 + 0xe22dc) + 0x419c,*(int *)(pcVar32 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar32 + 0xe22dc) + 0x908)" ( (binary_expression "*(int *)(pcVar32 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar30 = *(code **)(pcVar32 + 0xe29c0);" (assignment_expression "pcVar30 = *(code **)(pcVar32 + 0xe29c0)" identifier = (pointer_expression "*(code **)(pcVar32 + 0xe29c0)" * (cast_expression "(code **)(pcVar32 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe29c0)" ( (binary_expression "pcVar32 + 0xe29c0" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar32 + 0xe22dc) + -0x970;" (assignment_expression "iVar2 = *(int *)(pcVar32 + 0xe22dc) + -0x970" identifier = (binary_expression "*(int *)(pcVar32 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954);" (assignment_expression "pDVar13 = (DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar32 + 0xe22dc) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar32 + 0xe22dc) + -0x954)" ( (binary_expression "*(int *)(pcVar32 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar30)(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908);" (call_expression "(*pcVar30)(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(pDVar13,iVar2,0x13ae,*(int *)(pcVar32 + 0xe22dc) + 0x908)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar32 + 0xe22dc)" * (cast_expression "(int *)(pcVar32 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe22dc)" ( (binary_expression "pcVar32 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pDVar13 != (DrawingWand *)0x0) {\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  }" if (parenthesized_expression "(pDVar13 != (DrawingWand *)0x0)" ( (binary_expression "pDVar13 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n  }" { (if_statement "if (pDVar13->signature == 0xabacadab) {\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }" if (parenthesized_expression "(pDVar13->signature == 0xabacadab)" ( (binary_expression "pDVar13->signature == 0xabacadab" (field_expression "pDVar13->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }\n      if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }\n      (**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);\n    }" { (if_statement "if (pDVar13->debug != MagickFalse) {\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }" if (parenthesized_expression "(pDVar13->debug != MagickFalse)" ( (binary_expression "pDVar13->debug != MagickFalse" (field_expression "pDVar13->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        (**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);\n      }" { (expression_statement "(**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name);" (call_expression "(**(code **)(pcVar30 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe25e4))" ( (pointer_expression "**(code **)(pcVar30 + 0xe25e4)" * (pointer_expression "*(code **)(pcVar30 + 0xe25e4)" * (cast_expression "(code **)(pcVar30 + 0xe25e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe25e4)" ( (binary_expression "pcVar30 + 0xe25e4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar30 + 0xe2198) + -0x970,*(int *)(pcVar30 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar30 + 0xe218c) + -0x131c,pDVar13->name)" ( number_literal , (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar30 + 0xe218c)" * (cast_expression "(int *)(pcVar30 + 0xe218c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe218c)" ( (binary_expression "pcVar30 + 0xe218c" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar13->name" identifier -> field_identifier) ))) ;) })) (if_statement "if (iVar2 != 0) {\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n        pDVar3 = pDVar13->graphic_context[pDVar13->index];\n        if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);\n        MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);\n        return;\n      }" { (expression_statement "pDVar3 = pDVar13->graphic_context[pDVar13->index];" (assignment_expression "pDVar3 = pDVar13->graphic_context[pDVar13->index]" identifier = (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ])) ;) (if_statement "if (pDVar13->filter_off == MagickFalse) {\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }" if (parenthesized_expression "(pDVar13->filter_off == MagickFalse)" ( (binary_expression "pDVar13->filter_off == MagickFalse" (field_expression "pDVar13->filter_off" identifier -> field_identifier) == identifier) )) (compound_statement "{\n          pcVar10 = pDVar3->font;\n          if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }\n        }" { (expression_statement "pcVar10 = pDVar3->font;" (assignment_expression "pcVar10 = pDVar3->font" identifier = (field_expression "pDVar3->font" identifier -> field_identifier)) ;) (if_statement "if ((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)) {\n            return;\n          }" if (parenthesized_expression "((pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0))" ( (binary_expression "(pcVar10 != (char *)0x0) &&\n             (iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)" (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0)" ( (comma_expression "iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2), iVar23 == 0" (assignment_expression "iVar23 = (**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2)" identifier = (call_expression "(**(code **)(pcVar30 + 0xe2544))(pcVar10,iVar2)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe2544))" ( (pointer_expression "**(code **)(pcVar30 + 0xe2544)" * (pointer_expression "*(code **)(pcVar30 + 0xe2544)" * (cast_expression "(code **)(pcVar30 + 0xe2544)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe2544)" ( (binary_expression "pcVar30 + 0xe2544" identifier + number_literal) ))))) )) (argument_list "(pcVar10,iVar2)" ( identifier , identifier )))) , (binary_expression "iVar23 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) })) (expression_statement "(**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2);" (call_expression "(**(code **)(pcVar30 + 0xe278c))(&pDVar3->font,iVar2)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe278c))" ( (pointer_expression "**(code **)(pcVar30 + 0xe278c)" * (pointer_expression "*(code **)(pcVar30 + 0xe278c)" * (cast_expression "(code **)(pcVar30 + 0xe278c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe278c)" ( (binary_expression "pcVar30 + 0xe278c" identifier + number_literal) ))))) )) (argument_list "(&pDVar3->font,iVar2)" ( (pointer_expression "&pDVar3->font" & (field_expression "pDVar3->font" identifier -> field_identifier)) , identifier ))) ;) (expression_statement "MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2);" (call_expression "MVGPrintf(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2)" identifier (argument_list "(pDVar13,(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20),iVar2)" ( identifier , (cast_expression "(char *)(*(int *)(pcVar30 + 0xe2198) + -0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar30 + 0xe2198) + -0x20)" ( (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar30 + 0xe287c))\n                (*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar30 + 0xe287c)" * (pointer_expression "*(code **)(pcVar30 + 0xe287c)" * (cast_expression "(code **)(pcVar30 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe287c)" ( (binary_expression "pcVar30 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar30 + 0xe2198) + -0x44,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar30 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "(**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar30 + 0xe287c))\n              (*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar30 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar30 + 0xe287c)" * (pointer_expression "*(code **)(pcVar30 + 0xe287c)" * (cast_expression "(code **)(pcVar30 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe287c)" ( (binary_expression "pcVar30 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar30 + 0xe2198) + 0x419c,*(int *)(pcVar30 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar30 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar30 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar32 = *(code **)(pcVar30 + 0xe287c);" (assignment_expression "pcVar32 = *(code **)(pcVar30 + 0xe287c)" identifier = (pointer_expression "*(code **)(pcVar30 + 0xe287c)" * (cast_expression "(code **)(pcVar30 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar30 + 0xe287c)" ( (binary_expression "pcVar30 + 0xe287c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar30 + 0xe2198) + -0x970;" (assignment_expression "iVar2 = *(int *)(pcVar30 + 0xe2198) + -0x970" identifier = (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954);" (assignment_expression "pDVar13 = (DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar30 + 0xe2198) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar30 + 0xe2198) + -0x954)" ( (binary_expression "*(int *)(pcVar30 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar32)(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar32)(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar32)" ( (pointer_expression "*pcVar32" * identifier) )) (argument_list "(pDVar13,iVar2,0x13d7,*(int *)(pcVar30 + 0xe2198) + 0x8ec)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar30 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar30 + 0xe2198)" * (cast_expression "(int *)(pcVar30 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar30 + 0xe2198)" ( (binary_expression "pcVar30 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pDVar13 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }" if (parenthesized_expression "(pDVar13 == (DrawingWand *)0x0)" ( (binary_expression "pDVar13 == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }" { (expression_statement "(**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);" (call_expression "(**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2704)" * (pointer_expression "*(code **)(pcVar32 + 0xe2704)" * (cast_expression "(code **)(pcVar32 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2704)" ( (binary_expression "pcVar32 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar32 + 0xe2020) + -0x954,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar32 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) ;) (return_statement "return;" return ;) })) (if_statement "if (pDVar13->signature == 0xabacadab) {\n    if (pDVar13->debug != MagickFalse) {\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }\n    if (iVar2 != 0) {\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }" if (parenthesized_expression "(pDVar13->signature == 0xabacadab)" ( (binary_expression "pDVar13->signature == 0xabacadab" (field_expression "pDVar13->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (pDVar13->debug != MagickFalse) {\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }\n    if (iVar2 != 0) {\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }\n    (**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);\n    return;\n  }" { (if_statement "if (pDVar13->debug != MagickFalse) {\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }" if (parenthesized_expression "(pDVar13->debug != MagickFalse)" ( (binary_expression "pDVar13->debug != MagickFalse" (field_expression "pDVar13->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      (**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);\n    }" { (expression_statement "(**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name);" (call_expression "(**(code **)(pcVar32 + 0xe246c))\n                (0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe246c))" ( (pointer_expression "**(code **)(pcVar32 + 0xe246c)" * (pointer_expression "*(code **)(pcVar32 + 0xe246c)" * (cast_expression "(code **)(pcVar32 + 0xe246c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe246c)" ( (binary_expression "pcVar32 + 0xe246c" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar32 + 0xe2020) + -0x970,*(int *)(pcVar32 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar32 + 0xe2014) + -0x131c,pDVar13->name)" ( number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar32 + 0xe2014)" * (cast_expression "(int *)(pcVar32 + 0xe2014)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2014)" ( (binary_expression "pcVar32 + 0xe2014" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar13->name" identifier -> field_identifier) ))) ;) })) (if_statement "if (iVar2 != 0) {\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      pDVar3 = pDVar13->graphic_context[pDVar13->index];\n      if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);\n      MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);\n      return;\n    }" { (expression_statement "pDVar3 = pDVar13->graphic_context[pDVar13->index];" (assignment_expression "pDVar3 = pDVar13->graphic_context[pDVar13->index]" identifier = (subscript_expression "pDVar13->graphic_context[pDVar13->index]" (field_expression "pDVar13->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar13->index" identifier -> field_identifier) ])) ;) (if_statement "if (pDVar13->filter_off == MagickFalse) {\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }" if (parenthesized_expression "(pDVar13->filter_off == MagickFalse)" ( (binary_expression "pDVar13->filter_off == MagickFalse" (field_expression "pDVar13->filter_off" identifier -> field_identifier) == identifier) )) (compound_statement "{\n        pcVar10 = pDVar3->family;\n        if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }\n      }" { (expression_statement "pcVar10 = pDVar3->family;" (assignment_expression "pcVar10 = pDVar3->family" identifier = (field_expression "pDVar3->family" identifier -> field_identifier)) ;) (if_statement "if ((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)) {\n          return;\n        }" if (parenthesized_expression "((pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0))" ( (binary_expression "(pcVar10 != (char *)0x0) &&\n           (iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)" (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0)" ( (comma_expression "iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2), iVar23 == 0" (assignment_expression "iVar23 = (**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2)" identifier = (call_expression "(**(code **)(pcVar32 + 0xe23cc))(pcVar10,iVar2)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe23cc))" ( (pointer_expression "**(code **)(pcVar32 + 0xe23cc)" * (pointer_expression "*(code **)(pcVar32 + 0xe23cc)" * (cast_expression "(code **)(pcVar32 + 0xe23cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe23cc)" ( (binary_expression "pcVar32 + 0xe23cc" identifier + number_literal) ))))) )) (argument_list "(pcVar10,iVar2)" ( identifier , identifier )))) , (binary_expression "iVar23 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (expression_statement "(**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2);" (call_expression "(**(code **)(pcVar32 + 0xe2614))(&pDVar3->family,iVar2)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2614))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2614)" * (pointer_expression "*(code **)(pcVar32 + 0xe2614)" * (cast_expression "(code **)(pcVar32 + 0xe2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2614)" ( (binary_expression "pcVar32 + 0xe2614" identifier + number_literal) ))))) )) (argument_list "(&pDVar3->family,iVar2)" ( (pointer_expression "&pDVar3->family" & (field_expression "pDVar3->family" identifier -> field_identifier)) , identifier ))) ;) (expression_statement "MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2);" (call_expression "MVGPrintf(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2)" identifier (argument_list "(pDVar13,(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10),iVar2)" ( identifier , (cast_expression "(char *)(*(int *)(pcVar32 + 0xe2020) + 0x10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar32 + 0xe2020) + 0x10)" ( (binary_expression "*(int *)(pcVar32 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc);" (call_expression "(**(code **)(pcVar32 + 0xe2704))\n              (*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2704)" * (pointer_expression "*(code **)(pcVar32 + 0xe2704)" * (cast_expression "(code **)(pcVar32 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2704)" ( (binary_expression "pcVar32 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar32 + 0xe2020) + -0x14,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar32 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar32 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar32 + 0xe2704))\n            (*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar32 + 0xe2020) + 0x8cc);" (call_expression "(**(code **)(pcVar32 + 0xe2704))\n            (*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar32 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar32 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar32 + 0xe2704)" * (pointer_expression "*(code **)(pcVar32 + 0xe2704)" * (cast_expression "(code **)(pcVar32 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar32 + 0xe2704)" ( (binary_expression "pcVar32 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar32 + 0xe2020) + 0x419c,*(int *)(pcVar32 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar32 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar32 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar32 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar32 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar32 + 0xe2020)" * (cast_expression "(int *)(pcVar32 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar32 + 0xe2020)" ( (binary_expression "pcVar32 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "int DrawSetClipUnits(int *param_1,undefined *param_2)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}\n\n" (function_definition "int DrawSetClipUnits(int *param_1,undefined *param_2)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" primitive_type (function_declarator "DrawSetClipUnits(int *param_1,undefined *param_2)" identifier (parameter_list "(int *param_1,undefined *param_2)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "int *piVar4;" primitive_type (pointer_declarator "*piVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int *piVar7;" primitive_type (pointer_declarator "*piVar7" * identifier) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "undefined8 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "undefined4 uVar15;" type_identifier identifier ;) (declaration "int *unaff_s0;" primitive_type (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "undefined *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "undefined *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "undefined8 *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "undefined *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "code *pcVar23;" type_identifier (pointer_declarator "*pcVar23" * identifier) ;) (declaration "double dVar24;" primitive_type identifier ;) (declaration "double dVar25;" primitive_type identifier ;) (declaration "float fVar26;" primitive_type identifier ;) (declaration "undefined8 uVar27;" type_identifier identifier ;) (declaration "undefined1 auStack_325c [4096];" type_identifier (array_declarator "auStack_325c [4096]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_225c [4096];" type_identifier (array_declarator "auStack_225c [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_125c;" primitive_type identifier ;) (declaration "int *piStack_1254;" primitive_type (pointer_declarator "*piStack_1254" * identifier) ;) (declaration "int *piStack_1250;" primitive_type (pointer_declarator "*piStack_1250" * identifier) ;) (declaration "undefined4 *puStack_124c;" type_identifier (pointer_declarator "*puStack_124c" * identifier) ;) (declaration "undefined8 *puStack_1248;" type_identifier (pointer_declarator "*puStack_1248" * identifier) ;) (declaration "code *pcStack_1244;" type_identifier (pointer_declarator "*pcStack_1244" * identifier) ;) (declaration "int iStack_1230;" primitive_type identifier ;) (declaration "int *piStack_122c;" primitive_type (pointer_declarator "*piStack_122c" * identifier) ;) (declaration "code *pcStack_1228;" type_identifier (pointer_declarator "*pcStack_1228" * identifier) ;) (declaration "int *piStack_1220;" primitive_type (pointer_declarator "*piStack_1220" * identifier) ;) (declaration "code *pcStack_121c;" type_identifier (pointer_declarator "*pcStack_121c" * identifier) ;) (declaration "undefined8 uStack_1218;" type_identifier identifier ;) (declaration "undefined8 uStack_1200;" type_identifier identifier ;) (declaration "code *pcStack_11f0;" type_identifier (pointer_declarator "*pcStack_11f0" * identifier) ;) (declaration "int aiStack_11e4 [1024];" primitive_type (array_declarator "aiStack_11e4 [1024]" identifier [ number_literal ]) ;) (declaration "int *piStack_1e4;" primitive_type (pointer_declarator "*piStack_1e4" * identifier) ;) (declaration "int *piStack_1e0;" primitive_type (pointer_declarator "*piStack_1e0" * identifier) ;) (declaration "int *piStack_1dc;" primitive_type (pointer_declarator "*piStack_1dc" * identifier) ;) (declaration "undefined *puStack_1d8;" type_identifier (pointer_declarator "*puStack_1d8" * identifier) ;) (declaration "code *pcStack_1d4;" type_identifier (pointer_declarator "*pcStack_1d4" * identifier) ;) (declaration "double dStack_1d0;" primitive_type identifier ;) (declaration "int iStack_1b8;" primitive_type identifier ;) (declaration "int *piStack_1b4;" primitive_type (pointer_declarator "*piStack_1b4" * identifier) ;) (declaration "code *pcStack_1b0;" type_identifier (pointer_declarator "*pcStack_1b0" * identifier) ;) (declaration "int *piStack_1a8;" primitive_type (pointer_declarator "*piStack_1a8" * identifier) ;) (declaration "code *pcStack_1a4;" type_identifier (pointer_declarator "*pcStack_1a4" * identifier) ;) (declaration "int iStack_188;" primitive_type identifier ;) (declaration "undefined *puStack_184;" type_identifier (pointer_declarator "*puStack_184" * identifier) ;) (declaration "code *pcStack_180;" type_identifier (pointer_declarator "*pcStack_180" * identifier) ;) (declaration "uint uStack_178;" type_identifier identifier ;) (declaration "undefined4 uStack_174;" type_identifier identifier ;) (declaration "int aiStack_170 [10];" primitive_type (array_declarator "aiStack_170 [10]" identifier [ number_literal ]) ;) (declaration "double dStack_148;" primitive_type identifier ;) (declaration "double dStack_140;" primitive_type identifier ;) (declaration "double dStack_138;" primitive_type identifier ;) (declaration "double dStack_130;" primitive_type identifier ;) (declaration "uint uStack_128;" type_identifier identifier ;) (declaration "undefined4 uStack_124;" type_identifier identifier ;) (declaration "int aiStack_120 [2];" primitive_type (array_declarator "aiStack_120 [2]" identifier [ number_literal ]) ;) (declaration "int aiStack_118 [23];" primitive_type (array_declarator "aiStack_118 [23]" identifier [ number_literal ]) ;) (declaration "int iStack_bc;" primitive_type identifier ;) (declaration "int *piStack_b4;" primitive_type (pointer_declarator "*piStack_b4" * identifier) ;) (declaration "undefined *puStack_b0;" type_identifier (pointer_declarator "*puStack_b0" * identifier) ;) (declaration "undefined *puStack_ac;" type_identifier (pointer_declarator "*puStack_ac" * identifier) ;) (declaration "undefined8 *puStack_a8;" type_identifier (pointer_declarator "*puStack_a8" * identifier) ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "undefined *puStack_8c;" type_identifier (pointer_declarator "*puStack_8c" * identifier) ;) (declaration "undefined *puStack_88;" type_identifier (pointer_declarator "*puStack_88" * identifier) ;) (declaration "int *piStack_80;" primitive_type (pointer_declarator "*piStack_80" * identifier) ;) (declaration "undefined *puStack_7c;" type_identifier (pointer_declarator "*puStack_7c" * identifier) ;) (declaration "undefined *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "code *pcStack_74;" type_identifier (pointer_declarator "*pcStack_74" * identifier) ;) (declaration "undefined *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (declaration "int *local_5c;" primitive_type (pointer_declarator "*local_5c" * identifier) ;) (declaration "undefined8 local_50 [3];" type_identifier (array_declarator "local_50 [3]" identifier [ number_literal ]) ;) (declaration "undefined8 local_38;" type_identifier identifier ;) (declaration "undefined8 local_30;" type_identifier identifier ;) (declaration "undefined8 local_28;" type_identifier identifier ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar17 = PTR___stack_chk_guard_0014f4cc;" (assignment_expression "puVar17 = PTR___stack_chk_guard_0014f4cc" identifier = identifier) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_0014f4cc" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0014f4cc" * (cast_expression "(int *)PTR___stack_chk_guard_0014f4cc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" if (parenthesized_expression "(param_1 == (int *)0x0)" ( (binary_expression "param_1 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }" { (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" ( (pointer_expression "*(code *)PTR___assert_fail_0014f720" * (cast_expression "(code *)PTR___assert_fail_0014f720" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" identifier + number_literal) ))) ;) (expression_statement "param_1 = unaff_s0;" (assignment_expression "param_1 = unaff_s0" identifier = identifier) ;) (labeled_statement "LAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();" statement_identifier : (expression_statement "(*(code *)PTR___stack_chk_fail_0014f38c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0014f38c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0014f38c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0014f38c" * (cast_expression "(code *)PTR___stack_chk_fail_0014f38c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;)) }) (else_clause "else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" else (if_statement "if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" if (parenthesized_expression "(param_1[0x415] == -0x54535255)" ( (binary_expression "param_1[0x415] == -0x54535255" (subscript_expression "param_1[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" { (if_statement "if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" if (parenthesized_expression "(param_1[0x414] != 0)" ( (binary_expression "param_1[0x414] != 0" (subscript_expression "param_1[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" { (expression_statement "local_5c = param_1 + 1;" (assignment_expression "local_5c = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;" (assignment_expression "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" identifier = (binary_expression "PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_0014f488)" ( (pointer_expression "*(code *)PTR_LogMagickEvent_0014f488" * (cast_expression "(code *)PTR_LogMagickEvent_0014f488" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" ( number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa08" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4)" identifier = (pointer_expression "*(int *)(param_1[0x40e] + param_1[0x40d] * 4)" * (cast_expression "(int *)(param_1[0x40e] + param_1[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[0x40e] + param_1[0x40d] * 4)" ( (binary_expression "param_1[0x40e] + param_1[0x40d] * 4" (subscript_expression "param_1[0x40e]" identifier [ number_literal ]) + (binary_expression "param_1[0x40d] * 4" (subscript_expression "param_1[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (if_statement "if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" if (parenthesized_expression "(param_1[0x40f] == 0)" ( (binary_expression "param_1[0x40f] == 0" (subscript_expression "param_1[0x40f]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }" { (if_statement "if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }" if (parenthesized_expression "(*(undefined **)(iVar1 + 0x2c8) != param_2)" ( (binary_expression "*(undefined **)(iVar1 + 0x2c8) != param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" * (cast_expression "(undefined **)(iVar1 + 0x2c8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x2c8)" ( (binary_expression "iVar1 + 0x2c8" identifier + number_literal) )))) != identifier) )) (compound_statement "{\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }" { (expression_statement "*(undefined **)(iVar1 + 0x2c8) = param_2;" (assignment_expression "*(undefined **)(iVar1 + 0x2c8) = param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" * (cast_expression "(undefined **)(iVar1 + 0x2c8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x2c8)" ( (binary_expression "iVar1 + 0x2c8" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto joined_r0x0006bed8;" goto statement_identifier ;) })) }) (else_clause "else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" else (compound_statement "{\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" { (expression_statement "*(undefined **)(iVar1 + 0x2c8) = param_2;" (assignment_expression "*(undefined **)(iVar1 + 0x2c8) = param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" * (cast_expression "(undefined **)(iVar1 + 0x2c8)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar1 + 0x2c8)" ( (binary_expression "iVar1 + 0x2c8" identifier + number_literal) )))) = identifier) ;) (labeled_statement "joined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" statement_identifier : (if_statement "if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" if (parenthesized_expression "(param_2 == (undefined *)0x3)" ( (binary_expression "param_2 == (undefined *)0x3" identifier == (cast_expression "(undefined *)0x3" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" { (expression_statement "unaff_s3 = local_50;" (assignment_expression "unaff_s3 = local_50" identifier = identifier) ;) (expression_statement "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);" (call_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)" ( (pointer_expression "*(code *)PTR_GetAffineMatrix_0014f1f8" * (cast_expression "(code *)PTR_GetAffineMatrix_0014f1f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4)" identifier = (pointer_expression "*(int *)(param_1[0x40e] + param_1[0x40d] * 4)" * (cast_expression "(int *)(param_1[0x40e] + param_1[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1[0x40e] + param_1[0x40d] * 4)" ( (binary_expression "param_1[0x40e] + param_1[0x40d] * 4" (subscript_expression "param_1[0x40e]" identifier [ number_literal ]) + (binary_expression "param_1[0x40d] * 4" (subscript_expression "param_1[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);" (assignment_expression "local_50[0] = *(undefined8 *)(iVar1 + 0x2b8)" (subscript_expression "local_50[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined8 *)(iVar1 + 0x2b8)" * (cast_expression "(undefined8 *)(iVar1 + 0x2b8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2b8)" ( (binary_expression "iVar1 + 0x2b8" identifier + number_literal) ))))) ;) (expression_statement "local_38 = *(undefined8 *)(iVar1 + 0x2c0);" (assignment_expression "local_38 = *(undefined8 *)(iVar1 + 0x2c0)" identifier = (pointer_expression "*(undefined8 *)(iVar1 + 0x2c0)" * (cast_expression "(undefined8 *)(iVar1 + 0x2c0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2c0)" ( (binary_expression "iVar1 + 0x2c0" identifier + number_literal) ))))) ;) (expression_statement "local_30 = *(undefined8 *)(iVar1 + 0x2a8);" (assignment_expression "local_30 = *(undefined8 *)(iVar1 + 0x2a8)" identifier = (pointer_expression "*(undefined8 *)(iVar1 + 0x2a8)" * (cast_expression "(undefined8 *)(iVar1 + 0x2a8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2a8)" ( (binary_expression "iVar1 + 0x2a8" identifier + number_literal) ))))) ;) (expression_statement "local_28 = *(undefined8 *)(iVar1 + 0x2b0);" (assignment_expression "local_28 = *(undefined8 *)(iVar1 + 0x2b0)" identifier = (pointer_expression "*(undefined8 *)(iVar1 + 0x2b0)" * (cast_expression "(undefined8 *)(iVar1 + 0x2b0)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2b0)" ( (binary_expression "iVar1 + 0x2b0" identifier + number_literal) ))))) ;) (expression_statement "FUN_00062640(param_1,unaff_s3);" (call_expression "FUN_00062640(param_1,unaff_s3)" identifier (argument_list "(param_1,unaff_s3)" ( identifier , identifier ))) ;) }))) (expression_statement "uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);" (assignment_expression "uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2)" identifier = (call_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2)" (parenthesized_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)" ( (pointer_expression "*(code *)PTR_CommandOptionToMnemonic_0014f168" * (cast_expression "(code *)PTR_CommandOptionToMnemonic_0014f168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(6,param_2)" ( number_literal , identifier )))) ;) (expression_statement "FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);" (call_expression "FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2)" identifier (argument_list "(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2)" ( identifier , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x148" identifier + number_literal) , identifier ))) ;) }))) (expression_statement "unaff_s1 = param_2;" (assignment_expression "unaff_s1 = param_2" identifier = identifier) ;) (if_statement "if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }" if (parenthesized_expression "(local_1c == *(int *)puVar17)" ( (binary_expression "local_1c == *(int *)puVar17" identifier == (pointer_expression "*(int *)puVar17" * (cast_expression "(int *)puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n      return *(int *)puVar17;\n    }" { (return_statement "return *(int *)puVar17;" return (pointer_expression "*(int *)puVar17" * (cast_expression "(int *)puVar17" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) (goto_statement "goto LAB_0006bfa4;" goto statement_identifier ;) })))) (expression_statement "puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;" (assignment_expression "puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal)) ;) (expression_statement "pcVar21 = DrawSetDensity;" (assignment_expression "pcVar21 = DrawSetDensity" identifier = identifier) ;) (expression_statement "piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);" (assignment_expression "piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" identifier = (cast_expression "(int *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_t_char____NULL_0014f03c + 0x419c)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" identifier + number_literal) )))) ;) (expression_statement "puVar6 = PTR___assert_fail_0014f720;" (assignment_expression "puVar6 = PTR___assert_fail_0014f720" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" ( (pointer_expression "*(code *)PTR___assert_fail_0014f720" * (cast_expression "(code *)PTR___assert_fail_0014f720" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" ( identifier , identifier , number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" identifier + number_literal) ))) ;) (expression_statement "puVar20 = puVar6 + 0xeb02c;" (assignment_expression "puVar20 = puVar6 + 0xeb02c" identifier = (binary_expression "puVar6 + 0xeb02c" identifier + number_literal)) ;) (expression_statement "puStack_78 = puVar17;" (assignment_expression "puStack_78 = puVar17" identifier = identifier) ;) (expression_statement "puStack_88 = puVar20;" (assignment_expression "puStack_88 = puVar20" identifier = identifier) ;) (expression_statement "piStack_80 = param_1;" (assignment_expression "piStack_80 = param_1" identifier = identifier) ;) (expression_statement "puStack_7c = unaff_s1;" (assignment_expression "puStack_7c = unaff_s1" identifier = identifier) ;) (expression_statement "pcStack_74 = pcVar21;" (assignment_expression "pcStack_74 = pcVar21" identifier = identifier) ;) (if_statement "if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" if (parenthesized_expression "(piVar5 == (int *)0x0)" ( (binary_expression "piVar5 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }" { (expression_statement "iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;" (assignment_expression "iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8" identifier = (binary_expression "*(int *)(puVar6 + 0xe3068) + 0x9f8" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;" (call_expression "(**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)" (parenthesized_expression "(**(code **)(puVar6 + 0xe374c))" ( (pointer_expression "**(code **)(puVar6 + 0xe374c)" * (pointer_expression "*(code **)(puVar6 + 0xe374c)" * (cast_expression "(code **)(puVar6 + 0xe374c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0xe374c)" ( (binary_expression "puVar6 + 0xe374c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)" ( (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x954" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , number_literal , identifier ))) ;) (labeled_statement "LAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;" statement_identifier : (expression_statement "iVar1 = iVar1 + 0x9f8;" (assignment_expression "iVar1 = iVar1 + 0x9f8" identifier = (binary_expression "iVar1 + 0x9f8" identifier + number_literal)) ;)) (expression_statement "(**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);" (call_expression "(**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970)" (parenthesized_expression "(**(code **)(puVar20 + -0x78e0))" ( (pointer_expression "**(code **)(puVar20 + -0x78e0)" * (pointer_expression "*(code **)(puVar20 + -0x78e0)" * (cast_expression "(code **)(puVar20 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + -0x78e0)" ( (binary_expression "puVar20 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970)" ( (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x134" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" else (compound_statement "{\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" { (if_statement "if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" if (parenthesized_expression "(piVar5[0x414] != 0)" ( (binary_expression "piVar5[0x414] != 0" (subscript_expression "piVar5[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" { (expression_statement "iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;" (assignment_expression "iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c" identifier = (binary_expression "*(int *)(puVar6 + 0xe305c) + -0x131c" (pointer_expression "*(int *)(puVar6 + 0xe305c)" * (cast_expression "(int *)(puVar6 + 0xe305c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe305c)" ( (binary_expression "puVar6 + 0xe305c" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "puStack_8c = puVar9;" (assignment_expression "puStack_8c = puVar9" identifier = identifier) ;) (expression_statement "(**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);" (call_expression "(**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295)" (parenthesized_expression "(**(code **)(puVar6 + 0xe34b4))" ( (pointer_expression "**(code **)(puVar6 + 0xe34b4)" * (pointer_expression "*(code **)(puVar6 + 0xe34b4)" * (cast_expression "(code **)(puVar6 + 0xe34b4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0xe34b4)" ( (binary_expression "puVar6 + 0xe34b4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295)" ( number_literal , (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar6 + 0xe3068) + 0x9e8" (pointer_expression "*(int *)(puVar6 + 0xe3068)" * (cast_expression "(int *)(puVar6 + 0xe3068)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0xe3068)" ( (binary_expression "puVar6 + 0xe3068" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(puStack_88 + -0x7fc4);" (assignment_expression "iVar1 = *(int *)(puStack_88 + -0x7fc4)" identifier = (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" * (cast_expression "(int *)(puStack_88 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_88 + -0x7fc4)" ( (binary_expression "puStack_88 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "param_1 = piVar5;" (assignment_expression "param_1 = piVar5" identifier = identifier) ;) (expression_statement "unaff_s1 = puVar9;" (assignment_expression "unaff_s1 = puVar9" identifier = identifier) ;) (expression_statement "puVar20 = puStack_88;" (assignment_expression "puVar20 = puStack_88" identifier = identifier) ;) (if_statement "if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }" if (parenthesized_expression "(piVar5[0x415] == -0x54535255)" ( (binary_expression "piVar5[0x415] == -0x54535255" (subscript_expression "piVar5[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }" { (if_statement "if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }" if (parenthesized_expression "(puVar9 != (undefined *)0x0)" ( (binary_expression "puVar9 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }" { (expression_statement "iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);" (assignment_expression "iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" identifier = (pointer_expression "*(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" * (cast_expression "(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar5[0x40e] + piVar5[0x40d] * 4)" ( (binary_expression "piVar5[0x40e] + piVar5[0x40d] * 4" (subscript_expression "piVar5[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar5[0x40d] * 4" (subscript_expression "piVar5[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "iVar1 = *(int *)(iVar16 + 0x290);" (assignment_expression "iVar1 = *(int *)(iVar16 + 0x290)" identifier = (pointer_expression "*(int *)(iVar16 + 0x290)" * (cast_expression "(int *)(iVar16 + 0x290)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x290)" ( (binary_expression "iVar16 + 0x290" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar21 = *(code **)(puStack_88 + -0x79d0)" identifier = (pointer_expression "*(code **)(puStack_88 + -0x79d0)" * (cast_expression "(code **)(puStack_88 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x79d0)" ( (binary_expression "puStack_88 + -0x79d0" identifier + number_literal) ))))) ;) (if_statement "if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }" { (if_statement "if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }" if (parenthesized_expression "((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0))" ( (binary_expression "(piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)" (parenthesized_expression "(piVar5[0x40f] == 0)" ( (binary_expression "piVar5[0x40f] == 0" (subscript_expression "piVar5[0x40f]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)" ( (comma_expression "iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0" (assignment_expression "iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297)" identifier = (call_expression "(**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297)" (parenthesized_expression "(**(code **)(puStack_88 + -0x7c18))" ( (pointer_expression "**(code **)(puStack_88 + -0x7c18)" * (pointer_expression "*(code **)(puStack_88 + -0x7c18)" * (cast_expression "(code **)(puStack_88 + -0x7c18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x7c18)" ( (binary_expression "puStack_88 + -0x7c18" identifier + number_literal) ))))) )) (argument_list "(iVar1,puVar9,0x1297)" ( identifier , identifier , number_literal )))) , (binary_expression "iVar1 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar21 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar21 = *(code **)(puStack_88 + -0x79d0)" identifier = (pointer_expression "*(code **)(puStack_88 + -0x79d0)" * (cast_expression "(code **)(puStack_88 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_88 + -0x79d0)" ( (binary_expression "puStack_88 + -0x79d0" identifier + number_literal) ))))) ;) })) (expression_statement "(*pcVar21)(iVar16 + 0x290,puVar9);" (call_expression "(*pcVar21)(iVar16 + 0x290,puVar9)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(iVar16 + 0x290,puVar9)" ( (binary_expression "iVar16 + 0x290" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);" (call_expression "FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9)" identifier (argument_list "(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9)" ( identifier , (binary_expression "*(int *)(puStack_88 + -0x7fc4) + -0x114" (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" * (cast_expression "(int *)(puStack_88 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_88 + -0x7fc4)" ( (binary_expression "puStack_88 + -0x7fc4" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (goto_statement "goto LAB_0006c128;" goto statement_identifier ;) })) }))) (expression_statement "pcVar19 = *(code **)(puVar20 + -0x78e0);" (assignment_expression "pcVar19 = *(code **)(puVar20 + -0x78e0)" identifier = (pointer_expression "*(code **)(puVar20 + -0x78e0)" * (cast_expression "(code **)(puVar20 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar20 + -0x78e0)" ( (binary_expression "puVar20 + -0x78e0" identifier + number_literal) ))))) ;) (expression_statement "puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);" (assignment_expression "puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970)" identifier = (cast_expression "(undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar20 + -0x7fc4) + -0x970)" ( (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar22 = DrawSetFillColor;" (assignment_expression "pcVar22 = DrawSetFillColor" identifier = identifier) ;) (expression_statement "puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);" (assignment_expression "puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c)" identifier = (cast_expression "(undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar20 + -0x7fc4) + 0x419c)" ( (binary_expression "*(int *)(puVar20 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" * (cast_expression "(int *)(puVar20 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar20 + -0x7fc4)" ( (binary_expression "puVar20 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);" (call_expression "(*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(puVar6,puVar10,0x1296,iVar1 + 0x9f8)" ( identifier , identifier , number_literal , (binary_expression "iVar1 + 0x9f8" identifier + number_literal) ))) ;) (expression_statement "pcVar21 = pcVar19 + 0xeae9c;" (assignment_expression "pcVar21 = pcVar19 + 0xeae9c" identifier = (binary_expression "pcVar19 + 0xeae9c" identifier + number_literal)) ;) (expression_statement "piVar5 = *(int **)(pcVar19 + 0xe3368);" (assignment_expression "piVar5 = *(int **)(pcVar19 + 0xe3368)" identifier = (pointer_expression "*(int **)(pcVar19 + 0xe3368)" * (cast_expression "(int **)(pcVar19 + 0xe3368)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe3368)" ( (binary_expression "pcVar19 + 0xe3368" identifier + number_literal) ))))) ;) (expression_statement "puStack_ac = puVar17;" (assignment_expression "puStack_ac = puVar17" identifier = identifier) ;) (expression_statement "iStack_bc = *piVar5;" (assignment_expression "iStack_bc = *piVar5" identifier = (pointer_expression "*piVar5" * identifier)) ;) (expression_statement "pcStack_180 = pcVar21;" (assignment_expression "pcStack_180 = pcVar21" identifier = identifier) ;) (expression_statement "piStack_b4 = param_1;" (assignment_expression "piStack_b4 = param_1" identifier = identifier) ;) (expression_statement "puStack_b0 = unaff_s1;" (assignment_expression "puStack_b0 = unaff_s1" identifier = identifier) ;) (expression_statement "puStack_a8 = unaff_s3;" (assignment_expression "puStack_a8 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" identifier = identifier) ;) (if_statement "if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }" if (parenthesized_expression "(puVar6 != (undefined *)0x0)" ( (binary_expression "puVar6 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }" { (if_statement "if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" if (parenthesized_expression "(*(int *)(puVar6 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(puVar6 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(puVar6 + 0x1054)" * (cast_expression "(int *)(puVar6 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1054)" ( (binary_expression "puVar6 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }" { (if_statement "if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" if (parenthesized_expression "(*(int *)(puVar6 + 0x1050) != 0)" ( (binary_expression "*(int *)(puVar6 + 0x1050) != 0" (pointer_expression "*(int *)(puVar6 + 0x1050)" * (cast_expression "(int *)(puVar6 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1050)" ( (binary_expression "puVar6 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" { (expression_statement "puStack_184 = puVar6 + 4;" (assignment_expression "puStack_184 = puVar6 + 4" identifier = (binary_expression "puVar6 + 4" identifier + number_literal)) ;) (expression_statement "iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;" (assignment_expression "iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c" identifier = (binary_expression "*(int *)(pcVar19 + 0xe2ecc) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe2ecc)" * (cast_expression "(int *)(pcVar19 + 0xe2ecc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2ecc)" ( (binary_expression "pcVar19 + 0xe2ecc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);" (call_expression "(**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe3324))" ( (pointer_expression "**(code **)(pcVar19 + 0xe3324)" * (pointer_expression "*(code **)(pcVar19 + 0xe3324)" * (cast_expression "(code **)(pcVar19 + 0xe3324)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe3324)" ( (binary_expression "pcVar19 + 0xe3324" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2ed8) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2ed8)" * (cast_expression "(int *)(pcVar19 + 0xe2ed8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2ed8)" ( (binary_expression "pcVar19 + 0xe2ed8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2ed8) + 0x9c0" (pointer_expression "*(int *)(pcVar19 + 0xe2ed8)" * (cast_expression "(int *)(pcVar19 + 0xe2ed8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2ed8)" ( (binary_expression "pcVar19 + 0xe2ed8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "pcVar21 = pcStack_180;" (assignment_expression "pcVar21 = pcStack_180" identifier = identifier) ;) (if_statement "if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }" if (parenthesized_expression "(puVar10 == (undefined8 *)0x0)" ( (binary_expression "puVar10 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }" { (expression_statement "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x78e0))" ( (pointer_expression "**(code **)(pcStack_180 + -0x78e0)" * (pointer_expression "*(code **)(pcStack_180 + -0x78e0)" * (cast_expression "(code **)(pcStack_180 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_180 + -0x78e0)" ( (binary_expression "pcStack_180 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x104" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "unaff_s3 = puVar10;" (assignment_expression "unaff_s3 = puVar10" identifier = identifier) ;) (goto_statement "goto LAB_0006c624;" goto statement_identifier ;) })) (expression_statement "param_1 = aiStack_170;" (assignment_expression "param_1 = aiStack_170" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);" (call_expression "(**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x77a0))" ( (pointer_expression "**(code **)(pcStack_180 + -0x77a0)" * (pointer_expression "*(code **)(pcStack_180 + -0x77a0)" * (cast_expression "(code **)(pcStack_180 + -0x77a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_180 + -0x77a0)" ( (binary_expression "pcStack_180 + -0x77a0" identifier + number_literal) ))))) )) (argument_list "(puVar10,param_1)" ( identifier , identifier ))) ;) (expression_statement "piVar7 = param_1;" (assignment_expression "piVar7 = param_1" identifier = identifier) ;) (expression_statement "piVar8 = aiStack_118;" (assignment_expression "piVar8 = aiStack_118" identifier = identifier) ;) (do_statement "do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);" do (compound_statement "{\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      }" { (expression_statement "piVar4 = piVar8;" (assignment_expression "piVar4 = piVar8" identifier = identifier) ;) (expression_statement "piVar3 = piVar7;" (assignment_expression "piVar3 = piVar7" identifier = identifier) ;) (expression_statement "piVar7 = piVar3 + 4;" (assignment_expression "piVar7 = piVar3 + 4" identifier = (binary_expression "piVar3 + 4" identifier + number_literal)) ;) (expression_statement "iVar13 = piVar3[1];" (assignment_expression "iVar13 = piVar3[1]" identifier = (subscript_expression "piVar3[1]" identifier [ number_literal ])) ;) (expression_statement "iVar16 = piVar3[2];" (assignment_expression "iVar16 = piVar3[2]" identifier = (subscript_expression "piVar3[2]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = piVar3[3];" (assignment_expression "iVar1 = piVar3[3]" identifier = (subscript_expression "piVar3[3]" identifier [ number_literal ])) ;) (expression_statement "*piVar4 = *piVar3;" (assignment_expression "*piVar4 = *piVar3" (pointer_expression "*piVar4" * identifier) = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "piVar4[1] = iVar13;" (assignment_expression "piVar4[1] = iVar13" (subscript_expression "piVar4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[2] = iVar16;" (assignment_expression "piVar4[2] = iVar16" (subscript_expression "piVar4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[3] = iVar1;" (assignment_expression "piVar4[3] = iVar1" (subscript_expression "piVar4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar8 = piVar4 + 4;" (assignment_expression "piVar8 = piVar4 + 4" identifier = (binary_expression "piVar4 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar7 != aiStack_120)" ( (binary_expression "piVar7 != aiStack_120" identifier != identifier) )) ;) (expression_statement "iVar16 = *(int *)(puVar6 + 0x1034);" (assignment_expression "iVar16 = *(int *)(puVar6 + 0x1034)" identifier = (pointer_expression "*(int *)(puVar6 + 0x1034)" * (cast_expression "(int *)(puVar6 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1034)" ( (binary_expression "puVar6 + 0x1034" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(puVar6 + 0x1038);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x1038)" identifier = (pointer_expression "*(int *)(puVar6 + 0x1038)" * (cast_expression "(int *)(puVar6 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x1038)" ( (binary_expression "puVar6 + 0x1038" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = piVar3[5];" (assignment_expression "iVar14 = piVar3[5]" identifier = (subscript_expression "piVar3[5]" identifier [ number_literal ])) ;) (expression_statement "iVar13 = *(int *)(puVar6 + 0x103c);" (assignment_expression "iVar13 = *(int *)(puVar6 + 0x103c)" identifier = (pointer_expression "*(int *)(puVar6 + 0x103c)" * (cast_expression "(int *)(puVar6 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x103c)" ( (binary_expression "puVar6 + 0x103c" identifier + number_literal) ))))) ;) (expression_statement "piVar4[4] = *piVar7;" (assignment_expression "piVar4[4] = *piVar7" (subscript_expression "piVar4[4]" identifier [ number_literal ]) = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piVar4[5] = iVar14;" (assignment_expression "piVar4[5] = iVar14" (subscript_expression "piVar4[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar1 = *(int *)(iVar1 + iVar16 * 4);" (assignment_expression "iVar1 = *(int *)(iVar1 + iVar16 * 4)" identifier = (pointer_expression "*(int *)(iVar1 + iVar16 * 4)" * (cast_expression "(int *)(iVar1 + iVar16 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + iVar16 * 4)" ( (binary_expression "iVar1 + iVar16 * 4" identifier + (binary_expression "iVar16 * 4" identifier * number_literal)) ))))) ;) (if_statement "if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (compound_statement "{\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }" { (if_statement "if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" if (parenthesized_expression "(*(int *)(iVar1 + 0x50) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x50) != 0" (pointer_expression "*(int *)(iVar1 + 0x50)" * (cast_expression "(int *)(iVar1 + 0x50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x50)" ( (binary_expression "iVar1 + 0x50" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" { (expression_statement "uVar2 = *(undefined4 *)(iVar1 + 0x94);" (assignment_expression "uVar2 = *(undefined4 *)(iVar1 + 0x94)" identifier = (pointer_expression "*(undefined4 *)(iVar1 + 0x94)" * (cast_expression "(undefined4 *)(iVar1 + 0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x94)" ( (binary_expression "iVar1 + 0x94" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = *(uint *)(iVar1 + 0x90);" (assignment_expression "uVar12 = *(uint *)(iVar1 + 0x90)" identifier = (pointer_expression "*(uint *)(iVar1 + 0x90)" * (cast_expression "(uint *)(iVar1 + 0x90)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x90)" ( (binary_expression "iVar1 + 0x90" identifier + number_literal) ))))) ;) (if_statement "if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" if (parenthesized_expression "(aiStack_170[2] == 0)" ( (binary_expression "aiStack_170[2] == 0" (subscript_expression "aiStack_170[2]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" { (expression_statement "uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" identifier = (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" * (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) })) (labeled_statement "LAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);" statement_identifier : (expression_statement "dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);" (assignment_expression "dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124)" identifier = (binary_expression "(double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124)" (cast_expression "(double)CONCAT44(uVar12,uVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar12,uVar2)" identifier (argument_list "(uVar12,uVar2)" ( identifier , identifier )))) - (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,uStack_124)" identifier (argument_list "(uStack_128,uStack_124)" ( identifier , identifier )))))) ;)) (expression_statement "uVar15 = SUB84(dVar24,0);" (assignment_expression "uVar15 = SUB84(dVar24,0)" identifier = (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal )))) ;) (if_statement "if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }" if (parenthesized_expression "(dVar24 < 0.0)" ( (binary_expression "dVar24 < 0.0" identifier < number_literal) )) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }" { (expression_statement "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar24 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dVar24 = -dVar24;" (assignment_expression "dVar24 = -dVar24" identifier = (unary_expression "-dVar24" - identifier)) ;) (expression_statement "uStack_174 = uVar15;" (assignment_expression "uStack_174 = uVar15" identifier = identifier) ;) })) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (if_statement "if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" if (parenthesized_expression "(dVar24 < *(double *)(iVar16 + 0x1a98))" ( (binary_expression "dVar24 < *(double *)(iVar16 + 0x1a98)" identifier < (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) ))))) )) (compound_statement "{\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" { (if_statement "if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }" if (parenthesized_expression "((double)CONCAT44(uVar12,uVar2) < 0.0)" ( (binary_expression "(double)CONCAT44(uVar12,uVar2) < 0.0" (cast_expression "(double)CONCAT44(uVar12,uVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar12,uVar2)" identifier (argument_list "(uVar12,uVar2)" ( identifier , identifier )))) < number_literal) )) (compound_statement "{\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }" { (expression_statement "uVar12 = uVar12 ^ 0x80000000;" (assignment_expression "uVar12 = uVar12 ^ 0x80000000" identifier = (binary_expression "uVar12 ^ 0x80000000" identifier ^ number_literal)) ;) (expression_statement "uStack_178 = uVar12;" (assignment_expression "uStack_178 = uVar12" identifier = identifier) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2))" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= (cast_expression "(double)CONCAT44(uVar12,uVar2)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar12,uVar2)" identifier (argument_list "(uVar12,uVar2)" ( identifier , identifier ))))) )) (compound_statement "{\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }" { (if_statement "if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }" if (parenthesized_expression "((double)CONCAT44(uStack_128,uStack_124) < 0.0)" ( (binary_expression "(double)CONCAT44(uStack_128,uStack_124) < 0.0" (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,uStack_124)" identifier (argument_list "(uStack_128,uStack_124)" ( identifier , identifier )))) < number_literal) )) (compound_statement "{\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }" { (expression_statement "uStack_128 = uStack_128 ^ 0x80000000;" (assignment_expression "uStack_128 = uStack_128 ^ 0x80000000" identifier = (binary_expression "uStack_128 ^ 0x80000000" identifier ^ number_literal)) ;) (expression_statement "uStack_178 = uStack_128;" (assignment_expression "uStack_178 = uStack_128" identifier = identifier) ;) (expression_statement "uStack_174 = uStack_124;" (assignment_expression "uStack_174 = uStack_124" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124))" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uStack_128,uStack_124)" identifier (argument_list "(uStack_128,uStack_124)" ( identifier , identifier ))))) )) (compound_statement "{\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }" { (expression_statement "dVar24 = *(double *)(iVar1 + 0x70);" (assignment_expression "dVar24 = *(double *)(iVar1 + 0x70)" identifier = (pointer_expression "*(double *)(iVar1 + 0x70)" * (cast_expression "(double *)(iVar1 + 0x70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x70)" ( (binary_expression "iVar1 + 0x70" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0006c398;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_0006c360;" goto statement_identifier ;) })) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;) })) (if_statement "if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" if (parenthesized_expression "(aiStack_170[2] != 0)" ( (binary_expression "aiStack_170[2] != 0" (subscript_expression "aiStack_170[2]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" { (expression_statement "uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" identifier = (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" * (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" * (cast_expression "(int *)(pcStack_180 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fd4)" ( (binary_expression "pcStack_180 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ;) (goto_statement "goto LAB_0006c260;" goto statement_identifier ;) })) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "dVar24 = *(double *)(iVar1 + 0x70);" (assignment_expression "dVar24 = *(double *)(iVar1 + 0x70)" identifier = (pointer_expression "*(double *)(iVar1 + 0x70)" * (cast_expression "(double *)(iVar1 + 0x70)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x70)" ( (binary_expression "iVar1 + 0x70" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0006c398:\n        dVar24 = dVar24 - dStack_148;" statement_identifier : (expression_statement "dVar24 = dVar24 - dStack_148;" (assignment_expression "dVar24 = dVar24 - dStack_148" identifier = (binary_expression "dVar24 - dStack_148" identifier - identifier)) ;)) (expression_statement "uVar2 = SUB84(dVar24,0);" (assignment_expression "uVar2 = SUB84(dVar24,0)" identifier = (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal )))) ;) (if_statement "if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }" if (parenthesized_expression "(dVar24 < 0.0)" ( (binary_expression "dVar24 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar24 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dVar24 = -dVar24;" (assignment_expression "dVar24 = -dVar24" identifier = (unary_expression "-dVar24" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dVar24)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dVar24" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (expression_statement "dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;" (assignment_expression "dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140" identifier = (binary_expression "*(double *)(iVar1 + 0x78) - dStack_140" (pointer_expression "*(double *)(iVar1 + 0x78)" * (cast_expression "(double *)(iVar1 + 0x78)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x78)" ( (binary_expression "iVar1 + 0x78" identifier + number_literal) )))) - identifier)) ;) (expression_statement "uVar2 = SUB84(dStack_140,0);" (assignment_expression "uVar2 = SUB84(dStack_140,0)" identifier = (call_expression "SUB84(dStack_140,0)" identifier (argument_list "(dStack_140,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }" if (parenthesized_expression "(dStack_140 < 0.0)" ( (binary_expression "dStack_140 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_140 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_140 >> 0x20)" ( (binary_expression "(ulonglong)dStack_140 >> 0x20" (cast_expression "(ulonglong)dStack_140" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_140 = -dStack_140;" (assignment_expression "dStack_140 = -dStack_140" identifier = (unary_expression "-dStack_140" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_140)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_140" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (expression_statement "dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;" (assignment_expression "dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138" identifier = (binary_expression "*(double *)(iVar1 + 0x80) - dStack_138" (pointer_expression "*(double *)(iVar1 + 0x80)" * (cast_expression "(double *)(iVar1 + 0x80)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x80)" ( (binary_expression "iVar1 + 0x80" identifier + number_literal) )))) - identifier)) ;) (expression_statement "uVar2 = SUB84(dStack_138,0);" (assignment_expression "uVar2 = SUB84(dStack_138,0)" identifier = (call_expression "SUB84(dStack_138,0)" identifier (argument_list "(dStack_138,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }" if (parenthesized_expression "(dStack_138 < 0.0)" ( (binary_expression "dStack_138 < 0.0" identifier < number_literal) )) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_138 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_138 >> 0x20)" ( (binary_expression "(ulonglong)dStack_138 >> 0x20" (cast_expression "(ulonglong)dStack_138" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_138 = -dStack_138;" (assignment_expression "dStack_138 = -dStack_138" identifier = (unary_expression "-dStack_138" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_138)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_138" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) (if_statement "if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" if (parenthesized_expression "(*(int *)(iVar1 + 0x4c) == 2)" ( (binary_expression "*(int *)(iVar1 + 0x4c) == 2" (pointer_expression "*(int *)(iVar1 + 0x4c)" * (cast_expression "(int *)(iVar1 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x4c)" ( (binary_expression "iVar1 + 0x4c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" { (expression_statement "dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;" (assignment_expression "dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130" identifier = (binary_expression "*(double *)(iVar1 + 0x88) - dStack_130" (pointer_expression "*(double *)(iVar1 + 0x88)" * (cast_expression "(double *)(iVar1 + 0x88)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x88)" ( (binary_expression "iVar1 + 0x88" identifier + number_literal) )))) - identifier)) ;) (expression_statement "uVar2 = SUB84(dStack_130,0);" (assignment_expression "uVar2 = SUB84(dStack_130,0)" identifier = (call_expression "SUB84(dStack_130,0)" identifier (argument_list "(dStack_130,0)" ( identifier , number_literal )))) ;) (if_statement "if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }" if (parenthesized_expression "(dStack_130 < 0.0)" ( (binary_expression "dStack_130 < 0.0" identifier < number_literal) )) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }" { (expression_statement "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" identifier = (binary_expression "(uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_130 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)dStack_130 >> 0x20)" ( (binary_expression "(ulonglong)dStack_130 >> 0x20" (cast_expression "(ulonglong)dStack_130" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) ^ number_literal)) ;) (expression_statement "dStack_130 = -dStack_130;" (assignment_expression "dStack_130 = -dStack_130" identifier = (unary_expression "-dStack_130" - identifier)) ;) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" identifier = identifier) ;) })) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;" if (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_130)" ( (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_130" (pointer_expression "*(double *)(iVar16 + 0x1a98)" * (cast_expression "(double *)(iVar16 + 0x1a98)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x1a98)" ( (binary_expression "iVar16 + 0x1a98" identifier + number_literal) )))) <= identifier) )) (goto_statement "goto LAB_0006c2d0;" goto statement_identifier ;)) })) }) (else_clause "else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" else (compound_statement "{\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" { (labeled_statement "LAB_0006c2d0:\n        piVar7 = aiStack_118;" statement_identifier : (expression_statement "piVar7 = aiStack_118;" (assignment_expression "piVar7 = aiStack_118" identifier = identifier) ;)) (expression_statement "piVar8 = (int *)(iVar1 + 0x48);" (assignment_expression "piVar8 = (int *)(iVar1 + 0x48)" identifier = (cast_expression "(int *)(iVar1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x48)" ( (binary_expression "iVar1 + 0x48" identifier + number_literal) )))) ;) (do_statement "do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);" do (compound_statement "{\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        }" { (expression_statement "piVar4 = piVar8;" (assignment_expression "piVar4 = piVar8" identifier = identifier) ;) (expression_statement "piVar3 = piVar7;" (assignment_expression "piVar3 = piVar7" identifier = identifier) ;) (expression_statement "piVar7 = piVar3 + 4;" (assignment_expression "piVar7 = piVar3 + 4" identifier = (binary_expression "piVar3 + 4" identifier + number_literal)) ;) (expression_statement "iVar13 = piVar3[1];" (assignment_expression "iVar13 = piVar3[1]" identifier = (subscript_expression "piVar3[1]" identifier [ number_literal ])) ;) (expression_statement "iVar16 = piVar3[2];" (assignment_expression "iVar16 = piVar3[2]" identifier = (subscript_expression "piVar3[2]" identifier [ number_literal ])) ;) (expression_statement "iVar1 = piVar3[3];" (assignment_expression "iVar1 = piVar3[3]" identifier = (subscript_expression "piVar3[3]" identifier [ number_literal ])) ;) (expression_statement "*piVar4 = *piVar3;" (assignment_expression "*piVar4 = *piVar3" (pointer_expression "*piVar4" * identifier) = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "piVar4[1] = iVar13;" (assignment_expression "piVar4[1] = iVar13" (subscript_expression "piVar4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[2] = iVar16;" (assignment_expression "piVar4[2] = iVar16" (subscript_expression "piVar4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar4[3] = iVar1;" (assignment_expression "piVar4[3] = iVar1" (subscript_expression "piVar4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "piVar8 = piVar4 + 4;" (assignment_expression "piVar8 = piVar4 + 4" identifier = (binary_expression "piVar4 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar7 != aiStack_118 + 0x14)" ( (binary_expression "piVar7 != aiStack_118 + 0x14" identifier != (binary_expression "aiStack_118 + 0x14" identifier + number_literal)) )) ;) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = piVar3[5];" (assignment_expression "iVar1 = piVar3[5]" identifier = (subscript_expression "piVar3[5]" identifier [ number_literal ])) ;) (expression_statement "puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);" (assignment_expression "puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" identifier = (cast_expression "(undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" ( (binary_expression "*(int *)(pcStack_180 + -0x7f90) + 0x2838" (pointer_expression "*(int *)(pcStack_180 + -0x7f90)" * (cast_expression "(int *)(pcStack_180 + -0x7f90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7f90)" ( (binary_expression "pcStack_180 + -0x7f90" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "piVar4[4] = *piVar7;" (assignment_expression "piVar4[4] = *piVar7" (subscript_expression "piVar4[4]" identifier [ number_literal ]) = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piVar4[5] = iVar1;" (assignment_expression "piVar4[5] = iVar1" (subscript_expression "piVar4[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_00062838(puVar6,iVar16 + -0xdc);" (call_expression "FUN_00062838(puVar6,iVar16 + -0xdc)" identifier (argument_list "(puVar6,iVar16 + -0xdc)" ( identifier , (binary_expression "iVar16 + -0xdc" identifier + number_literal) ))) ;) (expression_statement "FUN_00063d20(puVar6,param_1);" (call_expression "FUN_00063d20(puVar6,param_1)" identifier (argument_list "(puVar6,param_1)" ( identifier , identifier ))) ;) (expression_statement "FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);" (call_expression "FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224)" identifier (argument_list "(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224)" ( identifier , (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x224" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" * (cast_expression "(int *)(pcStack_180 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_180 + -0x7fc4)" ( (binary_expression "pcStack_180 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }))) (labeled_statement "LAB_0006c360:\n      pcVar21 = pcStack_180;" statement_identifier : (expression_statement "pcVar21 = pcStack_180;" (assignment_expression "pcVar21 = pcStack_180" identifier = identifier) ;)) (if_statement "if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }" if (parenthesized_expression "(iStack_bc == *piVar5)" ( (binary_expression "iStack_bc == *piVar5" identifier == (pointer_expression "*piVar5" * identifier)) )) (compound_statement "{\n        return *piVar5;\n      }" { (return_statement "return *piVar5;" return (pointer_expression "*piVar5" * identifier) ;) })) }) (else_clause "else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" else (compound_statement "{\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" { (labeled_statement "LAB_0006c624:\n      puVar10 = unaff_s3;" statement_identifier : (expression_statement "puVar10 = unaff_s3;" (assignment_expression "puVar10 = unaff_s3" identifier = identifier) ;)) (expression_statement "(**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcVar21 + -0x78e0))" ( (pointer_expression "**(code **)(pcVar21 + -0x78e0)" * (pointer_expression "*(code **)(pcVar21 + -0x78e0)" * (cast_expression "(code **)(pcVar21 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x78e0)" ( (binary_expression "pcVar21 + -0x78e0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4)" ( (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar21 + -0x7c74))();" (call_expression "(**(code **)(pcVar21 + -0x7c74))()" (parenthesized_expression "(**(code **)(pcVar21 + -0x7c74))" ( (pointer_expression "**(code **)(pcVar21 + -0x7c74)" * (pointer_expression "*(code **)(pcVar21 + -0x7c74)" * (cast_expression "(code **)(pcVar21 + -0x7c74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x7c74)" ( (binary_expression "pcVar21 + -0x7c74" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "puVar17 = puVar6;" (assignment_expression "puVar17 = puVar6" identifier = identifier) ;) (expression_statement "unaff_s3 = puVar10;" (assignment_expression "unaff_s3 = puVar10" identifier = identifier) ;) })) (expression_statement "uVar2 = 0x12c1;" (assignment_expression "uVar2 = 0x12c1" identifier = number_literal) ;) (expression_statement "pcVar19 = *(code **)(pcVar21 + -0x78e0);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + -0x78e0)" identifier = (pointer_expression "*(code **)(pcVar21 + -0x78e0)" * (cast_expression "(code **)(pcVar21 + -0x78e0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x78e0)" ( (binary_expression "pcVar21 + -0x78e0" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;" (assignment_expression "iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4" identifier = (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar22 = DrawSetFillOpacity;" (assignment_expression "pcVar22 = DrawSetFillOpacity" identifier = identifier) ;) (expression_statement "piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);" (assignment_expression "piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954)" identifier = (cast_expression "(int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + -0x7fc4) + -0x954)" ( (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x954" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);" (call_expression "(*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" * (cast_expression "(int *)(pcVar21 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + -0x7fc4)" ( (binary_expression "pcVar21 + -0x7fc4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcStack_1b0 = pcVar19 + 0xea988;" (assignment_expression "pcStack_1b0 = pcVar19 + 0xea988" identifier = (binary_expression "pcVar19 + 0xea988" identifier + number_literal)) ;) (expression_statement "dVar24 = (double)CONCAT44(uVar2,iVar1);" (assignment_expression "dVar24 = (double)CONCAT44(uVar2,iVar1)" identifier = (cast_expression "(double)CONCAT44(uVar2,iVar1)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(uVar2,iVar1)" identifier (argument_list "(uVar2,iVar1)" ( identifier , identifier ))))) ;) (expression_statement "piStack_1e0 = param_1;" (assignment_expression "piStack_1e0 = param_1" identifier = identifier) ;) (expression_statement "piStack_1a8 = param_1;" (assignment_expression "piStack_1a8 = param_1" identifier = identifier) ;) (expression_statement "pcStack_1a4 = pcVar22;" (assignment_expression "pcStack_1a4 = pcVar22" identifier = identifier) ;) (if_statement "if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }" if (parenthesized_expression "(piVar7 != (int *)0x0)" ( (binary_expression "piVar7 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }" { (if_statement "if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" if (parenthesized_expression "(piVar7[0x415] == -0x54535255)" ( (binary_expression "piVar7[0x415] == -0x54535255" (subscript_expression "piVar7[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" { (if_statement "if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" if (parenthesized_expression "(piVar7[0x414] != 0)" ( (binary_expression "piVar7[0x414] != 0" (subscript_expression "piVar7[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" { (expression_statement "iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;" (assignment_expression "iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c" identifier = (binary_expression "*(int *)(pcVar19 + 0xe29b8) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe29b8)" * (cast_expression "(int *)(pcVar19 + 0xe29b8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29b8)" ( (binary_expression "pcVar19 + 0xe29b8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "piStack_1b4 = piVar7 + 1;" (assignment_expression "piStack_1b4 = piVar7 + 1" identifier = (binary_expression "piVar7 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);" (call_expression "(**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2e10))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2e10)" * (pointer_expression "*(code **)(pcVar19 + 0xe2e10)" * (cast_expression "(code **)(pcVar19 + 0xe2e10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2e10)" ( (binary_expression "pcVar19 + 0xe2e10" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x998" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" identifier = (pointer_expression "*(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" * (cast_expression "(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar7[0x40e] + piVar7[0x40d] * 4)" ( (binary_expression "piVar7[0x40e] + piVar7[0x40d] * 4" (subscript_expression "piVar7[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar7[0x40d] * 4" (subscript_expression "piVar7[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));" (assignment_expression "dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" identifier = (cast_expression "(double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" ( (binary_expression "dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1b0 + -0x7fd4)" * (cast_expression "(int *)(pcStack_1b0 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1b0 + -0x7fd4)" ( (binary_expression "pcStack_1b0 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) ))))) ;) (if_statement "if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }" if (parenthesized_expression "((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25))" ( (binary_expression "(piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)" (parenthesized_expression "(piVar7[0x40f] == 0)" ( (binary_expression "piVar7[0x40f] == 0" (subscript_expression "piVar7[0x40f]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(*(double *)(iVar1 + 0x90) == dVar25)" ( (binary_expression "*(double *)(iVar1 + 0x90) == dVar25" (pointer_expression "*(double *)(iVar1 + 0x90)" * (cast_expression "(double *)(iVar1 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x90)" ( (binary_expression "iVar1 + 0x90" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar1;\n      }" { (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_1b0 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_1b0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1b0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1b0 + -0x7fc4)" ( (binary_expression "pcStack_1b0 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "*(double *)(iVar1 + 0x90) = dVar25;" (assignment_expression "*(double *)(iVar1 + 0x90) = dVar25" (pointer_expression "*(double *)(iVar1 + 0x90)" * (cast_expression "(double *)(iVar1 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x90)" ( (binary_expression "iVar1 + 0x90" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));" (assignment_expression "iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier = (call_expression "FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier (argument_list "(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" ( identifier , (binary_expression "iVar16 + -0xd4" identifier + number_literal) , (cast_expression "(int)((ulonglong)dVar24 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);" (call_expression "(**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe30a8))" ( (pointer_expression "**(code **)(pcVar19 + 0xe30a8)" * (pointer_expression "*(code **)(pcVar19 + 0xe30a8)" * (cast_expression "(code **)(pcVar19 + 0xe30a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe30a8)" ( (binary_expression "pcVar19 + 0xe30a8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac)" ( (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piStack_1e0 = piVar7;" (assignment_expression "piStack_1e0 = piVar7" identifier = identifier) ;) })) (expression_statement "uVar2 = 0x12f1;" (assignment_expression "uVar2 = 0x12f1" identifier = number_literal) ;) (expression_statement "pcVar22 = *(code **)(pcVar19 + 0xe30a8);" (assignment_expression "pcVar22 = *(code **)(pcVar19 + 0xe30a8)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe30a8)" * (cast_expression "(code **)(pcVar19 + 0xe30a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe30a8)" ( (binary_expression "pcVar19 + 0xe30a8" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac" identifier = (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pcVar23 = DrawSetFontResolution;" (assignment_expression "pcVar23 = DrawSetFontResolution" identifier = identifier) ;) (expression_statement "piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);" (assignment_expression "piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954)" identifier = (cast_expression "(int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar19 + 0xe29c4) + -0x954)" ( (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);" (call_expression "(*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" * (cast_expression "(int *)(pcVar19 + 0xe29c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe29c4)" ( (binary_expression "pcVar19 + 0xe29c4" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar21 = pcVar22 + 0xea838;" (assignment_expression "pcVar21 = pcVar22 + 0xea838" identifier = (binary_expression "pcVar22 + 0xea838" identifier + number_literal)) ;) (expression_statement "puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);" (assignment_expression "puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04)" identifier = (pointer_expression "*(undefined4 **)(pcVar22 + 0xe2d04)" * (cast_expression "(undefined4 **)(pcVar22 + 0xe2d04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2d04)" ( (binary_expression "pcVar22 + 0xe2d04" identifier + number_literal) ))))) ;) (expression_statement "piStack_1e4 = (int *)*puVar18;" (assignment_expression "piStack_1e4 = (int *)*puVar18" identifier = (cast_expression "(int *)*puVar18" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) ;) (expression_statement "uVar27 = CONCAT44(uVar2,iVar1);" (assignment_expression "uVar27 = CONCAT44(uVar2,iVar1)" identifier = (call_expression "CONCAT44(uVar2,iVar1)" identifier (argument_list "(uVar2,iVar1)" ( identifier , identifier )))) ;) (expression_statement "piVar7 = piStack_1e0;" (assignment_expression "piVar7 = piStack_1e0" identifier = identifier) ;) (expression_statement "pcStack_11f0 = pcVar21;" (assignment_expression "pcStack_11f0 = pcVar21" identifier = identifier) ;) (expression_statement "piStack_1dc = piVar5;" (assignment_expression "piStack_1dc = piVar5" identifier = identifier) ;) (expression_statement "puStack_1d8 = puVar17;" (assignment_expression "puStack_1d8 = puVar17" identifier = identifier) ;) (expression_statement "pcStack_1d4 = pcVar23;" (assignment_expression "pcStack_1d4 = pcVar23" identifier = identifier) ;) (expression_statement "dStack_1d0 = dVar24;" (assignment_expression "dStack_1d0 = dVar24" identifier = identifier) ;) (if_statement "if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(piVar8 == (int *)0x0)" ( (binary_expression "piVar8 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }" { (labeled_statement "LAB_0006c904:\n    iVar16 = 0x131f;" statement_identifier : (expression_statement "iVar16 = 0x131f;" (assignment_expression "iVar16 = 0x131f" identifier = number_literal) ;)) (expression_statement "iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;" (assignment_expression "iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980" identifier = (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);" (assignment_expression "piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954)" identifier = (cast_expression "(int *)(*(int *)(pcVar22 + 0xe2874) + -0x954)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0xe2874) + -0x954)" ( (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x954" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);" (call_expression "(**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2f58))" ( (pointer_expression "**(code **)(pcVar22 + 0xe2f58)" * (pointer_expression "*(code **)(pcVar22 + 0xe2f58)" * (cast_expression "(code **)(pcVar22 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2f58)" ( (binary_expression "pcVar22 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970)" ( identifier , (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" { (expression_statement "piVar7 = piVar8;" (assignment_expression "piVar7 = piVar8" identifier = identifier) ;) (if_statement "if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" if (parenthesized_expression "(piVar8[0x415] != -0x54535255)" ( (binary_expression "piVar8[0x415] != -0x54535255" (subscript_expression "piVar8[0x415]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" { (expression_statement "(**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);" (call_expression "(**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2f58))" ( (pointer_expression "**(code **)(pcVar22 + 0xe2f58)" * (pointer_expression "*(code **)(pcVar22 + 0xe2f58)" * (cast_expression "(code **)(pcVar22 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2f58)" ( (binary_expression "pcVar22 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) (goto_statement "goto LAB_0006c904;" goto statement_identifier ;) })) (if_statement "if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }" if (parenthesized_expression "(piVar8[0x414] != 0)" ( (binary_expression "piVar8[0x414] != 0" (subscript_expression "piVar8[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }" { (expression_statement "iVar1 = 0x1322;" (assignment_expression "iVar1 = 0x1322" identifier = number_literal) ;) (expression_statement "uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);" (assignment_expression "uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" identifier = (call_expression "CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" identifier (argument_list "(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" ( (binary_expression "*(int *)(pcVar22 + 0xe2868) + -0x131c" (pointer_expression "*(int *)(pcVar22 + 0xe2868)" * (cast_expression "(int *)(pcVar22 + 0xe2868)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2868)" ( (binary_expression "pcVar22 + 0xe2868" identifier + number_literal) )))) + number_literal) , (binary_expression "piVar8 + 1" identifier + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);" (call_expression "(**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2cc0))" ( (pointer_expression "**(code **)(pcVar22 + 0xe2cc0)" * (pointer_expression "*(code **)(pcVar22 + 0xe2cc0)" * (cast_expression "(code **)(pcVar22 + 0xe2cc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0xe2cc0)" ( (binary_expression "pcVar22 + 0xe2cc0" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968)" ( number_literal , (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x968" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" * (cast_expression "(int *)(pcVar22 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0xe2874)" ( (binary_expression "pcVar22 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "piVar5 = aiStack_11e4;" (assignment_expression "piVar5 = aiStack_11e4" identifier = identifier) ;) (expression_statement "iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;" (assignment_expression "iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" identifier = (binary_expression "*(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" (pointer_expression "*(int *)(pcStack_11f0 + -0x7fc4)" * (cast_expression "(int *)(pcStack_11f0 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_11f0 + -0x7fc4)" ( (binary_expression "pcStack_11f0 + -0x7fc4" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uStack_1200 = uVar27;" (assignment_expression "uStack_1200 = uVar27" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);" (call_expression "(**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x7e80))" ( (pointer_expression "**(code **)(pcStack_11f0 + -0x7e80)" * (pointer_expression "*(code **)(pcStack_11f0 + -0x7e80)" * (cast_expression "(code **)(pcStack_11f0 + -0x7e80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_11f0 + -0x7e80)" ( (binary_expression "pcStack_11f0 + -0x7e80" identifier + number_literal) ))))) )) (argument_list "(piVar5,0x1000)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);" (call_expression "(**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x79d0))" ( (pointer_expression "**(code **)(pcStack_11f0 + -0x79d0)" * (pointer_expression "*(code **)(pcStack_11f0 + -0x79d0)" * (cast_expression "(code **)(pcStack_11f0 + -0x79d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_11f0 + -0x79d0)" ( (binary_expression "pcStack_11f0 + -0x79d0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5)" ( (binary_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290" (pointer_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" * (cast_expression "(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (binary_expression "piVar8[0x40e] + piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40d]" identifier [ number_literal ]) * number_literal)) )))) + number_literal) , identifier ))) ;) (expression_statement "piVar8 = piStack_1e4;" (assignment_expression "piVar8 = piStack_1e4" identifier = identifier) ;) (expression_statement "pcVar21 = pcStack_11f0;" (assignment_expression "pcVar21 = pcStack_11f0" identifier = identifier) ;) (if_statement "if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }" if (parenthesized_expression "(piStack_1e4 == (int *)*puVar18)" ( (binary_expression "piStack_1e4 == (int *)*puVar18" identifier == (cast_expression "(int *)*puVar18" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "pcVar21 = *(code **)(pcVar21 + -0x7c74);" (assignment_expression "pcVar21 = *(code **)(pcVar21 + -0x7c74)" identifier = (pointer_expression "*(code **)(pcVar21 + -0x7c74)" * (cast_expression "(code **)(pcVar21 + -0x7c74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + -0x7c74)" ( (binary_expression "pcVar21 + -0x7c74" identifier + number_literal) ))))) ;) (expression_statement "pcVar19 = DrawSetOpacity;" (assignment_expression "pcVar19 = DrawSetOpacity" identifier = identifier) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_1228 = pcVar21 + 0xea6cc;" (assignment_expression "pcStack_1228 = pcVar21 + 0xea6cc" identifier = (binary_expression "pcVar21 + 0xea6cc" identifier + number_literal)) ;) (expression_statement "dVar24 = (double)CONCAT44(iVar16,iVar1);" (assignment_expression "dVar24 = (double)CONCAT44(iVar16,iVar1)" identifier = (cast_expression "(double)CONCAT44(iVar16,iVar1)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(iVar16,iVar1)" identifier (argument_list "(iVar16,iVar1)" ( identifier , identifier ))))) ;) (expression_statement "piStack_1254 = piVar7;" (assignment_expression "piStack_1254 = piVar7" identifier = identifier) ;) (expression_statement "piStack_1220 = piVar7;" (assignment_expression "piStack_1220 = piVar7" identifier = identifier) ;) (expression_statement "pcStack_121c = pcVar19;" (assignment_expression "pcStack_121c = pcVar19" identifier = identifier) ;) (expression_statement "uStack_1218 = uVar27;" (assignment_expression "uStack_1218 = uVar27" identifier = identifier) ;) (if_statement "if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }" if (parenthesized_expression "(piVar8 != (int *)0x0)" ( (binary_expression "piVar8 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }" { (if_statement "if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" if (parenthesized_expression "(piVar8[0x415] == -0x54535255)" ( (binary_expression "piVar8[0x415] == -0x54535255" (subscript_expression "piVar8[0x415]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" { (if_statement "if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }" if (parenthesized_expression "(piVar8[0x414] != 0)" ( (binary_expression "piVar8[0x414] != 0" (subscript_expression "piVar8[0x414]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }" { (expression_statement "iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;" (assignment_expression "iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c" identifier = (binary_expression "*(int *)(pcVar21 + 0xe26fc) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe26fc)" * (cast_expression "(int *)(pcVar21 + 0xe26fc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe26fc)" ( (binary_expression "pcVar21 + 0xe26fc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "piStack_122c = piVar8 + 1;" (assignment_expression "piStack_122c = piVar8 + 1" identifier = (binary_expression "piVar8 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2b54))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2b54)" * (pointer_expression "*(code **)(pcVar21 + 0xe2b54)" * (cast_expression "(code **)(pcVar21 + 0xe2b54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2b54)" ( (binary_expression "pcVar21 + 0xe2b54" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" identifier = (pointer_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" * (cast_expression "(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar8[0x40e] + piVar8[0x40d] * 4)" ( (binary_expression "piVar8[0x40e] + piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40e]" identifier [ number_literal ]) + (binary_expression "piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40d]" identifier [ number_literal ]) * number_literal)) ))))) ;) (expression_statement "fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));" (assignment_expression "fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" identifier = (cast_expression "(float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" ( (binary_expression "dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" ( (binary_expression "*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1228 + -0x7fd4)" * (cast_expression "(int *)(pcStack_1228 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1228 + -0x7fd4)" ( (binary_expression "pcStack_1228 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (if_statement "if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }" if (parenthesized_expression "((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26))" ( (binary_expression "(piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)" (parenthesized_expression "(piVar8[0x40f] == 0)" ( (binary_expression "piVar8[0x40f] == 0" (subscript_expression "piVar8[0x40f]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(*(float *)(iVar1 + 0x2cc) == fVar26)" ( (binary_expression "*(float *)(iVar1 + 0x2cc) == fVar26" (pointer_expression "*(float *)(iVar1 + 0x2cc)" * (cast_expression "(float *)(iVar1 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2cc)" ( (binary_expression "iVar1 + 0x2cc" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar1;\n      }" { (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar16 = *(int *)(pcStack_1228 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_1228 + -0x7fc4)" identifier = (pointer_expression "*(int *)(pcStack_1228 + -0x7fc4)" * (cast_expression "(int *)(pcStack_1228 + -0x7fc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_1228 + -0x7fc4)" ( (binary_expression "pcStack_1228 + -0x7fc4" identifier + number_literal) ))))) ;) (expression_statement "*(float *)(iVar1 + 0x2cc) = fVar26;" (assignment_expression "*(float *)(iVar1 + 0x2cc) = fVar26" (pointer_expression "*(float *)(iVar1 + 0x2cc)" * (cast_expression "(float *)(iVar1 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x2cc)" ( (binary_expression "iVar1 + 0x2cc" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));" (assignment_expression "iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier = (call_expression "FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" identifier (argument_list "(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" ( identifier , (binary_expression "iVar16 + -0xb4" identifier + number_literal) , (cast_expression "(int)((ulonglong)dVar24 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar24 >> 0x20)" ( (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar24,0)" identifier (argument_list "(dVar24,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2dec))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2dec)" * (pointer_expression "*(code **)(pcVar21 + 0xe2dec)" * (cast_expression "(code **)(pcVar21 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2dec)" ( (binary_expression "pcVar21 + 0xe2dec" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958)" ( (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piStack_1254 = piVar8;" (assignment_expression "piStack_1254 = piVar8" identifier = identifier) ;) })) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe2dec);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe2dec)" identifier = (pointer_expression "*(code **)(pcVar21 + 0xe2dec)" * (cast_expression "(code **)(pcVar21 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2dec)" ( (binary_expression "pcVar21 + 0xe2dec" identifier + number_literal) ))))) ;) (expression_statement "pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);" (assignment_expression "pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar21 + 0xe2708) + -0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0xe2708) + -0x970)" ( (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar22 = DrawSetFillPatternURL;" (assignment_expression "pcVar22 = DrawSetFillPatternURL" identifier = identifier) ;) (expression_statement "iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954" identifier = (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);" (call_expression "(*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" * (cast_expression "(int *)(pcVar21 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2708)" ( (binary_expression "pcVar21 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar7 = *(int **)(pcVar19 + 0xe2a4c);" (assignment_expression "piVar7 = *(int **)(pcVar19 + 0xe2a4c)" identifier = (pointer_expression "*(int **)(pcVar19 + 0xe2a4c)" * (cast_expression "(int **)(pcVar19 + 0xe2a4c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2a4c)" ( (binary_expression "pcVar19 + 0xe2a4c" identifier + number_literal) ))))) ;) (expression_statement "iStack_125c = *piVar7;" (assignment_expression "iStack_125c = *piVar7" identifier = (pointer_expression "*piVar7" * identifier)) ;) (expression_statement "piStack_1250 = piVar5;" (assignment_expression "piStack_1250 = piVar5" identifier = identifier) ;) (expression_statement "puStack_124c = puVar18;" (assignment_expression "puStack_124c = puVar18" identifier = identifier) ;) (expression_statement "puStack_1248 = unaff_s3;" (assignment_expression "puStack_1248 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_1244 = pcVar22;" (assignment_expression "pcStack_1244 = pcVar22" identifier = identifier) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) == 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "iVar16 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar16 = *(int *)(&DAT_00001004 + iVar1)" identifier = (pointer_expression "*(int *)(&DAT_00001004 + iVar1)" * (cast_expression "(int *)(&DAT_00001004 + iVar1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001004 + iVar1)" ( (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" & identifier) + identifier) ))))) ;) }) (else_clause "else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" else (compound_statement "{\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "(**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);" (call_expression "(**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2a08))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2a08)" * (pointer_expression "*(code **)(pcVar19 + 0xe2a08)" * (cast_expression "(code **)(pcVar19 + 0xe2a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2a08)" ( (binary_expression "pcVar19 + 0xe2a08" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe25b0)" * (cast_expression "(int *)(pcVar19 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25b0)" ( (binary_expression "pcVar19 + 0xe25b0" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar16 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar16 = *(int *)(&DAT_00001004 + iVar1)" identifier = (pointer_expression "*(int *)(&DAT_00001004 + iVar1)" * (cast_expression "(int *)(&DAT_00001004 + iVar1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001004 + iVar1)" ( (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" & identifier) + identifier) ))))) ;) }))) (if_statement "if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" if (parenthesized_expression "(iVar16 == 0)" ( (binary_expression "iVar16 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);" (call_expression "(**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe283c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe283c)" * (pointer_expression "*(code **)(pcVar19 + 0xe283c)" * (cast_expression "(code **)(pcVar19 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe283c)" ( (binary_expression "pcVar19 + 0xe283c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" ( (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001008 + iVar1)" ( (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" & identifier) + identifier) )))) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" * (cast_expression "(int *)(pcVar19 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25ac)" ( (binary_expression "pcVar19 + 0xe25ac" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }" if (parenthesized_expression "(pcVar11 != (char *)0x0)" ( (binary_expression "pcVar11 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }" { (expression_statement "iVar13 = *(int *)(pcVar19 + 0xe25ac);" (assignment_expression "iVar13 = *(int *)(pcVar19 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" * (cast_expression "(int *)(pcVar19 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25ac)" ( (binary_expression "pcVar19 + 0xe25ac" identifier + number_literal) ))))) ;) (if_statement "if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" if (parenthesized_expression "(*pcVar11 == '#')" ( (binary_expression "*pcVar11 == '#'" (pointer_expression "*pcVar11" * identifier) == (char_literal "'#'" ' character ')) )) (compound_statement "{\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }" { (expression_statement "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);" (call_expression "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2700)" * (pointer_expression "*(code **)(pcVar19 + 0xe2700)" * (cast_expression "(code **)(pcVar19 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2700)" ( (binary_expression "pcVar19 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe25b0)" * (cast_expression "(int *)(pcVar19 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25b0)" ( (binary_expression "pcVar19 + 0xe25b0" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar11 + 1" identifier + number_literal) ))) ;) (expression_statement "iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);" (assignment_expression "iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" identifier = (call_expression "(**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2bc8))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2bc8)" * (pointer_expression "*(code **)(pcVar19 + 0xe2bc8)" * (cast_expression "(code **)(pcVar19 + 0xe2bc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2bc8)" ( (binary_expression "pcVar19 + 0xe2bc8" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" ( (pointer_expression "*(undefined4 *)(&DAT_00001004 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001004 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001004 + iVar1)" ( (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" & identifier) + identifier) )))) , identifier )))) ;) (if_statement "if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" if (parenthesized_expression "(iVar16 == 0)" ( (binary_expression "iVar16 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" { (expression_statement "iVar13 = *(int *)(pcVar19 + 0xe25ac);" (assignment_expression "iVar13 = *(int *)(pcVar19 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" * (cast_expression "(int *)(pcVar19 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25ac)" ( (binary_expression "pcVar19 + 0xe25ac" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = 0x1386;" (assignment_expression "uVar15 = 0x1386" identifier = number_literal) ;) (expression_statement "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1)" identifier = (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001008 + iVar1)" ( (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" & identifier) + identifier) ))))) ;) (expression_statement "iVar14 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar14 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe283c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe283c)" * (cast_expression "(code **)(pcVar19 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe283c)" ( (binary_expression "pcVar19 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (goto_statement "goto LAB_0006cb28;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);" (call_expression "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2700)" * (pointer_expression "*(code **)(pcVar19 + 0xe2700)" * (cast_expression "(code **)(pcVar19 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2700)" ( (binary_expression "pcVar19 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }" if (parenthesized_expression "(*(double *)(iVar16 + 0x90) != 0.0)" ( (binary_expression "*(double *)(iVar16 + 0x90) != 0.0" (pointer_expression "*(double *)(iVar16 + 0x90)" * (cast_expression "(double *)(iVar16 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x90)" ( (binary_expression "iVar16 + 0x90" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }" { (expression_statement "*(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);" (assignment_expression "*(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc)" (pointer_expression "*(double *)(iVar16 + 0x90)" * (cast_expression "(double *)(iVar16 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x90)" ( (binary_expression "iVar16 + 0x90" identifier + number_literal) )))) = (cast_expression "(double)*(float *)(iVar16 + 0x2cc)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar16 + 0x2cc)" * (cast_expression "(float *)(iVar16 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x2cc)" ( (binary_expression "iVar16 + 0x2cc" identifier + number_literal) )))))) ;) })) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "FUN_00062838(iVar1,iVar16,auStack_225c);" (call_expression "FUN_00062838(iVar1,iVar16,auStack_225c)" identifier (argument_list "(iVar1,iVar16,auStack_225c)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) }) (else_clause "else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" else (compound_statement "{\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" { (expression_statement "uVar15 = 0x1380;" (assignment_expression "uVar15 = 0x1380" identifier = number_literal) ;) (expression_statement "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1)" identifier = (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" * (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00001008 + iVar1)" ( (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" & identifier) + identifier) ))))) ;) (expression_statement "iVar14 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar14 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe283c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe283c)" * (cast_expression "(code **)(pcVar19 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe283c)" ( (binary_expression "pcVar19 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0006cb28:\n          iVar16 = iVar16 + -0x970;" statement_identifier : (expression_statement "iVar16 = iVar16 + -0x970;" (assignment_expression "iVar16 = iVar16 + -0x970" identifier = (binary_expression "iVar16 + -0x970" identifier + number_literal)) ;)) (expression_statement "(*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);" (call_expression "(*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11)" ( identifier , identifier , (binary_expression "iVar14 + 0x918" identifier + number_literal) , identifier , number_literal , identifier , (binary_expression "iVar13 + 0x5cf4" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) }))) (expression_statement "iVar1 = iStack_125c;" (assignment_expression "iVar1 = iStack_125c" identifier = identifier) ;) (if_statement "if (iStack_125c == *piVar7) {\n          return iVar13;\n        }" if (parenthesized_expression "(iStack_125c == *piVar7)" ( (binary_expression "iStack_125c == *piVar7" identifier == (pointer_expression "*piVar7" * identifier)) )) (compound_statement "{\n          return iVar13;\n        }" { (return_statement "return iVar13;" return identifier ;) })) (goto_statement "goto LAB_0006cd54;" goto statement_identifier ;) })) }) (else_clause "else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" else (compound_statement "{\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" { (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" * (cast_expression "(code **)(pcVar19 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2ca0)" ( (binary_expression "pcVar19 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" * (cast_expression "(code **)(pcVar19 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2ca0)" ( (binary_expression "pcVar19 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954" identifier = (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" * (cast_expression "(code **)(pcVar19 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2ca0)" ( (binary_expression "pcVar19 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" * (cast_expression "(int *)(pcVar19 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe25bc)" ( (binary_expression "pcVar19 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);" statement_identifier : (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe290c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe290c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe290c)" * (cast_expression "(code **)(pcVar19 + 0xe290c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe290c)" ( (binary_expression "pcVar19 + 0xe290c" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2728))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2728)" * (pointer_expression "*(code **)(pcVar21 + 0xe2728)" * (cast_expression "(code **)(pcVar21 + 0xe2728)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2728)" ( (binary_expression "pcVar21 + 0xe2728" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe22d0)" * (cast_expression "(int *)(pcVar21 + 0xe22d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22d0)" ( (binary_expression "pcVar21 + 0xe22d0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }" if (parenthesized_expression "((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16))" ( (binary_expression "(*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)" (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" * (cast_expression "(int *)(iVar1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x103c)" ( (binary_expression "iVar1 + 0x103c" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(iVar13 + 0x240) == iVar16)" ( (binary_expression "*(int *)(iVar13 + 0x240) == iVar16" (pointer_expression "*(int *)(iVar13 + 0x240)" * (cast_expression "(int *)(iVar13 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x240)" ( (binary_expression "iVar13 + 0x240" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar13;\n      }" { (return_statement "return iVar13;" return identifier ;) })) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe2408);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe2408)" identifier = (pointer_expression "*(code **)(pcVar21 + 0xe2408)" * (cast_expression "(code **)(pcVar21 + 0xe2408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2408)" ( (binary_expression "pcVar21 + 0xe2408" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(iVar13 + 0x240) = iVar16;" (assignment_expression "*(int *)(iVar13 + 0x240) = iVar16" (pointer_expression "*(int *)(iVar13 + 0x240)" * (cast_expression "(int *)(iVar13 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x240)" ( (binary_expression "iVar13 + 0x240" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar2 = (*pcVar19)(0x1a,iVar16);" (assignment_expression "uVar2 = (*pcVar19)(0x1a,iVar16)" identifier = (call_expression "(*pcVar19)(0x1a,iVar16)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(0x1a,iVar16)" ( number_literal , identifier )))) ;) (expression_statement "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);" (assignment_expression "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" identifier = (call_expression "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" identifier (argument_list "(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" ( identifier , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe29c0))" ( (pointer_expression "**(code **)(pcVar21 + 0xe29c0)" * (pointer_expression "*(code **)(pcVar21 + 0xe29c0)" * (cast_expression "(code **)(pcVar21 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe29c0)" ( (binary_expression "pcVar21 + 0xe29c0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908)" ( (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe29c0);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe29c0)" identifier = (pointer_expression "*(code **)(pcVar21 + 0xe29c0)" * (cast_expression "(code **)(pcVar21 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe29c0)" ( (binary_expression "pcVar21 + 0xe29c0" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970" identifier = (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954" identifier = (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);" (call_expression "(*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" * (cast_expression "(int *)(pcVar21 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe22dc)" ( (binary_expression "pcVar21 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe25e4))" ( (pointer_expression "**(code **)(pcVar19 + 0xe25e4)" * (pointer_expression "*(code **)(pcVar19 + 0xe25e4)" * (cast_expression "(code **)(pcVar19 + 0xe25e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe25e4)" ( (binary_expression "pcVar19 + 0xe25e4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe218c)" * (cast_expression "(int *)(pcVar19 + 0xe218c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe218c)" ( (binary_expression "pcVar19 + 0xe218c" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }" if (parenthesized_expression "(iVar16 != 0)" ( (binary_expression "iVar16 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }" { (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }" if (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" * (cast_expression "(int *)(iVar1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x103c)" ( (binary_expression "iVar1 + 0x103c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }" { (expression_statement "iVar14 = *(int *)(iVar13 + 0x264);" (assignment_expression "iVar14 = *(int *)(iVar13 + 0x264)" identifier = (pointer_expression "*(int *)(iVar13 + 0x264)" * (cast_expression "(int *)(iVar13 + 0x264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x264)" ( (binary_expression "iVar13 + 0x264" identifier + number_literal) ))))) ;) (if_statement "if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }" if (parenthesized_expression "((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0))" ( (binary_expression "(iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)" (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)" ( (comma_expression "iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0" (assignment_expression "iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16)" identifier = (call_expression "(**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2544))" ( (pointer_expression "**(code **)(pcVar19 + 0xe2544)" * (pointer_expression "*(code **)(pcVar19 + 0xe2544)" * (cast_expression "(code **)(pcVar19 + 0xe2544)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe2544)" ( (binary_expression "pcVar19 + 0xe2544" identifier + number_literal) ))))) )) (argument_list "(iVar14,iVar16)" ( identifier , identifier )))) , (binary_expression "iVar14 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);" (call_expression "(**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe278c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe278c)" * (pointer_expression "*(code **)(pcVar19 + 0xe278c)" * (cast_expression "(code **)(pcVar19 + 0xe278c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe278c)" ( (binary_expression "pcVar19 + 0xe278c" identifier + number_literal) ))))) )) (argument_list "(iVar13 + 0x264,iVar16)" ( (binary_expression "iVar13 + 0x264" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16)" identifier (argument_list "(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16)" ( identifier , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe287c)" * (pointer_expression "*(code **)(pcVar19 + 0xe287c)" * (cast_expression "(code **)(pcVar19 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe287c)" ( (binary_expression "pcVar19 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "(**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar19 + 0xe287c)" * (pointer_expression "*(code **)(pcVar19 + 0xe287c)" * (cast_expression "(code **)(pcVar19 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe287c)" ( (binary_expression "pcVar19 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe287c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe287c)" identifier = (pointer_expression "*(code **)(pcVar19 + 0xe287c)" * (cast_expression "(code **)(pcVar19 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0xe287c)" ( (binary_expression "pcVar19 + 0xe287c" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970" identifier = (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954" identifier = (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" * (cast_expression "(int *)(pcVar19 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar19 + 0xe2198)" ( (binary_expression "pcVar19 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2704)" * (pointer_expression "*(code **)(pcVar21 + 0xe2704)" * (cast_expression "(code **)(pcVar21 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2704)" ( (binary_expression "pcVar21 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" * (cast_expression "(int *)(iVar1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1054)" ( (binary_expression "iVar1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" if (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" ( (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" * (cast_expression "(int *)(iVar1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1050)" ( (binary_expression "iVar1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" { (expression_statement "(**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe246c))" ( (pointer_expression "**(code **)(pcVar21 + 0xe246c)" * (pointer_expression "*(code **)(pcVar21 + 0xe246c)" * (cast_expression "(code **)(pcVar21 + 0xe246c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe246c)" ( (binary_expression "pcVar21 + 0xe246c" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe2014)" * (cast_expression "(int *)(pcVar21 + 0xe2014)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2014)" ( (binary_expression "pcVar21 + 0xe2014" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }" if (parenthesized_expression "(iVar16 != 0)" ( (binary_expression "iVar16 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }" { (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" ( (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" * (cast_expression "(int *)(iVar1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1038)" ( (binary_expression "iVar1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" * (cast_expression "(int *)(iVar1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x1034)" ( (binary_expression "iVar1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }" if (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" ( (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" * (cast_expression "(int *)(iVar1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar1 + 0x103c)" ( (binary_expression "iVar1 + 0x103c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }" { (expression_statement "iVar14 = *(int *)(iVar13 + 0x26c);" (assignment_expression "iVar14 = *(int *)(iVar13 + 0x26c)" identifier = (pointer_expression "*(int *)(iVar13 + 0x26c)" * (cast_expression "(int *)(iVar13 + 0x26c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar13 + 0x26c)" ( (binary_expression "iVar13 + 0x26c" identifier + number_literal) ))))) ;) (if_statement "if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }" if (parenthesized_expression "((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           )" ( (binary_expression "(iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)" (parenthesized_expression "(iVar14 != 0)" ( (binary_expression "iVar14 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)" ( (comma_expression "iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0" (assignment_expression "iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe23cc))" ( (pointer_expression "**(code **)(pcVar21 + 0xe23cc)" * (pointer_expression "*(code **)(pcVar21 + 0xe23cc)" * (cast_expression "(code **)(pcVar21 + 0xe23cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe23cc)" ( (binary_expression "pcVar21 + 0xe23cc" identifier + number_literal) ))))) )) (argument_list "(iVar14,iVar16)" ( identifier , identifier )))) , (binary_expression "iVar14 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);" (call_expression "(**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2614))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2614)" * (pointer_expression "*(code **)(pcVar21 + 0xe2614)" * (cast_expression "(code **)(pcVar21 + 0xe2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2614)" ( (binary_expression "pcVar21 + 0xe2614" identifier + number_literal) ))))) )) (argument_list "(iVar13 + 0x26c,iVar16)" ( (binary_expression "iVar13 + 0x26c" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16)" identifier (argument_list "(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16)" ( identifier , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2704)" * (pointer_expression "*(code **)(pcVar21 + 0xe2704)" * (cast_expression "(code **)(pcVar21 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2704)" ( (binary_expression "pcVar21 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar21 + 0xe2704)" * (pointer_expression "*(code **)(pcVar21 + 0xe2704)" * (cast_expression "(code **)(pcVar21 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0xe2704)" ( (binary_expression "pcVar21 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" * (cast_expression "(int *)(pcVar21 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0xe2020)" ( (binary_expression "pcVar21 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (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 (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 (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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (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 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 (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (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 (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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (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 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (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 = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT)) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (labeled_statement statement_identifier : (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) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT)) ))))) ;) (expression_statement (assignment_expression (subscript_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) ))))) ;) (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 (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) })) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (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 ( IDENT , IDENT , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 { (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 ( (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 = (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) ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (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 (assignment_expression IDENT = 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 ( LIT , (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 ))) ;) })) (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) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == 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 (subscript_expression IDENT [ LIT ]) + (binary_expression (subscript_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 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 IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (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 IDENT == LIT)) ))) )) (compound_statement { (return_statement return 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 IDENT + LIT) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (return_statement return LIT ;) })) (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 = (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) ;) (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 , IDENT , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (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 = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (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 + 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 ( LIT , (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 ))) ;) })) (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 { (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = 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 ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (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 IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (subscript_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 (subscript_expression IDENT [ LIT ]) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (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 = (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 (subscript_expression IDENT [ LIT ]) == 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 = (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) ))))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) - (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_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 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 { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (cast_expression ( (type_descriptor TYPE) ) (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 IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != 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 = (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) ))))) ;) (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 = (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 IDENT - IDENT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (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 = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (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 = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (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 ;)) (if_statement if (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) ^ LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (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 ;)) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (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 = (subscript_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 (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (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 = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return (pointer_expression * IDENT) ;) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = 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 (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 ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = 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 = (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) ;) (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) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (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 (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 ( LIT , (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 ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (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) ))))) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) ))) )) (compound_statement { (return_statement return 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) , (call_expression IDENT (argument_list ( IDENT , LIT ))) )))) ;) (return_statement return 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = 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 = (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) ;) (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) ))) ;) (expression_statement (assignment_expression IDENT = (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 *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 { (labeled_statement statement_identifier : (expression_statement (assignment_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 (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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (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 = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != 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 ( (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) ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_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) )))) ;) (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 ( LIT , (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 = IDENT) ;) (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 (assignment_expression IDENT = 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 ( 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 (subscript_expression IDENT [ LIT ]) + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT)) )))) + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (compound_statement { (return_statement return 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 ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (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 (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 ( LIT , (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 ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (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) ))))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) ))) )) (compound_statement { (return_statement return 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) , (call_expression IDENT (argument_list ( IDENT , LIT ))) )))) ;) (return_statement return 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (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 = (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) ;) (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 * IDENT) )) (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 = (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 * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) ;) }) (else_clause else (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 ( LIT , (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) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression 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 ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) , (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 , LIT , (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) , (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 (pointer_expression * IDENT) == (char_literal ' character ')) )) (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 ( IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (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 ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + IDENT) )))) , IDENT )))) ;) (if_statement if (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 = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (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) ))))) ;) (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (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)) ;) (goto_statement goto 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 ( IDENT , LIT , (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 *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (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 IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (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) ))))) ;) (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 * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (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)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT , LIT , IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return IDENT ;) })) (goto_statement goto statement_identifier ;) })) }) (else_clause else (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 ( (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 (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + 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 (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 = (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 ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (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 (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 ( LIT , (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) , (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) )))) + (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 (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) ))) )) (compound_statement { (return_statement return 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT )))) ;) (return_statement return 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 (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 = (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 (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 , IDENT , 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 != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (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 (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 ( LIT , (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) , (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (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) )))) + (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == 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 (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (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 )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (return_statement return 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 ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (return_statement return 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 , (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 ( (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 = (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + 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 * IDENT) )) (argument_list ( IDENT , IDENT , 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 == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (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 (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 ( LIT , (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) , (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (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) )))) + (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == 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 (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (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 )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (return_statement return 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 ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (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 (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 = (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (return_statement return IDENT ;) })))
(function_definition "int DrawSetClipUnits(int *param_1,undefined *param_2)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" (primitive_type "int") (function_declarator "DrawSetClipUnits(int *param_1,undefined *param_2)" (identifier "DrawSetClipUnits") (parameter_list "(int *param_1,undefined *param_2)" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined *param_2" (type_identifier "undefined") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  int *piVar3;\n  int *piVar4;\n  int *piVar5;\n  undefined *puVar6;\n  int *piVar7;\n  int *piVar8;\n  undefined *puVar9;\n  undefined8 *puVar10;\n  char *pcVar11;\n  uint uVar12;\n  int iVar13;\n  int iVar14;\n  undefined4 uVar15;\n  int *unaff_s0;\n  undefined *unaff_s1;\n  int iVar16;\n  undefined *puVar17;\n  undefined4 *puVar18;\n  undefined8 *unaff_s3;\n  code *pcVar19;\n  undefined *puVar20;\n  code *pcVar21;\n  code *pcVar22;\n  code *pcVar23;\n  double dVar24;\n  double dVar25;\n  float fVar26;\n  undefined8 uVar27;\n  undefined1 auStack_325c [4096];\n  undefined1 auStack_225c [4096];\n  int iStack_125c;\n  int *piStack_1254;\n  int *piStack_1250;\n  undefined4 *puStack_124c;\n  undefined8 *puStack_1248;\n  code *pcStack_1244;\n  int iStack_1230;\n  int *piStack_122c;\n  code *pcStack_1228;\n  int *piStack_1220;\n  code *pcStack_121c;\n  undefined8 uStack_1218;\n  undefined8 uStack_1200;\n  code *pcStack_11f0;\n  int aiStack_11e4 [1024];\n  int *piStack_1e4;\n  int *piStack_1e0;\n  int *piStack_1dc;\n  undefined *puStack_1d8;\n  code *pcStack_1d4;\n  double dStack_1d0;\n  int iStack_1b8;\n  int *piStack_1b4;\n  code *pcStack_1b0;\n  int *piStack_1a8;\n  code *pcStack_1a4;\n  int iStack_188;\n  undefined *puStack_184;\n  code *pcStack_180;\n  uint uStack_178;\n  undefined4 uStack_174;\n  int aiStack_170 [10];\n  double dStack_148;\n  double dStack_140;\n  double dStack_138;\n  double dStack_130;\n  uint uStack_128;\n  undefined4 uStack_124;\n  int aiStack_120 [2];\n  int aiStack_118 [23];\n  int iStack_bc;\n  int *piStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined8 *puStack_a8;\n  code *pcStack_a4;\n  int iStack_90;\n  undefined *puStack_8c;\n  undefined *puStack_88;\n  int *piStack_80;\n  undefined *puStack_7c;\n  undefined *puStack_78;\n  code *pcStack_74;\n  undefined *local_60;\n  int *local_5c;\n  undefined8 local_50 [3];\n  undefined8 local_38;\n  undefined8 local_30;\n  undefined8 local_28;\n  int local_1c;\n  \n  puVar17 = PTR___stack_chk_guard_0014f4cc;\n  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;\n  if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;\n  pcVar21 = DrawSetDensity;\n  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);\n  puVar6 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);\n  puVar20 = puVar6 + 0xeb02c;\n  puStack_78 = puVar17;\n  puStack_88 = puVar20;\n  piStack_80 = param_1;\n  puStack_7c = unaff_s1;\n  pcStack_74 = pcVar21;\n  if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }\n  pcVar19 = *(code **)(puVar20 + -0x78e0);\n  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);\n  pcVar22 = DrawSetFillColor;\n  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);\n  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);\n  pcVar21 = pcVar19 + 0xeae9c;\n  piVar5 = *(int **)(pcVar19 + 0xe3368);\n  puStack_ac = puVar17;\n  iStack_bc = *piVar5;\n  pcStack_180 = pcVar21;\n  piStack_b4 = param_1;\n  puStack_b0 = unaff_s1;\n  puStack_a8 = unaff_s3;\n  pcStack_a4 = pcVar22;\n  if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }\n  uVar2 = 0x12c1;\n  pcVar19 = *(code **)(pcVar21 + -0x78e0);\n  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;\n  pcVar22 = DrawSetFillOpacity;\n  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);\n  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);\n  pcStack_1b0 = pcVar19 + 0xea988;\n  dVar24 = (double)CONCAT44(uVar2,iVar1);\n  piStack_1e0 = param_1;\n  piStack_1a8 = param_1;\n  pcStack_1a4 = pcVar22;\n  if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }\n  uVar2 = 0x12f1;\n  pcVar22 = *(code **)(pcVar19 + 0xe30a8);\n  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;\n  pcVar23 = DrawSetFontResolution;\n  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);\n  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);\n  pcVar21 = pcVar22 + 0xea838;\n  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);\n  piStack_1e4 = (int *)*puVar18;\n  uVar27 = CONCAT44(uVar2,iVar1);\n  piVar7 = piStack_1e0;\n  pcStack_11f0 = pcVar21;\n  piStack_1dc = piVar5;\n  puStack_1d8 = puVar17;\n  pcStack_1d4 = pcVar23;\n  dStack_1d0 = dVar24;\n  if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }\n  pcVar21 = *(code **)(pcVar21 + -0x7c74);\n  pcVar19 = DrawSetOpacity;\n  (*pcVar21)();\n  pcStack_1228 = pcVar21 + 0xea6cc;\n  dVar24 = (double)CONCAT44(iVar16,iVar1);\n  piStack_1254 = piVar7;\n  piStack_1220 = piVar7;\n  pcStack_121c = pcVar19;\n  uStack_1218 = uVar27;\n  if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe2dec);\n  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);\n  pcVar22 = DrawSetFillPatternURL;\n  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;\n  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);\n  piVar7 = *(int **)(pcVar19 + 0xe2a4c);\n  iStack_125c = *piVar7;\n  piStack_1250 = piVar5;\n  puStack_124c = puVar18;\n  puStack_1248 = unaff_s3;\n  pcStack_1244 = pcVar22;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }\n  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);\n  (*pcVar21)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }\n  pcVar19 = *(code **)(pcVar21 + 0xe29c0);\n  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;\n  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }\n  pcVar21 = *(code **)(pcVar19 + 0xe287c);\n  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;\n  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "int *piVar3;" (primitive_type "int") (pointer_declarator "*piVar3" (* "*") (identifier "piVar3")) (; ";")) (declaration "int *piVar4;" (primitive_type "int") (pointer_declarator "*piVar4" (* "*") (identifier "piVar4")) (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "undefined *puVar6;" (type_identifier "undefined") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "int *piVar7;" (primitive_type "int") (pointer_declarator "*piVar7" (* "*") (identifier "piVar7")) (; ";")) (declaration "int *piVar8;" (primitive_type "int") (pointer_declarator "*piVar8" (* "*") (identifier "piVar8")) (; ";")) (declaration "undefined *puVar9;" (type_identifier "undefined") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "undefined8 *puVar10;" (type_identifier "undefined8") (pointer_declarator "*puVar10" (* "*") (identifier "puVar10")) (; ";")) (declaration "char *pcVar11;" (primitive_type "char") (pointer_declarator "*pcVar11" (* "*") (identifier "pcVar11")) (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "int iVar13;" (primitive_type "int") (identifier "iVar13") (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "undefined4 uVar15;" (type_identifier "undefined4") (identifier "uVar15") (; ";")) (declaration "int *unaff_s0;" (primitive_type "int") (pointer_declarator "*unaff_s0" (* "*") (identifier "unaff_s0")) (; ";")) (declaration "undefined *unaff_s1;" (type_identifier "undefined") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1")) (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "undefined *puVar17;" (type_identifier "undefined") (pointer_declarator "*puVar17" (* "*") (identifier "puVar17")) (; ";")) (declaration "undefined4 *puVar18;" (type_identifier "undefined4") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "undefined8 *unaff_s3;" (type_identifier "undefined8") (pointer_declarator "*unaff_s3" (* "*") (identifier "unaff_s3")) (; ";")) (declaration "code *pcVar19;" (type_identifier "code") (pointer_declarator "*pcVar19" (* "*") (identifier "pcVar19")) (; ";")) (declaration "undefined *puVar20;" (type_identifier "undefined") (pointer_declarator "*puVar20" (* "*") (identifier "puVar20")) (; ";")) (declaration "code *pcVar21;" (type_identifier "code") (pointer_declarator "*pcVar21" (* "*") (identifier "pcVar21")) (; ";")) (declaration "code *pcVar22;" (type_identifier "code") (pointer_declarator "*pcVar22" (* "*") (identifier "pcVar22")) (; ";")) (declaration "code *pcVar23;" (type_identifier "code") (pointer_declarator "*pcVar23" (* "*") (identifier "pcVar23")) (; ";")) (declaration "double dVar24;" (primitive_type "double") (identifier "dVar24") (; ";")) (declaration "double dVar25;" (primitive_type "double") (identifier "dVar25") (; ";")) (declaration "float fVar26;" (primitive_type "float") (identifier "fVar26") (; ";")) (declaration "undefined8 uVar27;" (type_identifier "undefined8") (identifier "uVar27") (; ";")) (declaration "undefined1 auStack_325c [4096];" (type_identifier "undefined1") (array_declarator "auStack_325c [4096]" (identifier "auStack_325c") ([ "[") (number_literal "4096") (] "]")) (; ";")) (declaration "undefined1 auStack_225c [4096];" (type_identifier "undefined1") (array_declarator "auStack_225c [4096]" (identifier "auStack_225c") ([ "[") (number_literal "4096") (] "]")) (; ";")) (declaration "int iStack_125c;" (primitive_type "int") (identifier "iStack_125c") (; ";")) (declaration "int *piStack_1254;" (primitive_type "int") (pointer_declarator "*piStack_1254" (* "*") (identifier "piStack_1254")) (; ";")) (declaration "int *piStack_1250;" (primitive_type "int") (pointer_declarator "*piStack_1250" (* "*") (identifier "piStack_1250")) (; ";")) (declaration "undefined4 *puStack_124c;" (type_identifier "undefined4") (pointer_declarator "*puStack_124c" (* "*") (identifier "puStack_124c")) (; ";")) (declaration "undefined8 *puStack_1248;" (type_identifier "undefined8") (pointer_declarator "*puStack_1248" (* "*") (identifier "puStack_1248")) (; ";")) (declaration "code *pcStack_1244;" (type_identifier "code") (pointer_declarator "*pcStack_1244" (* "*") (identifier "pcStack_1244")) (; ";")) (declaration "int iStack_1230;" (primitive_type "int") (identifier "iStack_1230") (; ";")) (declaration "int *piStack_122c;" (primitive_type "int") (pointer_declarator "*piStack_122c" (* "*") (identifier "piStack_122c")) (; ";")) (declaration "code *pcStack_1228;" (type_identifier "code") (pointer_declarator "*pcStack_1228" (* "*") (identifier "pcStack_1228")) (; ";")) (declaration "int *piStack_1220;" (primitive_type "int") (pointer_declarator "*piStack_1220" (* "*") (identifier "piStack_1220")) (; ";")) (declaration "code *pcStack_121c;" (type_identifier "code") (pointer_declarator "*pcStack_121c" (* "*") (identifier "pcStack_121c")) (; ";")) (declaration "undefined8 uStack_1218;" (type_identifier "undefined8") (identifier "uStack_1218") (; ";")) (declaration "undefined8 uStack_1200;" (type_identifier "undefined8") (identifier "uStack_1200") (; ";")) (declaration "code *pcStack_11f0;" (type_identifier "code") (pointer_declarator "*pcStack_11f0" (* "*") (identifier "pcStack_11f0")) (; ";")) (declaration "int aiStack_11e4 [1024];" (primitive_type "int") (array_declarator "aiStack_11e4 [1024]" (identifier "aiStack_11e4") ([ "[") (number_literal "1024") (] "]")) (; ";")) (declaration "int *piStack_1e4;" (primitive_type "int") (pointer_declarator "*piStack_1e4" (* "*") (identifier "piStack_1e4")) (; ";")) (declaration "int *piStack_1e0;" (primitive_type "int") (pointer_declarator "*piStack_1e0" (* "*") (identifier "piStack_1e0")) (; ";")) (declaration "int *piStack_1dc;" (primitive_type "int") (pointer_declarator "*piStack_1dc" (* "*") (identifier "piStack_1dc")) (; ";")) (declaration "undefined *puStack_1d8;" (type_identifier "undefined") (pointer_declarator "*puStack_1d8" (* "*") (identifier "puStack_1d8")) (; ";")) (declaration "code *pcStack_1d4;" (type_identifier "code") (pointer_declarator "*pcStack_1d4" (* "*") (identifier "pcStack_1d4")) (; ";")) (declaration "double dStack_1d0;" (primitive_type "double") (identifier "dStack_1d0") (; ";")) (declaration "int iStack_1b8;" (primitive_type "int") (identifier "iStack_1b8") (; ";")) (declaration "int *piStack_1b4;" (primitive_type "int") (pointer_declarator "*piStack_1b4" (* "*") (identifier "piStack_1b4")) (; ";")) (declaration "code *pcStack_1b0;" (type_identifier "code") (pointer_declarator "*pcStack_1b0" (* "*") (identifier "pcStack_1b0")) (; ";")) (declaration "int *piStack_1a8;" (primitive_type "int") (pointer_declarator "*piStack_1a8" (* "*") (identifier "piStack_1a8")) (; ";")) (declaration "code *pcStack_1a4;" (type_identifier "code") (pointer_declarator "*pcStack_1a4" (* "*") (identifier "pcStack_1a4")) (; ";")) (declaration "int iStack_188;" (primitive_type "int") (identifier "iStack_188") (; ";")) (declaration "undefined *puStack_184;" (type_identifier "undefined") (pointer_declarator "*puStack_184" (* "*") (identifier "puStack_184")) (; ";")) (declaration "code *pcStack_180;" (type_identifier "code") (pointer_declarator "*pcStack_180" (* "*") (identifier "pcStack_180")) (; ";")) (declaration "uint uStack_178;" (type_identifier "uint") (identifier "uStack_178") (; ";")) (declaration "undefined4 uStack_174;" (type_identifier "undefined4") (identifier "uStack_174") (; ";")) (declaration "int aiStack_170 [10];" (primitive_type "int") (array_declarator "aiStack_170 [10]" (identifier "aiStack_170") ([ "[") (number_literal "10") (] "]")) (; ";")) (declaration "double dStack_148;" (primitive_type "double") (identifier "dStack_148") (; ";")) (declaration "double dStack_140;" (primitive_type "double") (identifier "dStack_140") (; ";")) (declaration "double dStack_138;" (primitive_type "double") (identifier "dStack_138") (; ";")) (declaration "double dStack_130;" (primitive_type "double") (identifier "dStack_130") (; ";")) (declaration "uint uStack_128;" (type_identifier "uint") (identifier "uStack_128") (; ";")) (declaration "undefined4 uStack_124;" (type_identifier "undefined4") (identifier "uStack_124") (; ";")) (declaration "int aiStack_120 [2];" (primitive_type "int") (array_declarator "aiStack_120 [2]" (identifier "aiStack_120") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "int aiStack_118 [23];" (primitive_type "int") (array_declarator "aiStack_118 [23]" (identifier "aiStack_118") ([ "[") (number_literal "23") (] "]")) (; ";")) (declaration "int iStack_bc;" (primitive_type "int") (identifier "iStack_bc") (; ";")) (declaration "int *piStack_b4;" (primitive_type "int") (pointer_declarator "*piStack_b4" (* "*") (identifier "piStack_b4")) (; ";")) (declaration "undefined *puStack_b0;" (type_identifier "undefined") (pointer_declarator "*puStack_b0" (* "*") (identifier "puStack_b0")) (; ";")) (declaration "undefined *puStack_ac;" (type_identifier "undefined") (pointer_declarator "*puStack_ac" (* "*") (identifier "puStack_ac")) (; ";")) (declaration "undefined8 *puStack_a8;" (type_identifier "undefined8") (pointer_declarator "*puStack_a8" (* "*") (identifier "puStack_a8")) (; ";")) (declaration "code *pcStack_a4;" (type_identifier "code") (pointer_declarator "*pcStack_a4" (* "*") (identifier "pcStack_a4")) (; ";")) (declaration "int iStack_90;" (primitive_type "int") (identifier "iStack_90") (; ";")) (declaration "undefined *puStack_8c;" (type_identifier "undefined") (pointer_declarator "*puStack_8c" (* "*") (identifier "puStack_8c")) (; ";")) (declaration "undefined *puStack_88;" (type_identifier "undefined") (pointer_declarator "*puStack_88" (* "*") (identifier "puStack_88")) (; ";")) (declaration "int *piStack_80;" (primitive_type "int") (pointer_declarator "*piStack_80" (* "*") (identifier "piStack_80")) (; ";")) (declaration "undefined *puStack_7c;" (type_identifier "undefined") (pointer_declarator "*puStack_7c" (* "*") (identifier "puStack_7c")) (; ";")) (declaration "undefined *puStack_78;" (type_identifier "undefined") (pointer_declarator "*puStack_78" (* "*") (identifier "puStack_78")) (; ";")) (declaration "code *pcStack_74;" (type_identifier "code") (pointer_declarator "*pcStack_74" (* "*") (identifier "pcStack_74")) (; ";")) (declaration "undefined *local_60;" (type_identifier "undefined") (pointer_declarator "*local_60" (* "*") (identifier "local_60")) (; ";")) (declaration "int *local_5c;" (primitive_type "int") (pointer_declarator "*local_5c" (* "*") (identifier "local_5c")) (; ";")) (declaration "undefined8 local_50 [3];" (type_identifier "undefined8") (array_declarator "local_50 [3]" (identifier "local_50") ([ "[") (number_literal "3") (] "]")) (; ";")) (declaration "undefined8 local_38;" (type_identifier "undefined8") (identifier "local_38") (; ";")) (declaration "undefined8 local_30;" (type_identifier "undefined8") (identifier "local_30") (; ";")) (declaration "undefined8 local_28;" (type_identifier "undefined8") (identifier "local_28") (; ";")) (declaration "int local_1c;" (primitive_type "int") (identifier "local_1c") (; ";")) (expression_statement "puVar17 = PTR___stack_chk_guard_0014f4cc;" (assignment_expression "puVar17 = PTR___stack_chk_guard_0014f4cc" (identifier "puVar17") (= "=") (identifier "PTR___stack_chk_guard_0014f4cc")) (; ";")) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_0014f4cc" (identifier "local_1c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_0014f4cc" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_0014f4cc" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0014f4cc")))) (; ";")) (if_statement "if (param_1 == (int *)0x0) {\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }\n  else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" (if "if") (parenthesized_expression "(param_1 == (int *)0x0)" (( "(") (binary_expression "param_1 == (int *)0x0" (identifier "param_1") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);\n    param_1 = unaff_s0;\nLAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();\n  }" ({ "{") (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_0014f720" (* "*") (cast_expression "(code *)PTR___assert_fail_0014f720" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_0014f720"))) () ")")) (argument_list "(PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,\n               PTR_s_t_char____NULL_0014f03c + 0xa1c)" (( "(") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x954")) (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x125e") (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0xa1c")) () ")"))) (; ";")) (expression_statement "param_1 = unaff_s0;" (assignment_expression "param_1 = unaff_s0" (identifier "param_1") (= "=") (identifier "unaff_s0")) (; ";")) (labeled_statement "LAB_0006bfa4:\n    (*(code *)PTR___stack_chk_fail_0014f38c)();" (statement_identifier "LAB_0006bfa4") (: ":") (expression_statement "(*(code *)PTR___stack_chk_fail_0014f38c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0014f38c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0014f38c)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_0014f38c" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_0014f38c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_0014f38c"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";"))) (} "}")) (else_clause "else if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" (else "else") (if_statement "if (param_1[0x415] == -0x54535255) {\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" (if "if") (parenthesized_expression "(param_1[0x415] == -0x54535255)" (( "(") (binary_expression "param_1[0x415] == -0x54535255" (subscript_expression "param_1[0x415]" (identifier "param_1") ([ "[") (number_literal "0x415") (] "]")) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }\n    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n    if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }\n    unaff_s1 = param_2;\n    if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }\n    goto LAB_0006bfa4;\n  }" ({ "{") (if_statement "if (param_1[0x414] != 0) {\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" (if "if") (parenthesized_expression "(param_1[0x414] != 0)" (( "(") (binary_expression "param_1[0x414] != 0" (subscript_expression "param_1[0x414]" (identifier "param_1") ([ "[") (number_literal "0x414") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      local_5c = param_1 + 1;\n      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;\n      (*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);\n    }" ({ "{") (expression_statement "local_5c = param_1 + 1;" (assignment_expression "local_5c = param_1 + 1" (identifier "local_5c") (= "=") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;" (assignment_expression "local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" (identifier "local_60") (= "=") (binary_expression "PTR_s_the_image__define_format_option_d_0014f030 + -0x131c" (identifier "PTR_s_the_image__define_format_option_d_0014f030") (+ "+") (number_literal "-0x131c"))) (; ";")) (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" (parenthesized_expression "(*(code *)PTR_LogMagickEvent_0014f488)" (( "(") (pointer_expression "*(code *)PTR_LogMagickEvent_0014f488" (* "*") (cast_expression "(code *)PTR_LogMagickEvent_0014f488" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_LogMagickEvent_0014f488"))) () ")")) (argument_list "(0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa08" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0xa08")) (, ",") (number_literal "0x1261") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(param_1[0x40e] + param_1[0x40d] * 4)" (* "*") (cast_expression "(int *)(param_1[0x40e] + param_1[0x40d] * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[0x40e] + param_1[0x40d] * 4)" (( "(") (binary_expression "param_1[0x40e] + param_1[0x40d] * 4" (subscript_expression "param_1[0x40e]" (identifier "param_1") ([ "[") (number_literal "0x40e") (] "]")) (+ "+") (binary_expression "param_1[0x40d] * 4" (subscript_expression "param_1[0x40d]" (identifier "param_1") ([ "[") (number_literal "0x40d") (] "]")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if (param_1[0x40f] == 0) {\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }\n    else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" (if "if") (parenthesized_expression "(param_1[0x40f] == 0)" (( "(") (binary_expression "param_1[0x40f] == 0" (subscript_expression "param_1[0x40f]" (identifier "param_1") ([ "[") (number_literal "0x40f") (] "]")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }\n    }" ({ "{") (if_statement "if (*(undefined **)(iVar1 + 0x2c8) != param_2) {\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }" (if "if") (parenthesized_expression "(*(undefined **)(iVar1 + 0x2c8) != param_2)" (( "(") (binary_expression "*(undefined **)(iVar1 + 0x2c8) != param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" (* "*") (cast_expression "(undefined **)(iVar1 + 0x2c8)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x2c8)" (( "(") (binary_expression "iVar1 + 0x2c8" (identifier "iVar1") (+ "+") (number_literal "0x2c8")) () ")")))) (!= "!=") (identifier "param_2")) () ")")) (compound_statement "{\n        *(undefined **)(iVar1 + 0x2c8) = param_2;\n        goto joined_r0x0006bed8;\n      }" ({ "{") (expression_statement "*(undefined **)(iVar1 + 0x2c8) = param_2;" (assignment_expression "*(undefined **)(iVar1 + 0x2c8) = param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" (* "*") (cast_expression "(undefined **)(iVar1 + 0x2c8)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x2c8)" (( "(") (binary_expression "iVar1 + 0x2c8" (identifier "iVar1") (+ "+") (number_literal "0x2c8")) () ")")))) (= "=") (identifier "param_2")) (; ";")) (goto_statement "goto joined_r0x0006bed8;" (goto "goto") (statement_identifier "joined_r0x0006bed8") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" (else "else") (compound_statement "{\n      *(undefined **)(iVar1 + 0x2c8) = param_2;\njoined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }\n      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);\n      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);\n    }" ({ "{") (expression_statement "*(undefined **)(iVar1 + 0x2c8) = param_2;" (assignment_expression "*(undefined **)(iVar1 + 0x2c8) = param_2" (pointer_expression "*(undefined **)(iVar1 + 0x2c8)" (* "*") (cast_expression "(undefined **)(iVar1 + 0x2c8)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar1 + 0x2c8)" (( "(") (binary_expression "iVar1 + 0x2c8" (identifier "iVar1") (+ "+") (number_literal "0x2c8")) () ")")))) (= "=") (identifier "param_2")) (; ";")) (labeled_statement "joined_r0x0006bed8:\n      if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" (statement_identifier "joined_r0x0006bed8") (: ":") (if_statement "if (param_2 == (undefined *)0x3) {\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" (if "if") (parenthesized_expression "(param_2 == (undefined *)0x3)" (( "(") (binary_expression "param_2 == (undefined *)0x3" (identifier "param_2") (== "==") (cast_expression "(undefined *)0x3" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x3"))) () ")")) (compound_statement "{\n        unaff_s3 = local_50;\n        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);\n        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);\n        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);\n        local_38 = *(undefined8 *)(iVar1 + 0x2c0);\n        local_30 = *(undefined8 *)(iVar1 + 0x2a8);\n        local_28 = *(undefined8 *)(iVar1 + 0x2b0);\n        FUN_00062640(param_1,unaff_s3);\n      }" ({ "{") (expression_statement "unaff_s3 = local_50;" (assignment_expression "unaff_s3 = local_50" (identifier "unaff_s3") (= "=") (identifier "local_50")) (; ";")) (expression_statement "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);" (call_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3)" (parenthesized_expression "(*(code *)PTR_GetAffineMatrix_0014f1f8)" (( "(") (pointer_expression "*(code *)PTR_GetAffineMatrix_0014f1f8" (* "*") (cast_expression "(code *)PTR_GetAffineMatrix_0014f1f8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_GetAffineMatrix_0014f1f8"))) () ")")) (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(param_1[0x40e] + param_1[0x40d] * 4)" (* "*") (cast_expression "(int *)(param_1[0x40e] + param_1[0x40d] * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1[0x40e] + param_1[0x40d] * 4)" (( "(") (binary_expression "param_1[0x40e] + param_1[0x40d] * 4" (subscript_expression "param_1[0x40e]" (identifier "param_1") ([ "[") (number_literal "0x40e") (] "]")) (+ "+") (binary_expression "param_1[0x40d] * 4" (subscript_expression "param_1[0x40d]" (identifier "param_1") ([ "[") (number_literal "0x40d") (] "]")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);" (assignment_expression "local_50[0] = *(undefined8 *)(iVar1 + 0x2b8)" (subscript_expression "local_50[0]" (identifier "local_50") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined8 *)(iVar1 + 0x2b8)" (* "*") (cast_expression "(undefined8 *)(iVar1 + 0x2b8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x2b8)" (( "(") (binary_expression "iVar1 + 0x2b8" (identifier "iVar1") (+ "+") (number_literal "0x2b8")) () ")"))))) (; ";")) (expression_statement "local_38 = *(undefined8 *)(iVar1 + 0x2c0);" (assignment_expression "local_38 = *(undefined8 *)(iVar1 + 0x2c0)" (identifier "local_38") (= "=") (pointer_expression "*(undefined8 *)(iVar1 + 0x2c0)" (* "*") (cast_expression "(undefined8 *)(iVar1 + 0x2c0)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x2c0)" (( "(") (binary_expression "iVar1 + 0x2c0" (identifier "iVar1") (+ "+") (number_literal "0x2c0")) () ")"))))) (; ";")) (expression_statement "local_30 = *(undefined8 *)(iVar1 + 0x2a8);" (assignment_expression "local_30 = *(undefined8 *)(iVar1 + 0x2a8)" (identifier "local_30") (= "=") (pointer_expression "*(undefined8 *)(iVar1 + 0x2a8)" (* "*") (cast_expression "(undefined8 *)(iVar1 + 0x2a8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x2a8)" (( "(") (binary_expression "iVar1 + 0x2a8" (identifier "iVar1") (+ "+") (number_literal "0x2a8")) () ")"))))) (; ";")) (expression_statement "local_28 = *(undefined8 *)(iVar1 + 0x2b0);" (assignment_expression "local_28 = *(undefined8 *)(iVar1 + 0x2b0)" (identifier "local_28") (= "=") (pointer_expression "*(undefined8 *)(iVar1 + 0x2b0)" (* "*") (cast_expression "(undefined8 *)(iVar1 + 0x2b0)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x2b0)" (( "(") (binary_expression "iVar1 + 0x2b0" (identifier "iVar1") (+ "+") (number_literal "0x2b0")) () ")"))))) (; ";")) (expression_statement "FUN_00062640(param_1,unaff_s3);" (call_expression "FUN_00062640(param_1,unaff_s3)" (identifier "FUN_00062640") (argument_list "(param_1,unaff_s3)" (( "(") (identifier "param_1") (, ",") (identifier "unaff_s3") () ")"))) (; ";")) (} "}")))) (expression_statement "uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);" (assignment_expression "uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2)" (identifier "uVar2") (= "=") (call_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2)" (parenthesized_expression "(*(code *)PTR_CommandOptionToMnemonic_0014f168)" (( "(") (pointer_expression "*(code *)PTR_CommandOptionToMnemonic_0014f168" (* "*") (cast_expression "(code *)PTR_CommandOptionToMnemonic_0014f168" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_CommandOptionToMnemonic_0014f168"))) () ")")) (argument_list "(6,param_2)" (( "(") (number_literal "6") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);" (call_expression "FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2)" (identifier "FUN_00062838") (argument_list "(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x148" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x148")) (, ",") (identifier "uVar2") () ")"))) (; ";")) (} "}")))) (expression_statement "unaff_s1 = param_2;" (assignment_expression "unaff_s1 = param_2" (identifier "unaff_s1") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (local_1c == *(int *)puVar17) {\n      return *(int *)puVar17;\n    }" (if "if") (parenthesized_expression "(local_1c == *(int *)puVar17)" (( "(") (binary_expression "local_1c == *(int *)puVar17" (identifier "local_1c") (== "==") (pointer_expression "*(int *)puVar17" (* "*") (cast_expression "(int *)puVar17" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar17")))) () ")")) (compound_statement "{\n      return *(int *)puVar17;\n    }" ({ "{") (return_statement "return *(int *)puVar17;" (return "return") (pointer_expression "*(int *)puVar17" (* "*") (cast_expression "(int *)puVar17" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar17"))) (; ";")) (} "}"))) (goto_statement "goto LAB_0006bfa4;" (goto "goto") (statement_identifier "LAB_0006bfa4") (; ";")) (} "}"))))) (expression_statement "puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;" (assignment_expression "puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970" (identifier "puVar9") (= "=") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "pcVar21 = DrawSetDensity;" (assignment_expression "pcVar21 = DrawSetDensity" (identifier "pcVar21") (= "=") (identifier "DrawSetDensity")) (; ";")) (expression_statement "piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);" (assignment_expression "piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" (identifier "piVar5") (= "=") (cast_expression "(int *)(PTR_s_t_char____NULL_0014f03c + 0x419c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_t_char____NULL_0014f03c + 0x419c)" (( "(") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0x419c")) () ")")))) (; ";")) (expression_statement "puVar6 = PTR___assert_fail_0014f720;" (assignment_expression "puVar6 = PTR___assert_fail_0014f720" (identifier "puVar6") (= "=") (identifier "PTR___assert_fail_0014f720")) (; ";")) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" (parenthesized_expression "(*(code *)PTR___assert_fail_0014f720)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_0014f720" (* "*") (cast_expression "(code *)PTR___assert_fail_0014f720" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_0014f720"))) () ")")) (argument_list "(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c)" (( "(") (identifier "piVar5") (, ",") (identifier "puVar9") (, ",") (number_literal "0x125f") (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0xa1c" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0xa1c")) () ")"))) (; ";")) (expression_statement "puVar20 = puVar6 + 0xeb02c;" (assignment_expression "puVar20 = puVar6 + 0xeb02c" (identifier "puVar20") (= "=") (binary_expression "puVar6 + 0xeb02c" (identifier "puVar6") (+ "+") (number_literal "0xeb02c"))) (; ";")) (expression_statement "puStack_78 = puVar17;" (assignment_expression "puStack_78 = puVar17" (identifier "puStack_78") (= "=") (identifier "puVar17")) (; ";")) (expression_statement "puStack_88 = puVar20;" (assignment_expression "puStack_88 = puVar20" (identifier "puStack_88") (= "=") (identifier "puVar20")) (; ";")) (expression_statement "piStack_80 = param_1;" (assignment_expression "piStack_80 = param_1" (identifier "piStack_80") (= "=") (identifier "param_1")) (; ";")) (expression_statement "puStack_7c = unaff_s1;" (assignment_expression "puStack_7c = unaff_s1" (identifier "puStack_7c") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "pcStack_74 = pcVar21;" (assignment_expression "pcStack_74 = pcVar21" (identifier "pcStack_74") (= "=") (identifier "pcVar21")) (; ";")) (if_statement "if (piVar5 == (int *)0x0) {\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }\n  else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" (if "if") (parenthesized_expression "(piVar5 == (int *)0x0)" (( "(") (binary_expression "piVar5 == (int *)0x0" (identifier "piVar5") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;\n    (**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;\nLAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;\n    (**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);\n  }" ({ "{") (expression_statement "iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;" (assignment_expression "iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8" (identifier "iVar1") (= "=") (binary_expression "*(int *)(puVar6 + 0xe3068) + 0x9f8" (pointer_expression "*(int *)(puVar6 + 0xe3068)" (* "*") (cast_expression "(int *)(puVar6 + 0xe3068)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0xe3068)" (( "(") (binary_expression "puVar6 + 0xe3068" (identifier "puVar6") (+ "+") (number_literal "0xe3068")) () ")")))) (+ "+") (number_literal "0x9f8"))) (; ";")) (expression_statement "(**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)\n    ;" (call_expression "(**(code **)(puVar6 + 0xe374c))\n              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)" (parenthesized_expression "(**(code **)(puVar6 + 0xe374c))" (( "(") (pointer_expression "**(code **)(puVar6 + 0xe374c)" (* "*") (pointer_expression "*(code **)(puVar6 + 0xe374c)" (* "*") (cast_expression "(code **)(puVar6 + 0xe374c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar6 + 0xe374c)" (( "(") (binary_expression "puVar6 + 0xe374c" (identifier "puVar6") (+ "+") (number_literal "0xe374c")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)" (( "(") (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x954" (pointer_expression "*(int *)(puVar6 + 0xe3068)" (* "*") (cast_expression "(int *)(puVar6 + 0xe3068)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0xe3068)" (( "(") (binary_expression "puVar6 + 0xe3068" (identifier "puVar6") (+ "+") (number_literal "0xe3068")) () ")")))) (+ "+") (number_literal "-0x954")) (, ",") (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar6 + 0xe3068)" (* "*") (cast_expression "(int *)(puVar6 + 0xe3068)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0xe3068)" (( "(") (binary_expression "puVar6 + 0xe3068" (identifier "puVar6") (+ "+") (number_literal "0xe3068")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1293") (, ",") (identifier "iVar1") () ")"))) (; ";")) (labeled_statement "LAB_0006c128:\n    iVar1 = iVar1 + 0x9f8;" (statement_identifier "LAB_0006c128") (: ":") (expression_statement "iVar1 = iVar1 + 0x9f8;" (assignment_expression "iVar1 = iVar1 + 0x9f8" (identifier "iVar1") (= "=") (binary_expression "iVar1 + 0x9f8" (identifier "iVar1") (+ "+") (number_literal "0x9f8"))) (; ";"))) (expression_statement "(**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);" (call_expression "(**(code **)(puVar20 + -0x78e0))\n              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970)" (parenthesized_expression "(**(code **)(puVar20 + -0x78e0))" (( "(") (pointer_expression "**(code **)(puVar20 + -0x78e0)" (* "*") (pointer_expression "*(code **)(puVar20 + -0x78e0)" (* "*") (cast_expression "(code **)(puVar20 + -0x78e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + -0x78e0)" (( "(") (binary_expression "puVar20 + -0x78e0" (identifier "puVar20") (+ "+") (number_literal "-0x78e0")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970)" (( "(") (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x134" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar20 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + -0x7fc4)" (( "(") (binary_expression "puVar20 + -0x7fc4" (identifier "puVar20") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x134")) (, ",") (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar20 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + -0x7fc4)" (( "(") (binary_expression "puVar20 + -0x7fc4" (identifier "puVar20") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x970")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" (else "else") (compound_statement "{\n    if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }\n    iVar1 = *(int *)(puStack_88 + -0x7fc4);\n    param_1 = piVar5;\n    unaff_s1 = puVar9;\n    puVar20 = puStack_88;\n    if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }\n  }" ({ "{") (if_statement "if (piVar5[0x414] != 0) {\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" (if "if") (parenthesized_expression "(piVar5[0x414] != 0)" (( "(") (binary_expression "piVar5[0x414] != 0" (subscript_expression "piVar5[0x414]" (identifier "piVar5") ([ "[") (number_literal "0x414") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;\n      puStack_8c = puVar9;\n      (**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);\n    }" ({ "{") (expression_statement "iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;" (assignment_expression "iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c" (identifier "iStack_90") (= "=") (binary_expression "*(int *)(puVar6 + 0xe305c) + -0x131c" (pointer_expression "*(int *)(puVar6 + 0xe305c)" (* "*") (cast_expression "(int *)(puVar6 + 0xe305c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0xe305c)" (( "(") (binary_expression "puVar6 + 0xe305c" (identifier "puVar6") (+ "+") (number_literal "0xe305c")) () ")")))) (+ "+") (number_literal "-0x131c"))) (; ";")) (expression_statement "puStack_8c = puVar9;" (assignment_expression "puStack_8c = puVar9" (identifier "puStack_8c") (= "=") (identifier "puVar9")) (; ";")) (expression_statement "(**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295);" (call_expression "(**(code **)(puVar6 + 0xe34b4))\n                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295)" (parenthesized_expression "(**(code **)(puVar6 + 0xe34b4))" (( "(") (pointer_expression "**(code **)(puVar6 + 0xe34b4)" (* "*") (pointer_expression "*(code **)(puVar6 + 0xe34b4)" (* "*") (cast_expression "(code **)(puVar6 + 0xe34b4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar6 + 0xe34b4)" (( "(") (binary_expression "puVar6 + 0xe34b4" (identifier "puVar6") (+ "+") (number_literal "0xe34b4")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,\n                 0x1295)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(puVar6 + 0xe3068) + -0x970" (pointer_expression "*(int *)(puVar6 + 0xe3068)" (* "*") (cast_expression "(int *)(puVar6 + 0xe3068)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0xe3068)" (( "(") (binary_expression "puVar6 + 0xe3068" (identifier "puVar6") (+ "+") (number_literal "0xe3068")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(puVar6 + 0xe3068) + 0x9e8" (pointer_expression "*(int *)(puVar6 + 0xe3068)" (* "*") (cast_expression "(int *)(puVar6 + 0xe3068)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0xe3068)" (( "(") (binary_expression "puVar6 + 0xe3068" (identifier "puVar6") (+ "+") (number_literal "0xe3068")) () ")")))) (+ "+") (number_literal "0x9e8")) (, ",") (number_literal "0x1295") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(puStack_88 + -0x7fc4);" (assignment_expression "iVar1 = *(int *)(puStack_88 + -0x7fc4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" (* "*") (cast_expression "(int *)(puStack_88 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_88 + -0x7fc4)" (( "(") (binary_expression "puStack_88 + -0x7fc4" (identifier "puStack_88") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "param_1 = piVar5;" (assignment_expression "param_1 = piVar5" (identifier "param_1") (= "=") (identifier "piVar5")) (; ";")) (expression_statement "unaff_s1 = puVar9;" (assignment_expression "unaff_s1 = puVar9" (identifier "unaff_s1") (= "=") (identifier "puVar9")) (; ";")) (expression_statement "puVar20 = puStack_88;" (assignment_expression "puVar20 = puStack_88" (identifier "puVar20") (= "=") (identifier "puStack_88")) (; ";")) (if_statement "if (piVar5[0x415] == -0x54535255) {\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }" (if "if") (parenthesized_expression "(piVar5[0x415] == -0x54535255)" (( "(") (binary_expression "piVar5[0x415] == -0x54535255" (subscript_expression "piVar5[0x415]" (identifier "piVar5") ([ "[") (number_literal "0x415") (] "]")) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }\n      goto LAB_0006c128;\n    }" ({ "{") (if_statement "if (puVar9 != (undefined *)0x0) {\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }" (if "if") (parenthesized_expression "(puVar9 != (undefined *)0x0)" (( "(") (binary_expression "puVar9 != (undefined *)0x0" (identifier "puVar9") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);\n        iVar1 = *(int *)(iVar16 + 0x290);\n        pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }\n        (*pcVar21)(iVar16 + 0x290,puVar9);\n        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);\n        return 1;\n      }" ({ "{") (expression_statement "iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);" (assignment_expression "iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" (* "*") (cast_expression "(int *)(piVar5[0x40e] + piVar5[0x40d] * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar5[0x40e] + piVar5[0x40d] * 4)" (( "(") (binary_expression "piVar5[0x40e] + piVar5[0x40d] * 4" (subscript_expression "piVar5[0x40e]" (identifier "piVar5") ([ "[") (number_literal "0x40e") (] "]")) (+ "+") (binary_expression "piVar5[0x40d] * 4" (subscript_expression "piVar5[0x40d]" (identifier "piVar5") ([ "[") (number_literal "0x40d") (] "]")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(iVar16 + 0x290);" (assignment_expression "iVar1 = *(int *)(iVar16 + 0x290)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(iVar16 + 0x290)" (* "*") (cast_expression "(int *)(iVar16 + 0x290)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x290)" (( "(") (binary_expression "iVar16 + 0x290" (identifier "iVar16") (+ "+") (number_literal "0x290")) () ")"))))) (; ";")) (expression_statement "pcVar21 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar21 = *(code **)(puStack_88 + -0x79d0)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(puStack_88 + -0x79d0)" (* "*") (cast_expression "(code **)(puStack_88 + -0x79d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_88 + -0x79d0)" (( "(") (binary_expression "puStack_88 + -0x79d0" (identifier "puStack_88") (+ "+") (number_literal "-0x79d0")) () ")"))))) (; ";")) (if_statement "if (iVar1 != 0) {\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }\n          pcVar21 = *(code **)(puStack_88 + -0x79d0);\n        }" ({ "{") (if_statement "if ((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {\n            return 1;\n          }" (if "if") (parenthesized_expression "((piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0))" (( "(") (binary_expression "(piVar5[0x40f] == 0) &&\n             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)" (parenthesized_expression "(piVar5[0x40f] == 0)" (( "(") (binary_expression "piVar5[0x40f] == 0" (subscript_expression "piVar5[0x40f]" (identifier "piVar5") ([ "[") (number_literal "0x40f") (] "]")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)" (( "(") (comma_expression "iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0" (assignment_expression "iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297)" (parenthesized_expression "(**(code **)(puStack_88 + -0x7c18))" (( "(") (pointer_expression "**(code **)(puStack_88 + -0x7c18)" (* "*") (pointer_expression "*(code **)(puStack_88 + -0x7c18)" (* "*") (cast_expression "(code **)(puStack_88 + -0x7c18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_88 + -0x7c18)" (( "(") (binary_expression "puStack_88 + -0x7c18" (identifier "puStack_88") (+ "+") (number_literal "-0x7c18")) () ")"))))) () ")")) (argument_list "(iVar1,puVar9,0x1297)" (( "(") (identifier "iVar1") (, ",") (identifier "puVar9") (, ",") (number_literal "0x1297") () ")")))) (, ",") (binary_expression "iVar1 == 0" (identifier "iVar1") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            return 1;\n          }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar21 = *(code **)(puStack_88 + -0x79d0);" (assignment_expression "pcVar21 = *(code **)(puStack_88 + -0x79d0)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(puStack_88 + -0x79d0)" (* "*") (cast_expression "(code **)(puStack_88 + -0x79d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_88 + -0x79d0)" (( "(") (binary_expression "puStack_88 + -0x79d0" (identifier "puStack_88") (+ "+") (number_literal "-0x79d0")) () ")"))))) (; ";")) (} "}"))) (expression_statement "(*pcVar21)(iVar16 + 0x290,puVar9);" (call_expression "(*pcVar21)(iVar16 + 0x290,puVar9)" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "(iVar16 + 0x290,puVar9)" (( "(") (binary_expression "iVar16 + 0x290" (identifier "iVar16") (+ "+") (number_literal "0x290")) (, ",") (identifier "puVar9") () ")"))) (; ";")) (expression_statement "FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);" (call_expression "FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9)" (identifier "FUN_00062838") (argument_list "(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9)" (( "(") (identifier "piVar5") (, ",") (binary_expression "*(int *)(puStack_88 + -0x7fc4) + -0x114" (pointer_expression "*(int *)(puStack_88 + -0x7fc4)" (* "*") (cast_expression "(int *)(puStack_88 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_88 + -0x7fc4)" (( "(") (binary_expression "puStack_88 + -0x7fc4" (identifier "puStack_88") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x114")) (, ",") (identifier "puVar9") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (goto_statement "goto LAB_0006c128;" (goto "goto") (statement_identifier "LAB_0006c128") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar19 = *(code **)(puVar20 + -0x78e0);" (assignment_expression "pcVar19 = *(code **)(puVar20 + -0x78e0)" (identifier "pcVar19") (= "=") (pointer_expression "*(code **)(puVar20 + -0x78e0)" (* "*") (cast_expression "(code **)(puVar20 + -0x78e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar20 + -0x78e0)" (( "(") (binary_expression "puVar20 + -0x78e0" (identifier "puVar20") (+ "+") (number_literal "-0x78e0")) () ")"))))) (; ";")) (expression_statement "puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);" (assignment_expression "puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970)" (identifier "puVar10") (= "=") (cast_expression "(undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar20 + -0x7fc4) + -0x970)" (( "(") (binary_expression "*(int *)(puVar20 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar20 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + -0x7fc4)" (( "(") (binary_expression "puVar20 + -0x7fc4" (identifier "puVar20") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x970")) () ")")))) (; ";")) (expression_statement "pcVar22 = DrawSetFillColor;" (assignment_expression "pcVar22 = DrawSetFillColor" (identifier "pcVar22") (= "=") (identifier "DrawSetFillColor")) (; ";")) (expression_statement "puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);" (assignment_expression "puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c)" (identifier "puVar6") (= "=") (cast_expression "(undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar20 + -0x7fc4) + 0x419c)" (( "(") (binary_expression "*(int *)(puVar20 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(puVar20 + -0x7fc4)" (* "*") (cast_expression "(int *)(puVar20 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar20 + -0x7fc4)" (( "(") (binary_expression "puVar20 + -0x7fc4" (identifier "puVar20") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x419c")) () ")")))) (; ";")) (expression_statement "(*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);" (call_expression "(*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8)" (parenthesized_expression "(*pcVar19)" (( "(") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) () ")")) (argument_list "(puVar6,puVar10,0x1296,iVar1 + 0x9f8)" (( "(") (identifier "puVar6") (, ",") (identifier "puVar10") (, ",") (number_literal "0x1296") (, ",") (binary_expression "iVar1 + 0x9f8" (identifier "iVar1") (+ "+") (number_literal "0x9f8")) () ")"))) (; ";")) (expression_statement "pcVar21 = pcVar19 + 0xeae9c;" (assignment_expression "pcVar21 = pcVar19 + 0xeae9c" (identifier "pcVar21") (= "=") (binary_expression "pcVar19 + 0xeae9c" (identifier "pcVar19") (+ "+") (number_literal "0xeae9c"))) (; ";")) (expression_statement "piVar5 = *(int **)(pcVar19 + 0xe3368);" (assignment_expression "piVar5 = *(int **)(pcVar19 + 0xe3368)" (identifier "piVar5") (= "=") (pointer_expression "*(int **)(pcVar19 + 0xe3368)" (* "*") (cast_expression "(int **)(pcVar19 + 0xe3368)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe3368)" (( "(") (binary_expression "pcVar19 + 0xe3368" (identifier "pcVar19") (+ "+") (number_literal "0xe3368")) () ")"))))) (; ";")) (expression_statement "puStack_ac = puVar17;" (assignment_expression "puStack_ac = puVar17" (identifier "puStack_ac") (= "=") (identifier "puVar17")) (; ";")) (expression_statement "iStack_bc = *piVar5;" (assignment_expression "iStack_bc = *piVar5" (identifier "iStack_bc") (= "=") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))) (; ";")) (expression_statement "pcStack_180 = pcVar21;" (assignment_expression "pcStack_180 = pcVar21" (identifier "pcStack_180") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "piStack_b4 = param_1;" (assignment_expression "piStack_b4 = param_1" (identifier "piStack_b4") (= "=") (identifier "param_1")) (; ";")) (expression_statement "puStack_b0 = unaff_s1;" (assignment_expression "puStack_b0 = unaff_s1" (identifier "puStack_b0") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "puStack_a8 = unaff_s3;" (assignment_expression "puStack_a8 = unaff_s3" (identifier "puStack_a8") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" (identifier "pcStack_a4") (= "=") (identifier "pcVar22")) (; ";")) (if_statement "if (puVar6 != (undefined *)0x0) {\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }" (if "if") (parenthesized_expression "(puVar6 != (undefined *)0x0)" (( "(") (binary_expression "puVar6 != (undefined *)0x0" (identifier "puVar6") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }\n    (**(code **)(pcVar21 + -0x7c74))();\n    puVar17 = puVar6;\n    unaff_s3 = puVar10;\n  }" ({ "{") (if_statement "if (*(int *)(puVar6 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }\n    else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" (if "if") (parenthesized_expression "(*(int *)(puVar6 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(puVar6 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(puVar6 + 0x1054)" (* "*") (cast_expression "(int *)(puVar6 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0x1054)" (( "(") (binary_expression "puVar6 + 0x1054" (identifier "puVar6") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }\n      pcVar21 = pcStack_180;\n      if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }\n      param_1 = aiStack_170;\n      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);\n      piVar7 = param_1;\n      piVar8 = aiStack_118;\n      do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);\n      iVar16 = *(int *)(puVar6 + 0x1034);\n      iVar1 = *(int *)(puVar6 + 0x1038);\n      iVar14 = piVar3[5];\n      iVar13 = *(int *)(puVar6 + 0x103c);\n      piVar4[4] = *piVar7;\n      piVar4[5] = iVar14;\n      iVar1 = *(int *)(iVar1 + iVar16 * 4);\n      if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }\nLAB_0006c360:\n      pcVar21 = pcStack_180;\n      if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }\n    }" ({ "{") (if_statement "if (*(int *)(puVar6 + 0x1050) != 0) {\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" (if "if") (parenthesized_expression "(*(int *)(puVar6 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(puVar6 + 0x1050) != 0" (pointer_expression "*(int *)(puVar6 + 0x1050)" (* "*") (cast_expression "(int *)(puVar6 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0x1050)" (( "(") (binary_expression "puVar6 + 0x1050" (identifier "puVar6") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        puStack_184 = puVar6 + 4;\n        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;\n        (**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);\n      }" ({ "{") (expression_statement "puStack_184 = puVar6 + 4;" (assignment_expression "puStack_184 = puVar6 + 4" (identifier "puStack_184") (= "=") (binary_expression "puVar6 + 4" (identifier "puVar6") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;" (assignment_expression "iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c" (identifier "iStack_188") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe2ecc) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe2ecc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2ecc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2ecc)" (( "(") (binary_expression "pcVar19 + 0xe2ecc" (identifier "pcVar19") (+ "+") (number_literal "0xe2ecc")) () ")")))) (+ "+") (number_literal "-0x131c"))) (; ";")) (expression_statement "(**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4);" (call_expression "(**(code **)(pcVar19 + 0xe3324))\n                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe3324))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe3324)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe3324)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe3324)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe3324)" (( "(") (binary_expression "pcVar19 + 0xe3324" (identifier "pcVar19") (+ "+") (number_literal "0xe3324")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,\n                   0x12c4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2ed8) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2ed8)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2ed8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2ed8)" (( "(") (binary_expression "pcVar19 + 0xe2ed8" (identifier "pcVar19") (+ "+") (number_literal "0xe2ed8")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2ed8) + 0x9c0" (pointer_expression "*(int *)(pcVar19 + 0xe2ed8)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2ed8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2ed8)" (( "(") (binary_expression "pcVar19 + 0xe2ed8" (identifier "pcVar19") (+ "+") (number_literal "0xe2ed8")) () ")")))) (+ "+") (number_literal "0x9c0")) (, ",") (number_literal "0x12c4") () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar21 = pcStack_180;" (assignment_expression "pcVar21 = pcStack_180" (identifier "pcVar21") (= "=") (identifier "pcStack_180")) (; ";")) (if_statement "if (puVar10 == (undefined8 *)0x0) {\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }" (if "if") (parenthesized_expression "(puVar10 == (undefined8 *)0x0)" (( "(") (binary_expression "puVar10 == (undefined8 *)0x0" (identifier "puVar10") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);\n        unaff_s3 = puVar10;\n        goto LAB_0006c624;\n      }" ({ "{") (expression_statement "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcStack_180 + -0x78e0))\n                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x78e0))" (( "(") (pointer_expression "**(code **)(pcStack_180 + -0x78e0)" (* "*") (pointer_expression "*(code **)(pcStack_180 + -0x78e0)" (* "*") (cast_expression "(code **)(pcStack_180 + -0x78e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_180 + -0x78e0)" (( "(") (binary_expression "pcStack_180 + -0x78e0" (identifier "pcStack_180") (+ "+") (number_literal "-0x78e0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970\n                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4)" (( "(") (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x104" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x104")) (, ",") (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x12c5") (, ",") (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x9d4")) () ")"))) (; ";")) (expression_statement "unaff_s3 = puVar10;" (assignment_expression "unaff_s3 = puVar10" (identifier "unaff_s3") (= "=") (identifier "puVar10")) (; ";")) (goto_statement "goto LAB_0006c624;" (goto "goto") (statement_identifier "LAB_0006c624") (; ";")) (} "}"))) (expression_statement "param_1 = aiStack_170;" (assignment_expression "param_1 = aiStack_170" (identifier "param_1") (= "=") (identifier "aiStack_170")) (; ";")) (expression_statement "(**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);" (call_expression "(**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1)" (parenthesized_expression "(**(code **)(pcStack_180 + -0x77a0))" (( "(") (pointer_expression "**(code **)(pcStack_180 + -0x77a0)" (* "*") (pointer_expression "*(code **)(pcStack_180 + -0x77a0)" (* "*") (cast_expression "(code **)(pcStack_180 + -0x77a0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_180 + -0x77a0)" (( "(") (binary_expression "pcStack_180 + -0x77a0" (identifier "pcStack_180") (+ "+") (number_literal "-0x77a0")) () ")"))))) () ")")) (argument_list "(puVar10,param_1)" (( "(") (identifier "puVar10") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "piVar7 = param_1;" (assignment_expression "piVar7 = param_1" (identifier "piVar7") (= "=") (identifier "param_1")) (; ";")) (expression_statement "piVar8 = aiStack_118;" (assignment_expression "piVar8 = aiStack_118" (identifier "piVar8") (= "=") (identifier "aiStack_118")) (; ";")) (do_statement "do {\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      } while (piVar7 != aiStack_120);" (do "do") (compound_statement "{\n        piVar4 = piVar8;\n        piVar3 = piVar7;\n        piVar7 = piVar3 + 4;\n        iVar13 = piVar3[1];\n        iVar16 = piVar3[2];\n        iVar1 = piVar3[3];\n        *piVar4 = *piVar3;\n        piVar4[1] = iVar13;\n        piVar4[2] = iVar16;\n        piVar4[3] = iVar1;\n        piVar8 = piVar4 + 4;\n      }" ({ "{") (expression_statement "piVar4 = piVar8;" (assignment_expression "piVar4 = piVar8" (identifier "piVar4") (= "=") (identifier "piVar8")) (; ";")) (expression_statement "piVar3 = piVar7;" (assignment_expression "piVar3 = piVar7" (identifier "piVar3") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "piVar7 = piVar3 + 4;" (assignment_expression "piVar7 = piVar3 + 4" (identifier "piVar7") (= "=") (binary_expression "piVar3 + 4" (identifier "piVar3") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "iVar13 = piVar3[1];" (assignment_expression "iVar13 = piVar3[1]" (identifier "iVar13") (= "=") (subscript_expression "piVar3[1]" (identifier "piVar3") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "iVar16 = piVar3[2];" (assignment_expression "iVar16 = piVar3[2]" (identifier "iVar16") (= "=") (subscript_expression "piVar3[2]" (identifier "piVar3") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar1 = piVar3[3];" (assignment_expression "iVar1 = piVar3[3]" (identifier "iVar1") (= "=") (subscript_expression "piVar3[3]" (identifier "piVar3") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "*piVar4 = *piVar3;" (assignment_expression "*piVar4 = *piVar3" (pointer_expression "*piVar4" (* "*") (identifier "piVar4")) (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (expression_statement "piVar4[1] = iVar13;" (assignment_expression "piVar4[1] = iVar13" (subscript_expression "piVar4[1]" (identifier "piVar4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "iVar13")) (; ";")) (expression_statement "piVar4[2] = iVar16;" (assignment_expression "piVar4[2] = iVar16" (subscript_expression "piVar4[2]" (identifier "piVar4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "iVar16")) (; ";")) (expression_statement "piVar4[3] = iVar1;" (assignment_expression "piVar4[3] = iVar1" (subscript_expression "piVar4[3]" (identifier "piVar4") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "iVar1")) (; ";")) (expression_statement "piVar8 = piVar4 + 4;" (assignment_expression "piVar8 = piVar4 + 4" (identifier "piVar8") (= "=") (binary_expression "piVar4 + 4" (identifier "piVar4") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar7 != aiStack_120)" (( "(") (binary_expression "piVar7 != aiStack_120" (identifier "piVar7") (!= "!=") (identifier "aiStack_120")) () ")")) (; ";")) (expression_statement "iVar16 = *(int *)(puVar6 + 0x1034);" (assignment_expression "iVar16 = *(int *)(puVar6 + 0x1034)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(puVar6 + 0x1034)" (* "*") (cast_expression "(int *)(puVar6 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0x1034)" (( "(") (binary_expression "puVar6 + 0x1034" (identifier "puVar6") (+ "+") (number_literal "0x1034")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(puVar6 + 0x1038);" (assignment_expression "iVar1 = *(int *)(puVar6 + 0x1038)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(puVar6 + 0x1038)" (* "*") (cast_expression "(int *)(puVar6 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0x1038)" (( "(") (binary_expression "puVar6 + 0x1038" (identifier "puVar6") (+ "+") (number_literal "0x1038")) () ")"))))) (; ";")) (expression_statement "iVar14 = piVar3[5];" (assignment_expression "iVar14 = piVar3[5]" (identifier "iVar14") (= "=") (subscript_expression "piVar3[5]" (identifier "piVar3") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "iVar13 = *(int *)(puVar6 + 0x103c);" (assignment_expression "iVar13 = *(int *)(puVar6 + 0x103c)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(puVar6 + 0x103c)" (* "*") (cast_expression "(int *)(puVar6 + 0x103c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 0x103c)" (( "(") (binary_expression "puVar6 + 0x103c" (identifier "puVar6") (+ "+") (number_literal "0x103c")) () ")"))))) (; ";")) (expression_statement "piVar4[4] = *piVar7;" (assignment_expression "piVar4[4] = *piVar7" (subscript_expression "piVar4[4]" (identifier "piVar4") ([ "[") (number_literal "4") (] "]")) (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (expression_statement "piVar4[5] = iVar14;" (assignment_expression "piVar4[5] = iVar14" (subscript_expression "piVar4[5]" (identifier "piVar4") ([ "[") (number_literal "5") (] "]")) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "iVar1 = *(int *)(iVar1 + iVar16 * 4);" (assignment_expression "iVar1 = *(int *)(iVar1 + iVar16 * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(iVar1 + iVar16 * 4)" (* "*") (cast_expression "(int *)(iVar1 + iVar16 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + iVar16 * 4)" (( "(") (binary_expression "iVar1 + iVar16 * 4" (identifier "iVar1") (+ "+") (binary_expression "iVar16 * 4" (identifier "iVar16") (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if (iVar13 == 0) {\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }\n      else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" (if "if") (parenthesized_expression "(iVar13 == 0)" (( "(") (binary_expression "iVar13 == 0" (identifier "iVar13") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }\n        if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        dVar24 = *(double *)(iVar1 + 0x70);\nLAB_0006c398:\n        dVar24 = dVar24 - dStack_148;\n        uVar2 = SUB84(dVar24,0);\n        if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;\n        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;\n        uVar2 = SUB84(dStack_140,0);\n        if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;\n        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;\n        uVar2 = SUB84(dStack_138,0);\n        if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }\n        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;\n        if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }\n      }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x50) != 0) {\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x50) != 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x50) != 0" (pointer_expression "*(int *)(iVar1 + 0x50)" (* "*") (cast_expression "(int *)(iVar1 + 0x50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x50)" (( "(") (binary_expression "iVar1 + 0x50" (identifier "iVar1") (+ "+") (number_literal "0x50")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar2 = *(undefined4 *)(iVar1 + 0x94);\n          uVar12 = *(uint *)(iVar1 + 0x90);\n          if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }\nLAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);\n          uVar15 = SUB84(dVar24,0);\n          if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }\n          iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }\n          goto LAB_0006c2d0;\n        }" ({ "{") (expression_statement "uVar2 = *(undefined4 *)(iVar1 + 0x94);" (assignment_expression "uVar2 = *(undefined4 *)(iVar1 + 0x94)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)(iVar1 + 0x94)" (* "*") (cast_expression "(undefined4 *)(iVar1 + 0x94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x94)" (( "(") (binary_expression "iVar1 + 0x94" (identifier "iVar1") (+ "+") (number_literal "0x94")) () ")"))))) (; ";")) (expression_statement "uVar12 = *(uint *)(iVar1 + 0x90);" (assignment_expression "uVar12 = *(uint *)(iVar1 + 0x90)" (identifier "uVar12") (= "=") (pointer_expression "*(uint *)(iVar1 + 0x90)" (* "*") (cast_expression "(uint *)(iVar1 + 0x90)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x90)" (( "(") (binary_expression "iVar1 + 0x90" (identifier "iVar1") (+ "+") (number_literal "0x90")) () ")"))))) (; ";")) (if_statement "if (aiStack_170[2] == 0) {\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" (if "if") (parenthesized_expression "(aiStack_170[2] == 0)" (( "(") (binary_expression "aiStack_170[2] == 0" (subscript_expression "aiStack_170[2]" (identifier "aiStack_170") ([ "[") (number_literal "2") (] "]")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          }" ({ "{") (expression_statement "uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (identifier "uStack_124") (= "=") (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (( "(") (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fd4)" (( "(") (binary_expression "pcStack_180 + -0x7fd4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "0x75f4")) () ")"))))) (; ";")) (expression_statement "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (identifier "uStack_128") (= "=") (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (* "*") (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (( "(") (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fd4)" (( "(") (binary_expression "pcStack_180 + -0x7fd4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "0x75f0")) () ")"))))) (; ";")) (} "}"))) (labeled_statement "LAB_0006c260:\n          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);" (statement_identifier "LAB_0006c260") (: ":") (expression_statement "dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);" (assignment_expression "dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124)" (identifier "dVar24") (= "=") (binary_expression "(double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124)" (cast_expression "(double)CONCAT44(uVar12,uVar2)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uVar12,uVar2)" (identifier "CONCAT44") (argument_list "(uVar12,uVar2)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar2") () ")")))) (- "-") (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uStack_128,uStack_124)" (identifier "CONCAT44") (argument_list "(uStack_128,uStack_124)" (( "(") (identifier "uStack_128") (, ",") (identifier "uStack_124") () ")")))))) (; ";"))) (expression_statement "uVar15 = SUB84(dVar24,0);" (assignment_expression "uVar15 = SUB84(dVar24,0)" (identifier "uVar15") (= "=") (call_expression "SUB84(dVar24,0)" (identifier "SUB84") (argument_list "(dVar24,0)" (( "(") (identifier "dVar24") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (dVar24 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }" (if "if") (parenthesized_expression "(dVar24 < 0.0)" (( "(") (binary_expression "dVar24 < 0.0" (identifier "dVar24") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n            dVar24 = -dVar24;\n            uStack_174 = uVar15;\n          }" ({ "{") (expression_statement "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (identifier "uStack_178") (= "=") (binary_expression "(uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar24 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)dVar24 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar24")) (>> ">>") (number_literal "0x20")) () ")"))) (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "dVar24 = -dVar24;" (assignment_expression "dVar24 = -dVar24" (identifier "dVar24") (= "=") (unary_expression "-dVar24" (- "-") (identifier "dVar24"))) (; ";")) (expression_statement "uStack_174 = uVar15;" (assignment_expression "uStack_174 = uVar15" (identifier "uStack_174") (= "=") (identifier "uVar15")) (; ";")) (} "}"))) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (if_statement "if (dVar24 < *(double *)(iVar16 + 0x1a98)) {\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" (if "if") (parenthesized_expression "(dVar24 < *(double *)(iVar16 + 0x1a98))" (( "(") (binary_expression "dVar24 < *(double *)(iVar16 + 0x1a98)" (identifier "dVar24") (< "<") (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")"))))) () ")")) (compound_statement "{\n            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }\n            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }\n            goto LAB_0006c360;\n          }" ({ "{") (if_statement "if ((double)CONCAT44(uVar12,uVar2) < 0.0) {\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }" (if "if") (parenthesized_expression "((double)CONCAT44(uVar12,uVar2) < 0.0)" (( "(") (binary_expression "(double)CONCAT44(uVar12,uVar2) < 0.0" (cast_expression "(double)CONCAT44(uVar12,uVar2)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uVar12,uVar2)" (identifier "CONCAT44") (argument_list "(uVar12,uVar2)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar2") () ")")))) (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n              uVar12 = uVar12 ^ 0x80000000;\n              uStack_178 = uVar12;\n              uStack_174 = uVar2;\n            }" ({ "{") (expression_statement "uVar12 = uVar12 ^ 0x80000000;" (assignment_expression "uVar12 = uVar12 ^ 0x80000000" (identifier "uVar12") (= "=") (binary_expression "uVar12 ^ 0x80000000" (identifier "uVar12") (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_178 = uVar12;" (assignment_expression "uStack_178 = uVar12" (identifier "uStack_178") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" (identifier "uStack_174") (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2))" (( "(") (binary_expression "*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)" (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")")))) (<= "<=") (cast_expression "(double)CONCAT44(uVar12,uVar2)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uVar12,uVar2)" (identifier "CONCAT44") (argument_list "(uVar12,uVar2)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar2") () ")"))))) () ")")) (compound_statement "{\n              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }\n              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }\n            }" ({ "{") (if_statement "if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }" (if "if") (parenthesized_expression "((double)CONCAT44(uStack_128,uStack_124) < 0.0)" (( "(") (binary_expression "(double)CONCAT44(uStack_128,uStack_124) < 0.0" (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uStack_128,uStack_124)" (identifier "CONCAT44") (argument_list "(uStack_128,uStack_124)" (( "(") (identifier "uStack_128") (, ",") (identifier "uStack_124") () ")")))) (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n                uStack_128 = uStack_128 ^ 0x80000000;\n                uStack_178 = uStack_128;\n                uStack_174 = uStack_124;\n              }" ({ "{") (expression_statement "uStack_128 = uStack_128 ^ 0x80000000;" (assignment_expression "uStack_128 = uStack_128 ^ 0x80000000" (identifier "uStack_128") (= "=") (binary_expression "uStack_128 ^ 0x80000000" (identifier "uStack_128") (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "uStack_178 = uStack_128;" (assignment_expression "uStack_178 = uStack_128" (identifier "uStack_178") (= "=") (identifier "uStack_128")) (; ";")) (expression_statement "uStack_174 = uStack_124;" (assignment_expression "uStack_174 = uStack_124" (identifier "uStack_174") (= "=") (identifier "uStack_124")) (; ";")) (} "}"))) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124))" (( "(") (binary_expression "*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)" (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")")))) (<= "<=") (cast_expression "(double)CONCAT44(uStack_128,uStack_124)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uStack_128,uStack_124)" (identifier "CONCAT44") (argument_list "(uStack_128,uStack_124)" (( "(") (identifier "uStack_128") (, ",") (identifier "uStack_124") () ")"))))) () ")")) (compound_statement "{\n                dVar24 = *(double *)(iVar1 + 0x70);\n                goto LAB_0006c398;\n              }" ({ "{") (expression_statement "dVar24 = *(double *)(iVar1 + 0x70);" (assignment_expression "dVar24 = *(double *)(iVar1 + 0x70)" (identifier "dVar24") (= "=") (pointer_expression "*(double *)(iVar1 + 0x70)" (* "*") (cast_expression "(double *)(iVar1 + 0x70)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x70)" (( "(") (binary_expression "iVar1 + 0x70" (identifier "iVar1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (goto_statement "goto LAB_0006c398;" (goto "goto") (statement_identifier "LAB_0006c398") (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_0006c360;" (goto "goto") (statement_identifier "LAB_0006c360") (; ";")) (} "}"))) (goto_statement "goto LAB_0006c2d0;" (goto "goto") (statement_identifier "LAB_0006c2d0") (; ";")) (} "}"))) (if_statement "if (aiStack_170[2] != 0) {\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" (if "if") (parenthesized_expression "(aiStack_170[2] != 0)" (( "(") (binary_expression "aiStack_170[2] != 0" (subscript_expression "aiStack_170[2]" (identifier "aiStack_170") ([ "[") (number_literal "2") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);\n          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);\n          goto LAB_0006c260;\n        }" ({ "{") (expression_statement "uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);" (assignment_expression "uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4)" (( "(") (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f4" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fd4)" (( "(") (binary_expression "pcStack_180 + -0x7fd4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "0x75f4")) () ")"))))) (; ";")) (expression_statement "uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);" (assignment_expression "uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (identifier "uVar12") (= "=") (pointer_expression "*(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (* "*") (cast_expression "(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0)" (( "(") (binary_expression "*(int *)(pcStack_180 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_180 + -0x7fd4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fd4)" (( "(") (binary_expression "pcStack_180 + -0x7fd4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "0x75f0")) () ")"))))) (; ";")) (goto_statement "goto LAB_0006c260;" (goto "goto") (statement_identifier "LAB_0006c260") (; ";")) (} "}"))) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "dVar24 = *(double *)(iVar1 + 0x70);" (assignment_expression "dVar24 = *(double *)(iVar1 + 0x70)" (identifier "dVar24") (= "=") (pointer_expression "*(double *)(iVar1 + 0x70)" (* "*") (cast_expression "(double *)(iVar1 + 0x70)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x70)" (( "(") (binary_expression "iVar1 + 0x70" (identifier "iVar1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (labeled_statement "LAB_0006c398:\n        dVar24 = dVar24 - dStack_148;" (statement_identifier "LAB_0006c398") (: ":") (expression_statement "dVar24 = dVar24 - dStack_148;" (assignment_expression "dVar24 = dVar24 - dStack_148" (identifier "dVar24") (= "=") (binary_expression "dVar24 - dStack_148" (identifier "dVar24") (- "-") (identifier "dStack_148"))) (; ";"))) (expression_statement "uVar2 = SUB84(dVar24,0);" (assignment_expression "uVar2 = SUB84(dVar24,0)" (identifier "uVar2") (= "=") (call_expression "SUB84(dVar24,0)" (identifier "SUB84") (argument_list "(dVar24,0)" (( "(") (identifier "dVar24") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (dVar24 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }" (if "if") (parenthesized_expression "(dVar24 < 0.0)" (( "(") (binary_expression "dVar24 < 0.0" (identifier "dVar24") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;\n          dVar24 = -dVar24;\n          uStack_174 = uVar2;\n        }" ({ "{") (expression_statement "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (identifier "uStack_178") (= "=") (binary_expression "(uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dVar24 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)dVar24 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar24")) (>> ">>") (number_literal "0x20")) () ")"))) (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "dVar24 = -dVar24;" (assignment_expression "dVar24 = -dVar24" (identifier "dVar24") (= "=") (unary_expression "-dVar24" (- "-") (identifier "dVar24"))) (; ";")) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" (identifier "uStack_174") (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dVar24)" (( "(") (binary_expression "*(double *)(iVar16 + 0x1a98) <= dVar24" (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")")))) (<= "<=") (identifier "dVar24")) () ")")) (goto_statement "goto LAB_0006c2d0;" (goto "goto") (statement_identifier "LAB_0006c2d0") (; ";"))) (expression_statement "dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;" (assignment_expression "dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140" (identifier "dStack_140") (= "=") (binary_expression "*(double *)(iVar1 + 0x78) - dStack_140" (pointer_expression "*(double *)(iVar1 + 0x78)" (* "*") (cast_expression "(double *)(iVar1 + 0x78)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x78)" (( "(") (binary_expression "iVar1 + 0x78" (identifier "iVar1") (+ "+") (number_literal "0x78")) () ")")))) (- "-") (identifier "dStack_140"))) (; ";")) (expression_statement "uVar2 = SUB84(dStack_140,0);" (assignment_expression "uVar2 = SUB84(dStack_140,0)" (identifier "uVar2") (= "=") (call_expression "SUB84(dStack_140,0)" (identifier "SUB84") (argument_list "(dStack_140,0)" (( "(") (identifier "dStack_140") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (dStack_140 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }" (if "if") (parenthesized_expression "(dStack_140 < 0.0)" (( "(") (binary_expression "dStack_140 < 0.0" (identifier "dStack_140") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;\n          dStack_140 = -dStack_140;\n          uStack_174 = uVar2;\n        }" ({ "{") (expression_statement "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" (identifier "uStack_178") (= "=") (binary_expression "(uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_140 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)dStack_140 >> 0x20)" (( "(") (binary_expression "(ulonglong)dStack_140 >> 0x20" (cast_expression "(ulonglong)dStack_140" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dStack_140")) (>> ">>") (number_literal "0x20")) () ")"))) (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "dStack_140 = -dStack_140;" (assignment_expression "dStack_140 = -dStack_140" (identifier "dStack_140") (= "=") (unary_expression "-dStack_140" (- "-") (identifier "dStack_140"))) (; ";")) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" (identifier "uStack_174") (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_140)" (( "(") (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_140" (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")")))) (<= "<=") (identifier "dStack_140")) () ")")) (goto_statement "goto LAB_0006c2d0;" (goto "goto") (statement_identifier "LAB_0006c2d0") (; ";"))) (expression_statement "dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;" (assignment_expression "dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138" (identifier "dStack_138") (= "=") (binary_expression "*(double *)(iVar1 + 0x80) - dStack_138" (pointer_expression "*(double *)(iVar1 + 0x80)" (* "*") (cast_expression "(double *)(iVar1 + 0x80)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x80)" (( "(") (binary_expression "iVar1 + 0x80" (identifier "iVar1") (+ "+") (number_literal "0x80")) () ")")))) (- "-") (identifier "dStack_138"))) (; ";")) (expression_statement "uVar2 = SUB84(dStack_138,0);" (assignment_expression "uVar2 = SUB84(dStack_138,0)" (identifier "uVar2") (= "=") (call_expression "SUB84(dStack_138,0)" (identifier "SUB84") (argument_list "(dStack_138,0)" (( "(") (identifier "dStack_138") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (dStack_138 < 0.0) {\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }" (if "if") (parenthesized_expression "(dStack_138 < 0.0)" (( "(") (binary_expression "dStack_138 < 0.0" (identifier "dStack_138") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;\n          dStack_138 = -dStack_138;\n          uStack_174 = uVar2;\n        }" ({ "{") (expression_statement "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" (identifier "uStack_178") (= "=") (binary_expression "(uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_138 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)dStack_138 >> 0x20)" (( "(") (binary_expression "(ulonglong)dStack_138 >> 0x20" (cast_expression "(ulonglong)dStack_138" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dStack_138")) (>> ">>") (number_literal "0x20")) () ")"))) (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "dStack_138 = -dStack_138;" (assignment_expression "dStack_138 = -dStack_138" (identifier "dStack_138") (= "=") (unary_expression "-dStack_138" (- "-") (identifier "dStack_138"))) (; ";")) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" (identifier "uStack_174") (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_138)" (( "(") (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_138" (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")")))) (<= "<=") (identifier "dStack_138")) () ")")) (goto_statement "goto LAB_0006c2d0;" (goto "goto") (statement_identifier "LAB_0006c2d0") (; ";"))) (if_statement "if (*(int *)(iVar1 + 0x4c) == 2) {\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x4c) == 2)" (( "(") (binary_expression "*(int *)(iVar1 + 0x4c) == 2" (pointer_expression "*(int *)(iVar1 + 0x4c)" (* "*") (cast_expression "(int *)(iVar1 + 0x4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x4c)" (( "(") (binary_expression "iVar1 + 0x4c" (identifier "iVar1") (+ "+") (number_literal "0x4c")) () ")")))) (== "==") (number_literal "2")) () ")")) (compound_statement "{\n          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;\n          uVar2 = SUB84(dStack_130,0);\n          if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }\n          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;\n        }" ({ "{") (expression_statement "dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;" (assignment_expression "dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130" (identifier "dStack_130") (= "=") (binary_expression "*(double *)(iVar1 + 0x88) - dStack_130" (pointer_expression "*(double *)(iVar1 + 0x88)" (* "*") (cast_expression "(double *)(iVar1 + 0x88)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x88)" (( "(") (binary_expression "iVar1 + 0x88" (identifier "iVar1") (+ "+") (number_literal "0x88")) () ")")))) (- "-") (identifier "dStack_130"))) (; ";")) (expression_statement "uVar2 = SUB84(dStack_130,0);" (assignment_expression "uVar2 = SUB84(dStack_130,0)" (identifier "uVar2") (= "=") (call_expression "SUB84(dStack_130,0)" (identifier "SUB84") (argument_list "(dStack_130,0)" (( "(") (identifier "dStack_130") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (dStack_130 < 0.0) {\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }" (if "if") (parenthesized_expression "(dStack_130 < 0.0)" (( "(") (binary_expression "dStack_130 < 0.0" (identifier "dStack_130") (< "<") (number_literal "0.0")) () ")")) (compound_statement "{\n            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;\n            dStack_130 = -dStack_130;\n            uStack_174 = uVar2;\n          }" ({ "{") (expression_statement "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;" (assignment_expression "uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" (identifier "uStack_178") (= "=") (binary_expression "(uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000" (call_expression "(uint)((ulonglong)dStack_130 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)dStack_130 >> 0x20)" (( "(") (binary_expression "(ulonglong)dStack_130 >> 0x20" (cast_expression "(ulonglong)dStack_130" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dStack_130")) (>> ">>") (number_literal "0x20")) () ")"))) (^ "^") (number_literal "0x80000000"))) (; ";")) (expression_statement "dStack_130 = -dStack_130;" (assignment_expression "dStack_130 = -dStack_130" (identifier "dStack_130") (= "=") (unary_expression "-dStack_130" (- "-") (identifier "dStack_130"))) (; ";")) (expression_statement "uStack_174 = uVar2;" (assignment_expression "uStack_174 = uVar2" (identifier "uStack_174") (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (if_statement "if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x1a98) <= dStack_130)" (( "(") (binary_expression "*(double *)(iVar16 + 0x1a98) <= dStack_130" (pointer_expression "*(double *)(iVar16 + 0x1a98)" (* "*") (cast_expression "(double *)(iVar16 + 0x1a98)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x1a98)" (( "(") (binary_expression "iVar16 + 0x1a98" (identifier "iVar16") (+ "+") (number_literal "0x1a98")) () ")")))) (<= "<=") (identifier "dStack_130")) () ")")) (goto_statement "goto LAB_0006c2d0;" (goto "goto") (statement_identifier "LAB_0006c2d0") (; ";"))) (} "}"))) (} "}")) (else_clause "else {\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" (else "else") (compound_statement "{\nLAB_0006c2d0:\n        piVar7 = aiStack_118;\n        piVar8 = (int *)(iVar1 + 0x48);\n        do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);\n        iVar16 = *(int *)(pcStack_180 + -0x7fc4);\n        iVar1 = piVar3[5];\n        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);\n        piVar4[4] = *piVar7;\n        piVar4[5] = iVar1;\n        FUN_00062838(puVar6,iVar16 + -0xdc);\n        FUN_00063d20(puVar6,param_1);\n        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);\n      }" ({ "{") (labeled_statement "LAB_0006c2d0:\n        piVar7 = aiStack_118;" (statement_identifier "LAB_0006c2d0") (: ":") (expression_statement "piVar7 = aiStack_118;" (assignment_expression "piVar7 = aiStack_118" (identifier "piVar7") (= "=") (identifier "aiStack_118")) (; ";"))) (expression_statement "piVar8 = (int *)(iVar1 + 0x48);" (assignment_expression "piVar8 = (int *)(iVar1 + 0x48)" (identifier "piVar8") (= "=") (cast_expression "(int *)(iVar1 + 0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x48)" (( "(") (binary_expression "iVar1 + 0x48" (identifier "iVar1") (+ "+") (number_literal "0x48")) () ")")))) (; ";")) (do_statement "do {\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        } while (piVar7 != aiStack_118 + 0x14);" (do "do") (compound_statement "{\n          piVar4 = piVar8;\n          piVar3 = piVar7;\n          piVar7 = piVar3 + 4;\n          iVar13 = piVar3[1];\n          iVar16 = piVar3[2];\n          iVar1 = piVar3[3];\n          *piVar4 = *piVar3;\n          piVar4[1] = iVar13;\n          piVar4[2] = iVar16;\n          piVar4[3] = iVar1;\n          piVar8 = piVar4 + 4;\n        }" ({ "{") (expression_statement "piVar4 = piVar8;" (assignment_expression "piVar4 = piVar8" (identifier "piVar4") (= "=") (identifier "piVar8")) (; ";")) (expression_statement "piVar3 = piVar7;" (assignment_expression "piVar3 = piVar7" (identifier "piVar3") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "piVar7 = piVar3 + 4;" (assignment_expression "piVar7 = piVar3 + 4" (identifier "piVar7") (= "=") (binary_expression "piVar3 + 4" (identifier "piVar3") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "iVar13 = piVar3[1];" (assignment_expression "iVar13 = piVar3[1]" (identifier "iVar13") (= "=") (subscript_expression "piVar3[1]" (identifier "piVar3") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "iVar16 = piVar3[2];" (assignment_expression "iVar16 = piVar3[2]" (identifier "iVar16") (= "=") (subscript_expression "piVar3[2]" (identifier "piVar3") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar1 = piVar3[3];" (assignment_expression "iVar1 = piVar3[3]" (identifier "iVar1") (= "=") (subscript_expression "piVar3[3]" (identifier "piVar3") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "*piVar4 = *piVar3;" (assignment_expression "*piVar4 = *piVar3" (pointer_expression "*piVar4" (* "*") (identifier "piVar4")) (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (expression_statement "piVar4[1] = iVar13;" (assignment_expression "piVar4[1] = iVar13" (subscript_expression "piVar4[1]" (identifier "piVar4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "iVar13")) (; ";")) (expression_statement "piVar4[2] = iVar16;" (assignment_expression "piVar4[2] = iVar16" (subscript_expression "piVar4[2]" (identifier "piVar4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "iVar16")) (; ";")) (expression_statement "piVar4[3] = iVar1;" (assignment_expression "piVar4[3] = iVar1" (subscript_expression "piVar4[3]" (identifier "piVar4") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "iVar1")) (; ";")) (expression_statement "piVar8 = piVar4 + 4;" (assignment_expression "piVar8 = piVar4 + 4" (identifier "piVar8") (= "=") (binary_expression "piVar4 + 4" (identifier "piVar4") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar7 != aiStack_118 + 0x14)" (( "(") (binary_expression "piVar7 != aiStack_118 + 0x14" (identifier "piVar7") (!= "!=") (binary_expression "aiStack_118 + 0x14" (identifier "aiStack_118") (+ "+") (number_literal "0x14"))) () ")")) (; ";")) (expression_statement "iVar16 = *(int *)(pcStack_180 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_180 + -0x7fc4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "iVar1 = piVar3[5];" (assignment_expression "iVar1 = piVar3[5]" (identifier "iVar1") (= "=") (subscript_expression "piVar3[5]" (identifier "piVar3") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);" (assignment_expression "puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" (identifier "puVar10") (= "=") (cast_expression "(undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_180 + -0x7f90) + 0x2838)" (( "(") (binary_expression "*(int *)(pcStack_180 + -0x7f90) + 0x2838" (pointer_expression "*(int *)(pcStack_180 + -0x7f90)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7f90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7f90)" (( "(") (binary_expression "pcStack_180 + -0x7f90" (identifier "pcStack_180") (+ "+") (number_literal "-0x7f90")) () ")")))) (+ "+") (number_literal "0x2838")) () ")")))) (; ";")) (expression_statement "piVar4[4] = *piVar7;" (assignment_expression "piVar4[4] = *piVar7" (subscript_expression "piVar4[4]" (identifier "piVar4") ([ "[") (number_literal "4") (] "]")) (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (expression_statement "piVar4[5] = iVar1;" (assignment_expression "piVar4[5] = iVar1" (subscript_expression "piVar4[5]" (identifier "piVar4") ([ "[") (number_literal "5") (] "]")) (= "=") (identifier "iVar1")) (; ";")) (expression_statement "FUN_00062838(puVar6,iVar16 + -0xdc);" (call_expression "FUN_00062838(puVar6,iVar16 + -0xdc)" (identifier "FUN_00062838") (argument_list "(puVar6,iVar16 + -0xdc)" (( "(") (identifier "puVar6") (, ",") (binary_expression "iVar16 + -0xdc" (identifier "iVar16") (+ "+") (number_literal "-0xdc")) () ")"))) (; ";")) (expression_statement "FUN_00063d20(puVar6,param_1);" (call_expression "FUN_00063d20(puVar6,param_1)" (identifier "FUN_00063d20") (argument_list "(puVar6,param_1)" (( "(") (identifier "puVar6") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);" (call_expression "FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224)" (identifier "FUN_00062838") (argument_list "(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224)" (( "(") (identifier "puVar6") (, ",") (binary_expression "*(int *)(pcStack_180 + -0x7fc4) + -0x224" (pointer_expression "*(int *)(pcStack_180 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_180 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_180 + -0x7fc4)" (( "(") (binary_expression "pcStack_180 + -0x7fc4" (identifier "pcStack_180") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x224")) () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_0006c360:\n      pcVar21 = pcStack_180;" (statement_identifier "LAB_0006c360") (: ":") (expression_statement "pcVar21 = pcStack_180;" (assignment_expression "pcVar21 = pcStack_180" (identifier "pcVar21") (= "=") (identifier "pcStack_180")) (; ";"))) (if_statement "if (iStack_bc == *piVar5) {\n        return *piVar5;\n      }" (if "if") (parenthesized_expression "(iStack_bc == *piVar5)" (( "(") (binary_expression "iStack_bc == *piVar5" (identifier "iStack_bc") (== "==") (pointer_expression "*piVar5" (* "*") (identifier "piVar5"))) () ")")) (compound_statement "{\n        return *piVar5;\n      }" ({ "{") (return_statement "return *piVar5;" (return "return") (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" (else "else") (compound_statement "{\nLAB_0006c624:\n      puVar10 = unaff_s3;\n      (**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);\n    }" ({ "{") (labeled_statement "LAB_0006c624:\n      puVar10 = unaff_s3;" (statement_identifier "LAB_0006c624") (: ":") (expression_statement "puVar10 = unaff_s3;" (assignment_expression "puVar10 = unaff_s3" (identifier "puVar10") (= "=") (identifier "unaff_s3")) (; ";"))) (expression_statement "(**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);" (call_expression "(**(code **)(pcVar21 + -0x78e0))\n                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4)" (parenthesized_expression "(**(code **)(pcVar21 + -0x78e0))" (( "(") (pointer_expression "**(code **)(pcVar21 + -0x78e0)" (* "*") (pointer_expression "*(code **)(pcVar21 + -0x78e0)" (* "*") (cast_expression "(code **)(pcVar21 + -0x78e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + -0x78e0)" (( "(") (binary_expression "pcVar21 + -0x78e0" (identifier "pcVar21") (+ "+") (number_literal "-0x78e0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,\n                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4)" (( "(") (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x419c" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar21 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + -0x7fc4)" (( "(") (binary_expression "pcVar21 + -0x7fc4" (identifier "pcVar21") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar21 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + -0x7fc4)" (( "(") (binary_expression "pcVar21 + -0x7fc4" (identifier "pcVar21") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x12c2") (, ",") (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar21 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + -0x7fc4)" (( "(") (binary_expression "pcVar21 + -0x7fc4" (identifier "pcVar21") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x9d4")) () ")"))) (; ";")) (} "}")))) (expression_statement "(**(code **)(pcVar21 + -0x7c74))();" (call_expression "(**(code **)(pcVar21 + -0x7c74))()" (parenthesized_expression "(**(code **)(pcVar21 + -0x7c74))" (( "(") (pointer_expression "**(code **)(pcVar21 + -0x7c74)" (* "*") (pointer_expression "*(code **)(pcVar21 + -0x7c74)" (* "*") (cast_expression "(code **)(pcVar21 + -0x7c74)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + -0x7c74)" (( "(") (binary_expression "pcVar21 + -0x7c74" (identifier "pcVar21") (+ "+") (number_literal "-0x7c74")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar17 = puVar6;" (assignment_expression "puVar17 = puVar6" (identifier "puVar17") (= "=") (identifier "puVar6")) (; ";")) (expression_statement "unaff_s3 = puVar10;" (assignment_expression "unaff_s3 = puVar10" (identifier "unaff_s3") (= "=") (identifier "puVar10")) (; ";")) (} "}"))) (expression_statement "uVar2 = 0x12c1;" (assignment_expression "uVar2 = 0x12c1" (identifier "uVar2") (= "=") (number_literal "0x12c1")) (; ";")) (expression_statement "pcVar19 = *(code **)(pcVar21 + -0x78e0);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + -0x78e0)" (identifier "pcVar19") (= "=") (pointer_expression "*(code **)(pcVar21 + -0x78e0)" (* "*") (cast_expression "(code **)(pcVar21 + -0x78e0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + -0x78e0)" (( "(") (binary_expression "pcVar21 + -0x78e0" (identifier "pcVar21") (+ "+") (number_literal "-0x78e0")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;" (assignment_expression "iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar21 + -0x7fc4) + 0x9d4" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar21 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + -0x7fc4)" (( "(") (binary_expression "pcVar21 + -0x7fc4" (identifier "pcVar21") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "0x9d4"))) (; ";")) (expression_statement "pcVar22 = DrawSetFillOpacity;" (assignment_expression "pcVar22 = DrawSetFillOpacity" (identifier "pcVar22") (= "=") (identifier "DrawSetFillOpacity")) (; ";")) (expression_statement "piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);" (assignment_expression "piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954)" (identifier "piVar7") (= "=") (cast_expression "(int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar21 + -0x7fc4) + -0x954)" (( "(") (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x954" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar21 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + -0x7fc4)" (( "(") (binary_expression "pcVar21 + -0x7fc4" (identifier "pcVar21") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x954")) () ")")))) (; ";")) (expression_statement "(*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);" (call_expression "(*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970)" (parenthesized_expression "(*pcVar19)" (( "(") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) () ")")) (argument_list "(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970)" (( "(") (identifier "piVar7") (, ",") (binary_expression "*(int *)(pcVar21 + -0x7fc4) + -0x970" (pointer_expression "*(int *)(pcVar21 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcVar21 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + -0x7fc4)" (( "(") (binary_expression "pcVar21 + -0x7fc4" (identifier "pcVar21") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0x970")) () ")"))) (; ";")) (expression_statement "pcStack_1b0 = pcVar19 + 0xea988;" (assignment_expression "pcStack_1b0 = pcVar19 + 0xea988" (identifier "pcStack_1b0") (= "=") (binary_expression "pcVar19 + 0xea988" (identifier "pcVar19") (+ "+") (number_literal "0xea988"))) (; ";")) (expression_statement "dVar24 = (double)CONCAT44(uVar2,iVar1);" (assignment_expression "dVar24 = (double)CONCAT44(uVar2,iVar1)" (identifier "dVar24") (= "=") (cast_expression "(double)CONCAT44(uVar2,iVar1)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(uVar2,iVar1)" (identifier "CONCAT44") (argument_list "(uVar2,iVar1)" (( "(") (identifier "uVar2") (, ",") (identifier "iVar1") () ")"))))) (; ";")) (expression_statement "piStack_1e0 = param_1;" (assignment_expression "piStack_1e0 = param_1" (identifier "piStack_1e0") (= "=") (identifier "param_1")) (; ";")) (expression_statement "piStack_1a8 = param_1;" (assignment_expression "piStack_1a8 = param_1" (identifier "piStack_1a8") (= "=") (identifier "param_1")) (; ";")) (expression_statement "pcStack_1a4 = pcVar22;" (assignment_expression "pcStack_1a4 = pcVar22" (identifier "pcStack_1a4") (= "=") (identifier "pcVar22")) (; ";")) (if_statement "if (piVar7 != (int *)0x0) {\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }" (if "if") (parenthesized_expression "(piVar7 != (int *)0x0)" (( "(") (binary_expression "piVar7 != (int *)0x0" (identifier "piVar7") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);\n    piStack_1e0 = piVar7;\n  }" ({ "{") (if_statement "if (piVar7[0x415] == -0x54535255) {\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" (if "if") (parenthesized_expression "(piVar7[0x415] == -0x54535255)" (( "(") (binary_expression "piVar7[0x415] == -0x54535255" (subscript_expression "piVar7[0x415]" (identifier "piVar7") ([ "[") (number_literal "0x415") (] "]")) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }\n      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);\n      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));\n      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);\n      *(double *)(iVar1 + 0x90) = dVar25;\n      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" ({ "{") (if_statement "if (piVar7[0x414] != 0) {\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" (if "if") (parenthesized_expression "(piVar7[0x414] != 0)" (( "(") (binary_expression "piVar7[0x414] != 0" (subscript_expression "piVar7[0x414]" (identifier "piVar7") ([ "[") (number_literal "0x414") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;\n        piStack_1b4 = piVar7 + 1;\n        (**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);\n      }" ({ "{") (expression_statement "iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;" (assignment_expression "iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c" (identifier "iStack_1b8") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe29b8) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe29b8)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29b8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29b8)" (( "(") (binary_expression "pcVar19 + 0xe29b8" (identifier "pcVar19") (+ "+") (number_literal "0xe29b8")) () ")")))) (+ "+") (number_literal "-0x131c"))) (; ";")) (expression_statement "piStack_1b4 = piVar7 + 1;" (assignment_expression "piStack_1b4 = piVar7 + 1" (identifier "piStack_1b4") (= "=") (binary_expression "piVar7 + 1" (identifier "piVar7") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4);" (call_expression "(**(code **)(pcVar19 + 0xe2e10))\n                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2e10))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2e10)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2e10)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2e10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2e10)" (( "(") (binary_expression "pcVar19 + 0xe2e10" (identifier "pcVar19") (+ "+") (number_literal "0xe2e10")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,\n                   0x12f4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x998" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "0x998")) (, ",") (number_literal "0x12f4") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" (* "*") (cast_expression "(int *)(piVar7[0x40e] + piVar7[0x40d] * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar7[0x40e] + piVar7[0x40d] * 4)" (( "(") (binary_expression "piVar7[0x40e] + piVar7[0x40d] * 4" (subscript_expression "piVar7[0x40e]" (identifier "piVar7") ([ "[") (number_literal "0x40e") (] "]")) (+ "+") (binary_expression "piVar7[0x40d] * 4" (subscript_expression "piVar7[0x40d]" (identifier "piVar7") ([ "[") (number_literal "0x40d") (] "]")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));" (assignment_expression "dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" (identifier "dVar25") (= "=") (cast_expression "(double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0))" (( "(") (binary_expression "dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" (identifier "dVar24") (* "*") (pointer_expression "*(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" (* "*") (cast_expression "(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0)" (( "(") (binary_expression "*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1b0 + -0x7fd4)" (* "*") (cast_expression "(int *)(pcStack_1b0 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1b0 + -0x7fd4)" (( "(") (binary_expression "pcStack_1b0 + -0x7fd4" (identifier "pcStack_1b0") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "0x75f0")) () ")"))))) () ")"))))) (; ";")) (if_statement "if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {\n        return iVar1;\n      }" (if "if") (parenthesized_expression "((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25))" (( "(") (binary_expression "(piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)" (parenthesized_expression "(piVar7[0x40f] == 0)" (( "(") (binary_expression "piVar7[0x40f] == 0" (subscript_expression "piVar7[0x40f]" (identifier "piVar7") ([ "[") (number_literal "0x40f") (] "]")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(double *)(iVar1 + 0x90) == dVar25)" (( "(") (binary_expression "*(double *)(iVar1 + 0x90) == dVar25" (pointer_expression "*(double *)(iVar1 + 0x90)" (* "*") (cast_expression "(double *)(iVar1 + 0x90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x90)" (( "(") (binary_expression "iVar1 + 0x90" (identifier "iVar1") (+ "+") (number_literal "0x90")) () ")")))) (== "==") (identifier "dVar25")) () ")"))) () ")")) (compound_statement "{\n        return iVar1;\n      }" ({ "{") (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_1b0 + -0x7fc4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_1b0 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_1b0 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1b0 + -0x7fc4)" (( "(") (binary_expression "pcStack_1b0 + -0x7fc4" (identifier "pcStack_1b0") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "*(double *)(iVar1 + 0x90) = dVar25;" (assignment_expression "*(double *)(iVar1 + 0x90) = dVar25" (pointer_expression "*(double *)(iVar1 + 0x90)" (* "*") (cast_expression "(double *)(iVar1 + 0x90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x90)" (( "(") (binary_expression "iVar1 + 0x90" (identifier "iVar1") (+ "+") (number_literal "0x90")) () ")")))) (= "=") (identifier "dVar25")) (; ";")) (expression_statement "iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));" (assignment_expression "iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" (identifier "iVar1") (= "=") (call_expression "FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" (identifier "FUN_00062838") (argument_list "(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" (( "(") (identifier "piVar7") (, ",") (binary_expression "iVar16 + -0xd4" (identifier "iVar16") (+ "+") (number_literal "-0xd4")) (, ",") (cast_expression "(int)((ulonglong)dVar24 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar24 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar24")) (>> ">>") (number_literal "0x20")) () ")"))) (, ",") (call_expression "SUB84(dVar24,0)" (identifier "SUB84") (argument_list "(dVar24,0)" (( "(") (identifier "dVar24") (, ",") (number_literal "0") () ")"))) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);" (call_expression "(**(code **)(pcVar19 + 0xe30a8))\n              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe30a8))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe30a8)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe30a8)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe30a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe30a8)" (( "(") (binary_expression "pcVar19 + 0xe30a8" (identifier "pcVar19") (+ "+") (number_literal "0xe30a8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,\n               *(int *)(pcVar19 + 0xe29c4) + 0x9ac)" (( "(") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x12f2") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "0x9ac")) () ")"))) (; ";")) (expression_statement "piStack_1e0 = piVar7;" (assignment_expression "piStack_1e0 = piVar7" (identifier "piStack_1e0") (= "=") (identifier "piVar7")) (; ";")) (} "}"))) (expression_statement "uVar2 = 0x12f1;" (assignment_expression "uVar2 = 0x12f1" (identifier "uVar2") (= "=") (number_literal "0x12f1")) (; ";")) (expression_statement "pcVar22 = *(code **)(pcVar19 + 0xe30a8);" (assignment_expression "pcVar22 = *(code **)(pcVar19 + 0xe30a8)" (identifier "pcVar22") (= "=") (pointer_expression "*(code **)(pcVar19 + 0xe30a8)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe30a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe30a8)" (( "(") (binary_expression "pcVar19 + 0xe30a8" (identifier "pcVar19") (+ "+") (number_literal "0xe30a8")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + 0x9ac" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "0x9ac"))) (; ";")) (expression_statement "pcVar23 = DrawSetFontResolution;" (assignment_expression "pcVar23 = DrawSetFontResolution" (identifier "pcVar23") (= "=") (identifier "DrawSetFontResolution")) (; ";")) (expression_statement "piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);" (assignment_expression "piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954)" (identifier "piVar8") (= "=") (cast_expression "(int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar19 + 0xe29c4) + -0x954)" (( "(") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "-0x954")) () ")")))) (; ";")) (expression_statement "(*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);" (call_expression "(*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970)" (parenthesized_expression "(*pcVar22)" (( "(") (pointer_expression "*pcVar22" (* "*") (identifier "pcVar22")) () ")")) (argument_list "(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970)" (( "(") (identifier "piVar8") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe29c4) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe29c4)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe29c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe29c4)" (( "(") (binary_expression "pcVar19 + 0xe29c4" (identifier "pcVar19") (+ "+") (number_literal "0xe29c4")) () ")")))) (+ "+") (number_literal "-0x970")) () ")"))) (; ";")) (expression_statement "pcVar21 = pcVar22 + 0xea838;" (assignment_expression "pcVar21 = pcVar22 + 0xea838" (identifier "pcVar21") (= "=") (binary_expression "pcVar22 + 0xea838" (identifier "pcVar22") (+ "+") (number_literal "0xea838"))) (; ";")) (expression_statement "puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);" (assignment_expression "puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04)" (identifier "puVar18") (= "=") (pointer_expression "*(undefined4 **)(pcVar22 + 0xe2d04)" (* "*") (cast_expression "(undefined4 **)(pcVar22 + 0xe2d04)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0xe2d04)" (( "(") (binary_expression "pcVar22 + 0xe2d04" (identifier "pcVar22") (+ "+") (number_literal "0xe2d04")) () ")"))))) (; ";")) (expression_statement "piStack_1e4 = (int *)*puVar18;" (assignment_expression "piStack_1e4 = (int *)*puVar18" (identifier "piStack_1e4") (= "=") (cast_expression "(int *)*puVar18" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")))) (; ";")) (expression_statement "uVar27 = CONCAT44(uVar2,iVar1);" (assignment_expression "uVar27 = CONCAT44(uVar2,iVar1)" (identifier "uVar27") (= "=") (call_expression "CONCAT44(uVar2,iVar1)" (identifier "CONCAT44") (argument_list "(uVar2,iVar1)" (( "(") (identifier "uVar2") (, ",") (identifier "iVar1") () ")")))) (; ";")) (expression_statement "piVar7 = piStack_1e0;" (assignment_expression "piVar7 = piStack_1e0" (identifier "piVar7") (= "=") (identifier "piStack_1e0")) (; ";")) (expression_statement "pcStack_11f0 = pcVar21;" (assignment_expression "pcStack_11f0 = pcVar21" (identifier "pcStack_11f0") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "piStack_1dc = piVar5;" (assignment_expression "piStack_1dc = piVar5" (identifier "piStack_1dc") (= "=") (identifier "piVar5")) (; ";")) (expression_statement "puStack_1d8 = puVar17;" (assignment_expression "puStack_1d8 = puVar17" (identifier "puStack_1d8") (= "=") (identifier "puVar17")) (; ";")) (expression_statement "pcStack_1d4 = pcVar23;" (assignment_expression "pcStack_1d4 = pcVar23" (identifier "pcStack_1d4") (= "=") (identifier "pcVar23")) (; ";")) (expression_statement "dStack_1d0 = dVar24;" (assignment_expression "dStack_1d0 = dVar24" (identifier "dStack_1d0") (= "=") (identifier "dVar24")) (; ";")) (if_statement "if (piVar8 == (int *)0x0) {\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }\n  else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" (if "if") (parenthesized_expression "(piVar8 == (int *)0x0)" (( "(") (binary_expression "piVar8 == (int *)0x0" (identifier "piVar8") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_0006c904:\n    iVar16 = 0x131f;\n    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;\n    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);\n    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);\n  }" ({ "{") (labeled_statement "LAB_0006c904:\n    iVar16 = 0x131f;" (statement_identifier "LAB_0006c904") (: ":") (expression_statement "iVar16 = 0x131f;" (assignment_expression "iVar16 = 0x131f" (identifier "iVar16") (= "=") (number_literal "0x131f")) (; ";"))) (expression_statement "iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;" (assignment_expression "iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x980"))) (; ";")) (expression_statement "piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);" (assignment_expression "piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954)" (identifier "piVar8") (= "=") (cast_expression "(int *)(*(int *)(pcVar22 + 0xe2874) + -0x954)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar22 + 0xe2874) + -0x954)" (( "(") (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x954" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x954")) () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);" (call_expression "(**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2f58))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0xe2f58)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0xe2f58)" (* "*") (cast_expression "(code **)(pcVar22 + 0xe2f58)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0xe2f58)" (( "(") (binary_expression "pcVar22 + 0xe2f58" (identifier "pcVar22") (+ "+") (number_literal "0xe2f58")) () ")"))))) () ")")) (argument_list "(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970)" (( "(") (identifier "piVar8") (, ",") (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x970")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" (else "else") (compound_statement "{\n    piVar7 = piVar8;\n    if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }\n    piVar5 = aiStack_11e4;\n    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;\n    uStack_1200 = uVar27;\n    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);\n    (**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);\n    piVar8 = piStack_1e4;\n    pcVar21 = pcStack_11f0;\n    if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }\n  }" ({ "{") (expression_statement "piVar7 = piVar8;" (assignment_expression "piVar7 = piVar8" (identifier "piVar7") (= "=") (identifier "piVar8")) (; ";")) (if_statement "if (piVar8[0x415] != -0x54535255) {\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" (if "if") (parenthesized_expression "(piVar8[0x415] != -0x54535255)" (( "(") (binary_expression "piVar8[0x415] != -0x54535255" (subscript_expression "piVar8[0x415]" (identifier "piVar8") ([ "[") (number_literal "0x415") (] "]")) (!= "!=") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      (**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" ({ "{") (expression_statement "(**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980);" (call_expression "(**(code **)(pcVar22 + 0xe2f58))\n                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2f58))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0xe2f58)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0xe2f58)" (* "*") (cast_expression "(code **)(pcVar22 + 0xe2f58)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0xe2f58)" (( "(") (binary_expression "pcVar22 + 0xe2f58" (identifier "pcVar22") (+ "+") (number_literal "0xe2f58")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(pcVar22 + 0xe2874) + 0x980)" (( "(") (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1320") (, ",") (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x980" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x980")) () ")"))) (; ";")) (goto_statement "goto LAB_0006c904;" (goto "goto") (statement_identifier "LAB_0006c904") (; ";")) (} "}"))) (if_statement "if (piVar8[0x414] != 0) {\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }" (if "if") (parenthesized_expression "(piVar8[0x414] != 0)" (( "(") (binary_expression "piVar8[0x414] != 0" (subscript_expression "piVar8[0x414]" (identifier "piVar8") ([ "[") (number_literal "0x414") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar1 = 0x1322;\n      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);\n      (**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);\n    }" ({ "{") (expression_statement "iVar1 = 0x1322;" (assignment_expression "iVar1 = 0x1322" (identifier "iVar1") (= "=") (number_literal "0x1322")) (; ";")) (expression_statement "uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);" (assignment_expression "uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" (identifier "uStack_1200") (= "=") (call_expression "CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" (identifier "CONCAT44") (argument_list "(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1)" (( "(") (binary_expression "*(int *)(pcVar22 + 0xe2868) + -0x131c" (pointer_expression "*(int *)(pcVar22 + 0xe2868)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2868)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2868)" (( "(") (binary_expression "pcVar22 + 0xe2868" (identifier "pcVar22") (+ "+") (number_literal "0xe2868")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "piVar8 + 1" (identifier "piVar8") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "(**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);" (call_expression "(**(code **)(pcVar22 + 0xe2cc0))\n                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(pcVar22 + 0xe2cc0))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0xe2cc0)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0xe2cc0)" (* "*") (cast_expression "(code **)(pcVar22 + 0xe2cc0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0xe2cc0)" (( "(") (binary_expression "pcVar22 + 0xe2cc0" (identifier "pcVar22") (+ "+") (number_literal "0xe2cc0")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar22 + 0xe2874) + -0x970" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar22 + 0xe2874) + 0x968" (pointer_expression "*(int *)(pcVar22 + 0xe2874)" (* "*") (cast_expression "(int *)(pcVar22 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0xe2874)" (( "(") (binary_expression "pcVar22 + 0xe2874" (identifier "pcVar22") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x968")) () ")"))) (; ";")) (} "}"))) (expression_statement "piVar5 = aiStack_11e4;" (assignment_expression "piVar5 = aiStack_11e4" (identifier "piVar5") (= "=") (identifier "aiStack_11e4")) (; ";")) (expression_statement "iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;" (assignment_expression "iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" (identifier "iVar16") (= "=") (binary_expression "*(int *)(pcStack_11f0 + -0x7fc4) + -0xc0" (pointer_expression "*(int *)(pcStack_11f0 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_11f0 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_11f0 + -0x7fc4)" (( "(") (binary_expression "pcStack_11f0 + -0x7fc4" (identifier "pcStack_11f0") (+ "+") (number_literal "-0x7fc4")) () ")")))) (+ "+") (number_literal "-0xc0"))) (; ";")) (expression_statement "uStack_1200 = uVar27;" (assignment_expression "uStack_1200 = uVar27" (identifier "uStack_1200") (= "=") (identifier "uVar27")) (; ";")) (expression_statement "(**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);" (call_expression "(**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x7e80))" (( "(") (pointer_expression "**(code **)(pcStack_11f0 + -0x7e80)" (* "*") (pointer_expression "*(code **)(pcStack_11f0 + -0x7e80)" (* "*") (cast_expression "(code **)(pcStack_11f0 + -0x7e80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_11f0 + -0x7e80)" (( "(") (binary_expression "pcStack_11f0 + -0x7e80" (identifier "pcStack_11f0") (+ "+") (number_literal "-0x7e80")) () ")"))))) () ")")) (argument_list "(piVar5,0x1000)" (( "(") (identifier "piVar5") (, ",") (number_literal "0x1000") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);" (call_expression "(**(code **)(pcStack_11f0 + -0x79d0))\n              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5)" (parenthesized_expression "(**(code **)(pcStack_11f0 + -0x79d0))" (( "(") (pointer_expression "**(code **)(pcStack_11f0 + -0x79d0)" (* "*") (pointer_expression "*(code **)(pcStack_11f0 + -0x79d0)" (* "*") (cast_expression "(code **)(pcStack_11f0 + -0x79d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_11f0 + -0x79d0)" (( "(") (binary_expression "pcStack_11f0 + -0x79d0" (identifier "pcStack_11f0") (+ "+") (number_literal "-0x79d0")) () ")"))))) () ")")) (argument_list "(*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5)" (( "(") (binary_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290" (pointer_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" (* "*") (cast_expression "(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar8[0x40e] + piVar8[0x40d] * 4)" (( "(") (binary_expression "piVar8[0x40e] + piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40e]" (identifier "piVar8") ([ "[") (number_literal "0x40e") (] "]")) (+ "+") (binary_expression "piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40d]" (identifier "piVar8") ([ "[") (number_literal "0x40d") (] "]")) (* "*") (number_literal "4"))) () ")")))) (+ "+") (number_literal "0x290")) (, ",") (identifier "piVar5") () ")"))) (; ";")) (expression_statement "piVar8 = piStack_1e4;" (assignment_expression "piVar8 = piStack_1e4" (identifier "piVar8") (= "=") (identifier "piStack_1e4")) (; ";")) (expression_statement "pcVar21 = pcStack_11f0;" (assignment_expression "pcVar21 = pcStack_11f0" (identifier "pcVar21") (= "=") (identifier "pcStack_11f0")) (; ";")) (if_statement "if (piStack_1e4 == (int *)*puVar18) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(piStack_1e4 == (int *)*puVar18)" (( "(") (binary_expression "piStack_1e4 == (int *)*puVar18" (identifier "piStack_1e4") (== "==") (cast_expression "(int *)*puVar18" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")))) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar21 = *(code **)(pcVar21 + -0x7c74);" (assignment_expression "pcVar21 = *(code **)(pcVar21 + -0x7c74)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar21 + -0x7c74)" (* "*") (cast_expression "(code **)(pcVar21 + -0x7c74)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + -0x7c74)" (( "(") (binary_expression "pcVar21 + -0x7c74" (identifier "pcVar21") (+ "+") (number_literal "-0x7c74")) () ")"))))) (; ";")) (expression_statement "pcVar19 = DrawSetOpacity;" (assignment_expression "pcVar19 = DrawSetOpacity" (identifier "pcVar19") (= "=") (identifier "DrawSetOpacity")) (; ";")) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_1228 = pcVar21 + 0xea6cc;" (assignment_expression "pcStack_1228 = pcVar21 + 0xea6cc" (identifier "pcStack_1228") (= "=") (binary_expression "pcVar21 + 0xea6cc" (identifier "pcVar21") (+ "+") (number_literal "0xea6cc"))) (; ";")) (expression_statement "dVar24 = (double)CONCAT44(iVar16,iVar1);" (assignment_expression "dVar24 = (double)CONCAT44(iVar16,iVar1)" (identifier "dVar24") (= "=") (cast_expression "(double)CONCAT44(iVar16,iVar1)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(iVar16,iVar1)" (identifier "CONCAT44") (argument_list "(iVar16,iVar1)" (( "(") (identifier "iVar16") (, ",") (identifier "iVar1") () ")"))))) (; ";")) (expression_statement "piStack_1254 = piVar7;" (assignment_expression "piStack_1254 = piVar7" (identifier "piStack_1254") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "piStack_1220 = piVar7;" (assignment_expression "piStack_1220 = piVar7" (identifier "piStack_1220") (= "=") (identifier "piVar7")) (; ";")) (expression_statement "pcStack_121c = pcVar19;" (assignment_expression "pcStack_121c = pcVar19" (identifier "pcStack_121c") (= "=") (identifier "pcVar19")) (; ";")) (expression_statement "uStack_1218 = uVar27;" (assignment_expression "uStack_1218 = uVar27" (identifier "uStack_1218") (= "=") (identifier "uVar27")) (; ";")) (if_statement "if (piVar8 != (int *)0x0) {\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }" (if "if") (parenthesized_expression "(piVar8 != (int *)0x0)" (( "(") (binary_expression "piVar8 != (int *)0x0" (identifier "piVar8") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);\n    piStack_1254 = piVar8;\n  }" ({ "{") (if_statement "if (piVar8[0x415] == -0x54535255) {\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" (if "if") (parenthesized_expression "(piVar8[0x415] == -0x54535255)" (( "(") (binary_expression "piVar8[0x415] == -0x54535255" (subscript_expression "piVar8[0x415]" (identifier "piVar8") ([ "[") (number_literal "0x415") (] "]")) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);\n      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));\n      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }\n      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);\n      *(float *)(iVar1 + 0x2cc) = fVar26;\n      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));\n      return iVar1;\n    }" ({ "{") (if_statement "if (piVar8[0x414] != 0) {\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }" (if "if") (parenthesized_expression "(piVar8[0x414] != 0)" (( "(") (binary_expression "piVar8[0x414] != 0" (subscript_expression "piVar8[0x414]" (identifier "piVar8") ([ "[") (number_literal "0x414") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;\n        piStack_122c = piVar8 + 1;\n        (**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);\n      }" ({ "{") (expression_statement "iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;" (assignment_expression "iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c" (identifier "iStack_1230") (= "=") (binary_expression "*(int *)(pcVar21 + 0xe26fc) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe26fc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe26fc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe26fc)" (( "(") (binary_expression "pcVar21 + 0xe26fc" (identifier "pcVar21") (+ "+") (number_literal "0xe26fc")) () ")")))) (+ "+") (number_literal "-0x131c"))) (; ";")) (expression_statement "piStack_122c = piVar8 + 1;" (assignment_expression "piStack_122c = piVar8 + 1" (identifier "piStack_122c") (= "=") (binary_expression "piVar8 + 1" (identifier "piVar8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "(**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar21 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2b54))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2b54)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2b54)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2b54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2b54)" (( "(") (binary_expression "pcVar21 + 0xe2b54" (identifier "pcVar21") (+ "+") (number_literal "0xe2b54")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,\n                   0x134a)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x948")) (, ",") (number_literal "0x134a") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);" (assignment_expression "iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" (* "*") (cast_expression "(int *)(piVar8[0x40e] + piVar8[0x40d] * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar8[0x40e] + piVar8[0x40d] * 4)" (( "(") (binary_expression "piVar8[0x40e] + piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40e]" (identifier "piVar8") ([ "[") (number_literal "0x40e") (] "]")) (+ "+") (binary_expression "piVar8[0x40d] * 4" (subscript_expression "piVar8[0x40d]" (identifier "piVar8") ([ "[") (number_literal "0x40d") (] "]")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));" (assignment_expression "fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" (identifier "fVar26") (= "=") (cast_expression "(float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0))" (( "(") (binary_expression "dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" (identifier "dVar24") (* "*") (pointer_expression "*(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" (* "*") (cast_expression "(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0)" (( "(") (binary_expression "*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0" (pointer_expression "*(int *)(pcStack_1228 + -0x7fd4)" (* "*") (cast_expression "(int *)(pcStack_1228 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1228 + -0x7fd4)" (( "(") (binary_expression "pcStack_1228 + -0x7fd4" (identifier "pcStack_1228") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "0x75f0")) () ")"))))) () ")")))) (; ";")) (if_statement "if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {\n        return iVar1;\n      }" (if "if") (parenthesized_expression "((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26))" (( "(") (binary_expression "(piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)" (parenthesized_expression "(piVar8[0x40f] == 0)" (( "(") (binary_expression "piVar8[0x40f] == 0" (subscript_expression "piVar8[0x40f]" (identifier "piVar8") ([ "[") (number_literal "0x40f") (] "]")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(float *)(iVar1 + 0x2cc) == fVar26)" (( "(") (binary_expression "*(float *)(iVar1 + 0x2cc) == fVar26" (pointer_expression "*(float *)(iVar1 + 0x2cc)" (* "*") (cast_expression "(float *)(iVar1 + 0x2cc)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x2cc)" (( "(") (binary_expression "iVar1 + 0x2cc" (identifier "iVar1") (+ "+") (number_literal "0x2cc")) () ")")))) (== "==") (identifier "fVar26")) () ")"))) () ")")) (compound_statement "{\n        return iVar1;\n      }" ({ "{") (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "iVar16 = *(int *)(pcStack_1228 + -0x7fc4);" (assignment_expression "iVar16 = *(int *)(pcStack_1228 + -0x7fc4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_1228 + -0x7fc4)" (* "*") (cast_expression "(int *)(pcStack_1228 + -0x7fc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_1228 + -0x7fc4)" (( "(") (binary_expression "pcStack_1228 + -0x7fc4" (identifier "pcStack_1228") (+ "+") (number_literal "-0x7fc4")) () ")"))))) (; ";")) (expression_statement "*(float *)(iVar1 + 0x2cc) = fVar26;" (assignment_expression "*(float *)(iVar1 + 0x2cc) = fVar26" (pointer_expression "*(float *)(iVar1 + 0x2cc)" (* "*") (cast_expression "(float *)(iVar1 + 0x2cc)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x2cc)" (( "(") (binary_expression "iVar1 + 0x2cc" (identifier "iVar1") (+ "+") (number_literal "0x2cc")) () ")")))) (= "=") (identifier "fVar26")) (; ";")) (expression_statement "iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));" (assignment_expression "iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" (identifier "iVar1") (= "=") (call_expression "FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" (identifier "FUN_00062838") (argument_list "(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0))" (( "(") (identifier "piVar8") (, ",") (binary_expression "iVar16 + -0xb4" (identifier "iVar16") (+ "+") (number_literal "-0xb4")) (, ",") (cast_expression "(int)((ulonglong)dVar24 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar24 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar24 >> 0x20" (cast_expression "(ulonglong)dVar24" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar24")) (>> ">>") (number_literal "0x20")) () ")"))) (, ",") (call_expression "SUB84(dVar24,0)" (identifier "SUB84") (argument_list "(dVar24,0)" (( "(") (identifier "dVar24") (, ",") (number_literal "0") () ")"))) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar21 + 0xe2dec))\n              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2dec))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2dec)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2dec)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2dec)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2dec)" (( "(") (binary_expression "pcVar21 + 0xe2dec" (identifier "pcVar21") (+ "+") (number_literal "0xe2dec")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar21 + 0xe2708) + 0x958)" (( "(") (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1348") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x958")) () ")"))) (; ";")) (expression_statement "piStack_1254 = piVar8;" (assignment_expression "piStack_1254 = piVar8" (identifier "piStack_1254") (= "=") (identifier "piVar8")) (; ";")) (} "}"))) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe2dec);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe2dec)" (identifier "pcVar19") (= "=") (pointer_expression "*(code **)(pcVar21 + 0xe2dec)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2dec)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2dec)" (( "(") (binary_expression "pcVar21 + 0xe2dec" (identifier "pcVar21") (+ "+") (number_literal "0xe2dec")) () ")"))))) (; ";")) (expression_statement "pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);" (assignment_expression "pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970)" (identifier "pcVar11") (= "=") (cast_expression "(char *)(*(int *)(pcVar21 + 0xe2708) + -0x970)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar21 + 0xe2708) + -0x970)" (( "(") (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x970")) () ")")))) (; ";")) (expression_statement "pcVar22 = DrawSetFillPatternURL;" (assignment_expression "pcVar22 = DrawSetFillPatternURL" (identifier "pcVar22") (= "=") (identifier "DrawSetFillPatternURL")) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar21 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);" (call_expression "(*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar19)" (( "(") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) () ")")) (argument_list "(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958)" (( "(") (identifier "iVar1") (, ",") (identifier "pcVar11") (, ",") (number_literal "0x1347") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar21 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2708)" (( "(") (binary_expression "pcVar21 + 0xe2708" (identifier "pcVar21") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x958")) () ")"))) (; ";")) (expression_statement "piVar7 = *(int **)(pcVar19 + 0xe2a4c);" (assignment_expression "piVar7 = *(int **)(pcVar19 + 0xe2a4c)" (identifier "piVar7") (= "=") (pointer_expression "*(int **)(pcVar19 + 0xe2a4c)" (* "*") (cast_expression "(int **)(pcVar19 + 0xe2a4c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2a4c)" (( "(") (binary_expression "pcVar19 + 0xe2a4c" (identifier "pcVar19") (+ "+") (number_literal "0xe2a4c")) () ")"))))) (; ";")) (expression_statement "iStack_125c = *piVar7;" (assignment_expression "iStack_125c = *piVar7" (identifier "iStack_125c") (= "=") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) (; ";")) (expression_statement "piStack_1250 = piVar5;" (assignment_expression "piStack_1250 = piVar5" (identifier "piStack_1250") (= "=") (identifier "piVar5")) (; ";")) (expression_statement "puStack_124c = puVar18;" (assignment_expression "puStack_124c = puVar18" (identifier "puStack_124c") (= "=") (identifier "puVar18")) (; ";")) (expression_statement "puStack_1248 = unaff_s3;" (assignment_expression "puStack_1248 = unaff_s3" (identifier "puStack_1248") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pcStack_1244 = pcVar22;" (assignment_expression "pcStack_1244 = pcVar22" (identifier "pcStack_1244") (= "=") (identifier "pcVar22")) (; ";")) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" (* "*") (cast_expression "(int *)(iVar1 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1054)" (( "(") (binary_expression "iVar1 + 0x1054" (identifier "iVar1") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }\n    }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1050) == 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1050) == 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" (* "*") (cast_expression "(int *)(iVar1 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1050)" (( "(") (binary_expression "iVar1 + 0x1050" (identifier "iVar1") (+ "+") (number_literal "0x1050")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" ({ "{") (expression_statement "iVar16 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar16 = *(int *)(&DAT_00001004 + iVar1)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(&DAT_00001004 + iVar1)" (* "*") (cast_expression "(int *)(&DAT_00001004 + iVar1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00001004 + iVar1)" (( "(") (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" (& "&") (identifier "DAT_00001004")) (+ "+") (identifier "iVar1")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" (else "else") (compound_statement "{\n        (**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);\n        iVar16 = *(int *)(&DAT_00001004 + iVar1);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);" (call_expression "(**(code **)(pcVar19 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2a08))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2a08)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2a08)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2a08)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2a08)" (( "(") (binary_expression "pcVar19 + 0xe2a08" (identifier "pcVar19") (+ "+") (number_literal "0xe2a08")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x918")) (, ",") (number_literal "0x137a") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe25b0)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25b0)" (( "(") (binary_expression "pcVar19 + 0xe25b0" (identifier "pcVar19") (+ "+") (number_literal "0xe25b0")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (identifier "pcVar11") () ")"))) (; ";")) (expression_statement "iVar16 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar16 = *(int *)(&DAT_00001004 + iVar1)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(&DAT_00001004 + iVar1)" (* "*") (cast_expression "(int *)(&DAT_00001004 + iVar1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00001004 + iVar1)" (( "(") (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" (& "&") (identifier "DAT_00001004")) (+ "+") (identifier "iVar1")) () ")"))))) (; ";")) (} "}")))) (if_statement "if (iVar16 == 0) {\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" (if "if") (parenthesized_expression "(iVar16 == 0)" (( "(") (binary_expression "iVar16 == 0" (identifier "iVar16") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);" (call_expression "(**(code **)(pcVar19 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe283c))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe283c)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe283c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe283c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe283c)" (( "(") (binary_expression "pcVar19 + 0xe283c" (identifier "pcVar19") (+ "+") (number_literal "0xe283c")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (( "(") (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" (* "*") (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00001008 + iVar1)" (( "(") (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" (& "&") (identifier "DAT_00001008")) (+ "+") (identifier "iVar1")) () ")")))) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x918")) (, ",") (number_literal "0x137c") (, ",") (number_literal "0x1d6") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x225c")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25ac)" (( "(") (binary_expression "pcVar19 + 0xe25ac" (identifier "pcVar19") (+ "+") (number_literal "0xe25ac")) () ")")))) (+ "+") (number_literal "0x5cf4")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (pcVar11 != (char *)0x0) {\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }" (if "if") (parenthesized_expression "(pcVar11 != (char *)0x0)" (( "(") (binary_expression "pcVar11 != (char *)0x0" (identifier "pcVar11") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        iVar13 = *(int *)(pcVar19 + 0xe25ac);\n        if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }\n        iVar1 = iStack_125c;\n        if (iStack_125c == *piVar7) {\n          return iVar13;\n        }\n        goto LAB_0006cd54;\n      }" ({ "{") (expression_statement "iVar13 = *(int *)(pcVar19 + 0xe25ac);" (assignment_expression "iVar13 = *(int *)(pcVar19 + 0xe25ac)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25ac)" (( "(") (binary_expression "pcVar19 + 0xe25ac" (identifier "pcVar19") (+ "+") (number_literal "0xe25ac")) () ")"))))) (; ";")) (if_statement "if (*pcVar11 == '#') {\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }\n        else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" (if "if") (parenthesized_expression "(*pcVar11 == '#')" (( "(") (binary_expression "*pcVar11 == '#'" (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11")) (== "==") (char_literal "'#'" (' "'") (character "#") (' "'"))) () ")")) (compound_statement "{\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);\n          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);\n          if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);\n          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }\n          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar16,auStack_225c);\n          iVar13 = 1;\n        }" ({ "{") (expression_statement "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);" (call_expression "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2700))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2700)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2700)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2700)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2700)" (( "(") (binary_expression "pcVar19 + 0xe2700" (identifier "pcVar19") (+ "+") (number_literal "0xe2700")) () ")"))))) () ")")) (argument_list "(auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1)" (( "(") (identifier "auStack_325c") (, ",") (number_literal "0x1000") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe25b0)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25b0)" (( "(") (binary_expression "pcVar19 + 0xe25b0" (identifier "pcVar19") (+ "+") (number_literal "0xe25b0")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "pcVar11 + 1" (identifier "pcVar11") (+ "+") (number_literal "1")) () ")"))) (; ";")) (expression_statement "iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);" (assignment_expression "iVar16 = (**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" (identifier "iVar16") (= "=") (call_expression "(**(code **)(pcVar19 + 0xe2bc8))\n                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2bc8))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2bc8)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2bc8)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2bc8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2bc8)" (( "(") (binary_expression "pcVar19 + 0xe2bc8" (identifier "pcVar19") (+ "+") (number_literal "0xe2bc8")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c)" (( "(") (pointer_expression "*(undefined4 *)(&DAT_00001004 + iVar1)" (* "*") (cast_expression "(undefined4 *)(&DAT_00001004 + iVar1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00001004 + iVar1)" (( "(") (binary_expression "&DAT_00001004 + iVar1" (pointer_expression "&DAT_00001004" (& "&") (identifier "DAT_00001004")) (+ "+") (identifier "iVar1")) () ")")))) (, ",") (identifier "auStack_325c") () ")")))) (; ";")) (if_statement "if (iVar16 == 0) {\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" (if "if") (parenthesized_expression "(iVar16 == 0)" (( "(") (binary_expression "iVar16 == 0" (identifier "iVar16") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            iVar13 = *(int *)(pcVar19 + 0xe25ac);\n            uVar15 = 0x1386;\n            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar14 = *(int *)(pcVar19 + 0xe25bc);\n            iVar16 = *(int *)(pcVar19 + 0xe25bc);\n            pcVar21 = *(code **)(pcVar19 + 0xe283c);\n            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" ({ "{") (expression_statement "iVar13 = *(int *)(pcVar19 + 0xe25ac);" (assignment_expression "iVar13 = *(int *)(pcVar19 + 0xe25ac)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(pcVar19 + 0xe25ac)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25ac)" (( "(") (binary_expression "pcVar19 + 0xe25ac" (identifier "pcVar19") (+ "+") (number_literal "0xe25ac")) () ")"))))) (; ";")) (expression_statement "uVar15 = 0x1386;" (assignment_expression "uVar15 = 0x1386" (identifier "uVar15") (= "=") (number_literal "0x1386")) (; ";")) (expression_statement "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" (* "*") (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00001008 + iVar1)" (( "(") (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" (& "&") (identifier "DAT_00001008")) (+ "+") (identifier "iVar1")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar14 = *(int *)(pcVar19 + 0xe25bc)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe283c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe283c)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar19 + 0xe283c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe283c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe283c)" (( "(") (binary_expression "pcVar19 + 0xe283c" (identifier "pcVar19") (+ "+") (number_literal "0xe283c")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x74"))) (; ";")) (goto_statement "goto LAB_0006cb28;" (goto "goto") (statement_identifier "LAB_0006cb28") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);" (call_expression "(**(code **)(pcVar19 + 0xe2700))\n                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2700))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2700)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2700)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2700)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2700)" (( "(") (binary_expression "pcVar19 + 0xe2700" (identifier "pcVar19") (+ "+") (number_literal "0xe2700")) () ")"))))) () ")")) (argument_list "(auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11)" (( "(") (identifier "auStack_225c") (, ",") (number_literal "0x1000") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x68")) (, ",") (identifier "pcVar11") () ")"))) (; ";")) (expression_statement "iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" (* "*") (cast_expression "(int *)(iVar1 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1038)" (( "(") (binary_expression "iVar1 + 0x1038" (identifier "iVar1") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" (* "*") (cast_expression "(int *)(iVar1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1034)" (( "(") (binary_expression "iVar1 + 0x1034" (identifier "iVar1") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if (*(double *)(iVar16 + 0x90) != 0.0) {\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }" (if "if") (parenthesized_expression "(*(double *)(iVar16 + 0x90) != 0.0)" (( "(") (binary_expression "*(double *)(iVar16 + 0x90) != 0.0" (pointer_expression "*(double *)(iVar16 + 0x90)" (* "*") (cast_expression "(double *)(iVar16 + 0x90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x90)" (( "(") (binary_expression "iVar16 + 0x90" (identifier "iVar16") (+ "+") (number_literal "0x90")) () ")")))) (!= "!=") (number_literal "0.0")) () ")")) (compound_statement "{\n            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);\n          }" ({ "{") (expression_statement "*(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);" (assignment_expression "*(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc)" (pointer_expression "*(double *)(iVar16 + 0x90)" (* "*") (cast_expression "(double *)(iVar16 + 0x90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x90)" (( "(") (binary_expression "iVar16 + 0x90" (identifier "iVar16") (+ "+") (number_literal "0x90")) () ")")))) (= "=") (cast_expression "(double)*(float *)(iVar16 + 0x2cc)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*(float *)(iVar16 + 0x2cc)" (* "*") (cast_expression "(float *)(iVar16 + 0x2cc)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x2cc)" (( "(") (binary_expression "iVar16 + 0x2cc" (identifier "iVar16") (+ "+") (number_literal "0x2cc")) () ")")))))) (; ";")) (} "}"))) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60" (identifier "iVar16") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x60"))) (; ";")) (expression_statement "FUN_00062838(iVar1,iVar16,auStack_225c);" (call_expression "FUN_00062838(iVar1,iVar16,auStack_225c)" (identifier "FUN_00062838") (argument_list "(iVar1,iVar16,auStack_225c)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar16") (, ",") (identifier "auStack_225c") () ")"))) (; ";")) (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" (identifier "iVar13") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" (else "else") (compound_statement "{\n          uVar15 = 0x1380;\n          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar14 = *(int *)(pcVar19 + 0xe25bc);\n          iVar16 = *(int *)(pcVar19 + 0xe25bc);\n          pcVar21 = *(code **)(pcVar19 + 0xe283c);\n          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar16 = iVar16 + -0x970;\n          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);\n          iVar13 = 0;\n        }" ({ "{") (expression_statement "uVar15 = 0x1380;" (assignment_expression "uVar15 = 0x1380" (identifier "uVar15") (= "=") (number_literal "0x1380")) (; ";")) (expression_statement "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)(&DAT_00001008 + iVar1)" (* "*") (cast_expression "(undefined4 *)(&DAT_00001008 + iVar1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00001008 + iVar1)" (( "(") (binary_expression "&DAT_00001008 + iVar1" (pointer_expression "&DAT_00001008" (& "&") (identifier "DAT_00001008")) (+ "+") (identifier "iVar1")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar14 = *(int *)(pcVar19 + 0xe25bc)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc);" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe283c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe283c)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar19 + 0xe283c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe283c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe283c)" (( "(") (binary_expression "pcVar19 + 0xe283c" (identifier "pcVar19") (+ "+") (number_literal "0xe283c")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x84"))) (; ";")) (labeled_statement "LAB_0006cb28:\n          iVar16 = iVar16 + -0x970;" (statement_identifier "LAB_0006cb28") (: ":") (expression_statement "iVar16 = iVar16 + -0x970;" (assignment_expression "iVar16 = iVar16 + -0x970" (identifier "iVar16") (= "=") (binary_expression "iVar16 + -0x970" (identifier "iVar16") (+ "+") (number_literal "-0x970"))) (; ";"))) (expression_statement "(*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);" (call_expression "(*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11)" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11)" (( "(") (identifier "uVar2") (, ",") (identifier "iVar16") (, ",") (binary_expression "iVar14 + 0x918" (identifier "iVar14") (+ "+") (number_literal "0x918")) (, ",") (identifier "uVar15") (, ",") (number_literal "0x1cc") (, ",") (identifier "iVar1") (, ",") (binary_expression "iVar13 + 0x5cf4" (identifier "iVar13") (+ "+") (number_literal "0x5cf4")) (, ",") (identifier "pcVar11") () ")"))) (; ";")) (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" (identifier "iVar13") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "iVar1 = iStack_125c;" (assignment_expression "iVar1 = iStack_125c" (identifier "iVar1") (= "=") (identifier "iStack_125c")) (; ";")) (if_statement "if (iStack_125c == *piVar7) {\n          return iVar13;\n        }" (if "if") (parenthesized_expression "(iStack_125c == *piVar7)" (( "(") (binary_expression "iStack_125c == *piVar7" (identifier "iStack_125c") (== "==") (pointer_expression "*piVar7" (* "*") (identifier "piVar7"))) () ")")) (compound_statement "{\n          return iVar13;\n        }" ({ "{") (return_statement "return iVar13;" (return "return") (identifier "iVar13") (; ";")) (} "}"))) (goto_statement "goto LAB_0006cd54;" (goto "goto") (statement_identifier "LAB_0006cd54") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" (else "else") (compound_statement "{\n      (**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);\n    }" ({ "{") (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))\n                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2ca0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2ca0)" (( "(") (binary_expression "pcVar19 + 0xe2ca0" (identifier "pcVar19") (+ "+") (number_literal "0xe2ca0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar19 + 0xe25bc) + 0x930)" (( "(") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1378") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x930")) () ")"))) (; ";")) (} "}")))) (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))\n              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2ca0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2ca0)" (( "(") (binary_expression "pcVar19 + 0xe2ca0" (identifier "pcVar19") (+ "+") (number_literal "0xe2ca0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar19 + 0xe25bc) + 0x930)" (( "(") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0xa4")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x137d") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x930")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970" (identifier "iVar16") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2ca0))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2ca0)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2ca0)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2ca0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2ca0)" (( "(") (binary_expression "pcVar19 + 0xe2ca0" (identifier "pcVar19") (+ "+") (number_literal "0xe2ca0")) () ")"))))) () ")")) (argument_list "(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar16") (, ",") (number_literal "0x1377") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar19 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe25bc)" (( "(") (binary_expression "pcVar19 + 0xe25bc" (identifier "pcVar19") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x930")) () ")"))) (; ";")) (labeled_statement "LAB_0006cd54:\n  pcVar21 = *(code **)(pcVar19 + 0xe290c);" (statement_identifier "LAB_0006cd54") (: ":") (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe290c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe290c)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar19 + 0xe290c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe290c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe290c)" (( "(") (binary_expression "pcVar19 + 0xe290c" (identifier "pcVar19") (+ "+") (number_literal "0xe290c")) () ")"))))) (; ";"))) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }\n    (**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" (* "*") (cast_expression "(int *)(iVar1 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1054)" (( "(") (binary_expression "iVar1 + 0x1054" (identifier "iVar1") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }\n      pcVar19 = *(code **)(pcVar21 + 0xe2408);\n      *(int *)(iVar13 + 0x240) = iVar16;\n      uVar2 = (*pcVar19)(0x1a,iVar16);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);\n      return iVar1;\n    }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" (* "*") (cast_expression "(int *)(iVar1 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1050)" (( "(") (binary_expression "iVar1 + 0x1050" (identifier "iVar1") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar21 + 0xe2728))\n                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2728))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2728)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2728)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2728)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2728)" (( "(") (binary_expression "pcVar21 + 0xe2728" (identifier "pcVar21") (+ "+") (number_literal "0xe2728")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x8f8")) (, ",") (number_literal "0x13b1") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe22d0)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22d0)" (( "(") (binary_expression "pcVar21 + 0xe22d0" (identifier "pcVar21") (+ "+") (number_literal "0xe22d0")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" (* "*") (cast_expression "(int *)(iVar1 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1038)" (( "(") (binary_expression "iVar1 + 0x1038" (identifier "iVar1") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" (* "*") (cast_expression "(int *)(iVar1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1034)" (( "(") (binary_expression "iVar1 + 0x1034" (identifier "iVar1") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {\n        return iVar13;\n      }" (if "if") (parenthesized_expression "((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16))" (( "(") (binary_expression "(*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)" (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" (* "*") (cast_expression "(int *)(iVar1 + 0x103c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x103c)" (( "(") (binary_expression "iVar1 + 0x103c" (identifier "iVar1") (+ "+") (number_literal "0x103c")) () ")")))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(iVar13 + 0x240) == iVar16)" (( "(") (binary_expression "*(int *)(iVar13 + 0x240) == iVar16" (pointer_expression "*(int *)(iVar13 + 0x240)" (* "*") (cast_expression "(int *)(iVar13 + 0x240)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + 0x240)" (( "(") (binary_expression "iVar13 + 0x240" (identifier "iVar13") (+ "+") (number_literal "0x240")) () ")")))) (== "==") (identifier "iVar16")) () ")"))) () ")")) (compound_statement "{\n        return iVar13;\n      }" ({ "{") (return_statement "return iVar13;" (return "return") (identifier "iVar13") (; ";")) (} "}"))) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe2408);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe2408)" (identifier "pcVar19") (= "=") (pointer_expression "*(code **)(pcVar21 + 0xe2408)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2408)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2408)" (( "(") (binary_expression "pcVar21 + 0xe2408" (identifier "pcVar21") (+ "+") (number_literal "0xe2408")) () ")"))))) (; ";")) (expression_statement "*(int *)(iVar13 + 0x240) = iVar16;" (assignment_expression "*(int *)(iVar13 + 0x240) = iVar16" (pointer_expression "*(int *)(iVar13 + 0x240)" (* "*") (cast_expression "(int *)(iVar13 + 0x240)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + 0x240)" (( "(") (binary_expression "iVar13 + 0x240" (identifier "iVar13") (+ "+") (number_literal "0x240")) () ")")))) (= "=") (identifier "iVar16")) (; ";")) (expression_statement "uVar2 = (*pcVar19)(0x1a,iVar16);" (assignment_expression "uVar2 = (*pcVar19)(0x1a,iVar16)" (identifier "uVar2") (= "=") (call_expression "(*pcVar19)(0x1a,iVar16)" (parenthesized_expression "(*pcVar19)" (( "(") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) () ")")) (argument_list "(0x1a,iVar16)" (( "(") (number_literal "0x1a") (, ",") (identifier "iVar16") () ")")))) (; ";")) (expression_statement "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);" (assignment_expression "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" (identifier "iVar1") (= "=") (call_expression "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" (identifier "FUN_00062838") (argument_list "(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x54")) (, ",") (identifier "uVar2") () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar21 + 0xe29c0))\n              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe29c0))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe29c0)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe29c0)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe29c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe29c0)" (( "(") (binary_expression "pcVar21 + 0xe29c0" (identifier "pcVar21") (+ "+") (number_literal "0xe29c0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar21 + 0xe22dc) + 0x908)" (( "(") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x13af") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x908")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar19 = *(code **)(pcVar21 + 0xe29c0);" (assignment_expression "pcVar19 = *(code **)(pcVar21 + 0xe29c0)" (identifier "pcVar19") (= "=") (pointer_expression "*(code **)(pcVar21 + 0xe29c0)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe29c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe29c0)" (( "(") (binary_expression "pcVar21 + 0xe29c0" (identifier "pcVar21") (+ "+") (number_literal "0xe29c0")) () ")"))))) (; ";")) (expression_statement "iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970" (identifier "iVar16") (= "=") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);" (call_expression "(*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar19)" (( "(") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) () ")")) (argument_list "(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar16") (, ",") (number_literal "0x13ae") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar21 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe22dc)" (( "(") (binary_expression "pcVar21 + 0xe22dc" (identifier "pcVar21") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x908")) () ")"))) (; ";")) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }" (if "if") (parenthesized_expression "(iVar1 != 0)" (( "(") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" (* "*") (cast_expression "(int *)(iVar1 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1054)" (( "(") (binary_expression "iVar1 + 0x1054" (identifier "iVar1") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }\n      (**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);\n    }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" (* "*") (cast_expression "(int *)(iVar1 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1050)" (( "(") (binary_expression "iVar1 + 0x1050" (identifier "iVar1") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar19 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe25e4))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe25e4)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe25e4)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe25e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe25e4)" (( "(") (binary_expression "pcVar19 + 0xe25e4" (identifier "pcVar19") (+ "+") (number_literal "0xe25e4")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8e0")) (, ",") (number_literal "0x13da") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar19 + 0xe218c)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe218c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe218c)" (( "(") (binary_expression "pcVar19 + 0xe218c" (identifier "pcVar19") (+ "+") (number_literal "0xe218c")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar16 != 0) {\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }" (if "if") (parenthesized_expression "(iVar16 != 0)" (( "(") (binary_expression "iVar16 != 0" (identifier "iVar16") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);\n        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);\n        return 1;\n      }" ({ "{") (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" (* "*") (cast_expression "(int *)(iVar1 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1038)" (( "(") (binary_expression "iVar1 + 0x1038" (identifier "iVar1") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" (* "*") (cast_expression "(int *)(iVar1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1034)" (( "(") (binary_expression "iVar1 + 0x1034" (identifier "iVar1") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" (* "*") (cast_expression "(int *)(iVar1 + 0x103c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x103c)" (( "(") (binary_expression "iVar1 + 0x103c" (identifier "iVar1") (+ "+") (number_literal "0x103c")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          iVar14 = *(int *)(iVar13 + 0x264);\n          if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }\n        }" ({ "{") (expression_statement "iVar14 = *(int *)(iVar13 + 0x264);" (assignment_expression "iVar14 = *(int *)(iVar13 + 0x264)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(iVar13 + 0x264)" (* "*") (cast_expression "(int *)(iVar13 + 0x264)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + 0x264)" (( "(") (binary_expression "iVar13 + 0x264" (identifier "iVar13") (+ "+") (number_literal "0x264")) () ")"))))) (; ";")) (if_statement "if ((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {\n            return 1;\n          }" (if "if") (parenthesized_expression "((iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0))" (( "(") (binary_expression "(iVar14 != 0) &&\n             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)" (parenthesized_expression "(iVar14 != 0)" (( "(") (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)" (( "(") (comma_expression "iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0" (assignment_expression "iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe2544))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe2544)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe2544)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe2544)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe2544)" (( "(") (binary_expression "pcVar19 + 0xe2544" (identifier "pcVar19") (+ "+") (number_literal "0xe2544")) () ")"))))) () ")")) (argument_list "(iVar14,iVar16)" (( "(") (identifier "iVar14") (, ",") (identifier "iVar16") () ")")))) (, ",") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            return 1;\n          }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}"))) (expression_statement "(**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);" (call_expression "(**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe278c))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe278c)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe278c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe278c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe278c)" (( "(") (binary_expression "pcVar19 + 0xe278c" (identifier "pcVar19") (+ "+") (number_literal "0xe278c")) () ")"))))) () ")")) (argument_list "(iVar13 + 0x264,iVar16)" (( "(") (binary_expression "iVar13 + 0x264" (identifier "iVar13") (+ "+") (number_literal "0x264")) (, ",") (identifier "iVar16") () ")"))) (; ";")) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16)" (identifier "FUN_00062838") (argument_list "(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x20")) (, ",") (identifier "iVar16") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar19 + 0xe287c))\n                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe287c))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe287c)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe287c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe287c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe287c)" (( "(") (binary_expression "pcVar19 + 0xe287c" (identifier "pcVar19") (+ "+") (number_literal "0xe287c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (( "(") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x44")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x13db") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8ec")) () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar19 + 0xe287c))\n              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar19 + 0xe287c))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0xe287c)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0xe287c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe287c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe287c)" (( "(") (binary_expression "pcVar19 + 0xe287c" (identifier "pcVar19") (+ "+") (number_literal "0xe287c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar19 + 0xe2198) + 0x8ec)" (( "(") (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x13d8") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8ec")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar21 = *(code **)(pcVar19 + 0xe287c);" (assignment_expression "pcVar21 = *(code **)(pcVar19 + 0xe287c)" (identifier "pcVar21") (= "=") (pointer_expression "*(code **)(pcVar19 + 0xe287c)" (* "*") (cast_expression "(code **)(pcVar19 + 0xe287c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0xe287c)" (( "(") (binary_expression "pcVar19 + 0xe287c" (identifier "pcVar19") (+ "+") (number_literal "0xe287c")) () ")"))))) (; ";")) (expression_statement "iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;" (assignment_expression "iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970" (identifier "iVar16") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar19 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar21)" (( "(") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21")) () ")")) (argument_list "(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar16") (, ",") (number_literal "0x13d7") (, ",") (binary_expression "*(int *)(pcVar19 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar19 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar19 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar19 + 0xe2198)" (( "(") (binary_expression "pcVar19 + 0xe2198" (identifier "pcVar19") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8ec")) () ")"))) (; ";")) (if_statement "if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" (if "if") (parenthesized_expression "(iVar1 == 0)" (( "(") (binary_expression "iVar1 == 0" (identifier "iVar1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" ({ "{") (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2704)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2704)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2704)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2704)" (( "(") (binary_expression "pcVar21 + 0xe2704" (identifier "pcVar21") (+ "+") (number_literal "0xe2704")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (( "(") (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x954")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1402") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8cc")) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(iVar1 + 0x1054)" (* "*") (cast_expression "(int *)(iVar1 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1054)" (( "(") (binary_expression "iVar1 + 0x1054" (identifier "iVar1") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1050) != 0" (pointer_expression "*(int *)(iVar1 + 0x1050)" (* "*") (cast_expression "(int *)(iVar1 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1050)" (( "(") (binary_expression "iVar1 + 0x1050" (identifier "iVar1") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" ({ "{") (expression_statement "(**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar21 + 0xe246c))\n                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe246c))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe246c)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe246c)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe246c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe246c)" (( "(") (binary_expression "pcVar21 + 0xe246c" (identifier "pcVar21") (+ "+") (number_literal "0xe246c")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8b8")) (, ",") (number_literal "0x1405") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar21 + 0xe2014)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2014)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2014)" (( "(") (binary_expression "pcVar21 + 0xe2014" (identifier "pcVar21") (+ "+") (number_literal "0xe2014")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar16 != 0) {\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }" (if "if") (parenthesized_expression "(iVar16 != 0)" (( "(") (binary_expression "iVar16 != 0" (identifier "iVar16") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);\n      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);\n      return 1;\n    }" ({ "{") (expression_statement "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar13") (= "=") (pointer_expression "*(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1038)" (* "*") (cast_expression "(int *)(iVar1 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1038)" (( "(") (binary_expression "iVar1 + 0x1038" (identifier "iVar1") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(iVar1 + 0x1034) * 4" (pointer_expression "*(int *)(iVar1 + 0x1034)" (* "*") (cast_expression "(int *)(iVar1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x1034)" (( "(") (binary_expression "iVar1 + 0x1034" (identifier "iVar1") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar1 + 0x103c) == 0)" (( "(") (binary_expression "*(int *)(iVar1 + 0x103c) == 0" (pointer_expression "*(int *)(iVar1 + 0x103c)" (* "*") (cast_expression "(int *)(iVar1 + 0x103c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar1 + 0x103c)" (( "(") (binary_expression "iVar1 + 0x103c" (identifier "iVar1") (+ "+") (number_literal "0x103c")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar14 = *(int *)(iVar13 + 0x26c);\n        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }\n      }" ({ "{") (expression_statement "iVar14 = *(int *)(iVar13 + 0x26c);" (assignment_expression "iVar14 = *(int *)(iVar13 + 0x26c)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(iVar13 + 0x26c)" (* "*") (cast_expression "(int *)(iVar13 + 0x26c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar13 + 0x26c)" (( "(") (binary_expression "iVar13 + 0x26c" (identifier "iVar13") (+ "+") (number_literal "0x26c")) () ")"))))) (; ";")) (if_statement "if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           ) {\n          return 1;\n        }" (if "if") (parenthesized_expression "((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)\n           )" (( "(") (binary_expression "(iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)" (parenthesized_expression "(iVar14 != 0)" (( "(") (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)" (( "(") (comma_expression "iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0" (assignment_expression "iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16)" (identifier "iVar14") (= "=") (call_expression "(**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe23cc))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe23cc)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe23cc)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe23cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe23cc)" (( "(") (binary_expression "pcVar21 + 0xe23cc" (identifier "pcVar21") (+ "+") (number_literal "0xe23cc")) () ")"))))) () ")")) (argument_list "(iVar14,iVar16)" (( "(") (identifier "iVar14") (, ",") (identifier "iVar16") () ")")))) (, ",") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          return 1;\n        }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}"))) (expression_statement "(**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);" (call_expression "(**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2614))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2614)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2614)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2614)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2614)" (( "(") (binary_expression "pcVar21 + 0xe2614" (identifier "pcVar21") (+ "+") (number_literal "0xe2614")) () ")"))))) () ")")) (argument_list "(iVar13 + 0x26c,iVar16)" (( "(") (binary_expression "iVar13 + 0x26c" (identifier "iVar13") (+ "+") (number_literal "0x26c")) (, ",") (identifier "iVar16") () ")"))) (; ";")) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16)" (identifier "FUN_00062838") (argument_list "(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x10")) (, ",") (identifier "iVar16") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2704)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2704)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2704)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2704)" (( "(") (binary_expression "pcVar21 + 0xe2704" (identifier "pcVar21") (+ "+") (number_literal "0xe2704")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (( "(") (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x14")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1406") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8cc")) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(pcVar21 + 0xe2704))\n                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar21 + 0xe2704))" (( "(") (pointer_expression "**(code **)(pcVar21 + 0xe2704)" (* "*") (pointer_expression "*(code **)(pcVar21 + 0xe2704)" (* "*") (cast_expression "(code **)(pcVar21 + 0xe2704)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar21 + 0xe2704)" (( "(") (binary_expression "pcVar21 + 0xe2704" (identifier "pcVar21") (+ "+") (number_literal "0xe2704")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc)" (( "(") (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1403") (, ",") (binary_expression "*(int *)(pcVar21 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar21 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar21 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar21 + 0xe2020)" (( "(") (binary_expression "pcVar21 + 0xe2020" (identifier "pcVar21") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8cc")) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) 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: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (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: (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 (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: (identifier))) (labeled_statement label: (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: (identifier)))) arguments: (argument_list))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (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: (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 (number_literal) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (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))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (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))))) right: (identifier))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (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))))) right: (identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (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 (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (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))))))) (expression_statement (assignment_expression left: (identifier) right: (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))))))) (expression_statement (assignment_expression left: (identifier) right: (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))))))) (expression_statement (assignment_expression left: (identifier) right: (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (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 (number_literal) (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier))))) consequence: (compound_statement (return_statement (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (goto_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: (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: (identifier) right: (number_literal)))))) (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 (identifier) (identifier) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (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: (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 (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: (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)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) 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: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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 (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)) (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)))))) (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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) 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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (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: (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: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (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)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (return_statement (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: (identifier) right: (number_literal)) (identifier)))) (expression_statement (call_expression function: (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)) (identifier)))) (return_statement (number_literal)))) (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: (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: (identifier))) (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: (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) (identifier) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (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 declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (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: (number_literal))) consequence: (compound_statement (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: (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 (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)) (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)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (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: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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 (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (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: (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: (subscript_expression argument: (identifier) index: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) 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: (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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))))))) (expression_statement (assignment_expression left: (identifier) right: (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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (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))))))))) (labeled_statement label: (statement_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 (identifier) (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: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (unary_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: (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 (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: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (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: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) right: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (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: (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: (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)))))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (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))))))) (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: (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: (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (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: (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)))) (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (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: (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)))) (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (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))) (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: (number_literal))) 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: (identifier) right: (number_literal))))) 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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (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)))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal)))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (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: (subscript_expression argument: (identifier) index: (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: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (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)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (return_statement (pointer_expression argument: (identifier)))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (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: (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))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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: (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))) (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))))) (expression_statement (assignment_expression left: (identifier) right: (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 (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) 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: (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 (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)) (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)))))) (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (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 (return_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: (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))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))))) (return_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: (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))))) (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: (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))) (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))))) (expression_statement (assignment_expression left: (identifier) right: (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: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_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 (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: (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) (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: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) 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 (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))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (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)))))) (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 (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)) (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))) (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 (assignment_expression left: (identifier) right: (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 (identifier) (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))) right: (number_literal)) (identifier)))) (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (return_statement (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))) (expression_statement (assignment_expression left: (identifier) right: (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 (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) 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: (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 (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)) (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)))))) (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (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 (return_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: (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))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))))) (return_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: (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))))) (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 (assignment_expression left: (identifier) right: (identifier))) (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: (identifier))) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) 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: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (number_literal))) consequence: (compound_statement (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: (number_literal))) consequence: (compound_statement (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: (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: (identifier)) right: (identifier)))))))) alternative: (else_clause (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 (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)) (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)) (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: (identifier)) right: (identifier)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (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)) (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) (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)) (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))))))) (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: (pointer_expression argument: (identifier)) right: (char_literal (character)))) 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 (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)) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) (identifier))))) (if_statement condition: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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: (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: (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)))) (goto_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 (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)) (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: (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: (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: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (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: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (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)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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: (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: (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (return_statement (identifier)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (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 (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 (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: (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: (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: (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: (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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: (number_literal))) consequence: (compound_statement (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: (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 (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)) (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)) (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: (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: (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: (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 (return_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: (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))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (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)) (identifier))))) (return_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: (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: (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: (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) (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (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: (number_literal))) consequence: (compound_statement (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: (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 (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)) (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)) (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: (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: (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: (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: (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (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)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (return_statement (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)))) (expression_statement (call_expression function: (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)) (identifier)))) (return_statement (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) (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 (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: (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: (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: (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) (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (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)))) (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: (number_literal))) consequence: (compound_statement (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: (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 (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)) (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)) (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: (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: (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: (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: (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (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)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (return_statement (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)))) (expression_statement (call_expression function: (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)) (identifier)))) (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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: (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: (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: (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)))))

int MASKED(int *param_1,undefined *param_2)

{
  int iVar1;
  undefined4 uVar2;
  int *piVar3;
  int *piVar4;
  int *piVar5;
  undefined *puVar6;
  int *piVar7;
  int *piVar8;
  undefined *puVar9;
  undefined8 *puVar10;
  char *pcVar11;
  uint uVar12;
  int iVar13;
  int iVar14;
  undefined4 uVar15;
  int *unaff_s0;
  undefined *unaff_s1;
  int iVar16;
  undefined *puVar17;
  undefined4 *puVar18;
  undefined8 *unaff_s3;
  code *pcVar19;
  undefined *puVar20;
  code *pcVar21;
  code *pcVar22;
  code *pcVar23;
  double dVar24;
  double dVar25;
  float fVar26;
  undefined8 uVar27;
  undefined1 auStack_325c [4096];
  undefined1 auStack_225c [4096];
  int iStack_125c;
  int *piStack_1254;
  int *piStack_1250;
  undefined4 *puStack_124c;
  undefined8 *puStack_1248;
  code *pcStack_1244;
  int iStack_1230;
  int *piStack_122c;
  code *pcStack_1228;
  int *piStack_1220;
  code *pcStack_121c;
  undefined8 uStack_1218;
  undefined8 uStack_1200;
  code *pcStack_11f0;
  int aiStack_11e4 [1024];
  int *piStack_1e4;
  int *piStack_1e0;
  int *piStack_1dc;
  undefined *puStack_1d8;
  code *pcStack_1d4;
  double dStack_1d0;
  int iStack_1b8;
  int *piStack_1b4;
  code *pcStack_1b0;
  int *piStack_1a8;
  code *pcStack_1a4;
  int iStack_188;
  undefined *puStack_184;
  code *pcStack_180;
  uint uStack_178;
  undefined4 uStack_174;
  int aiStack_170 [10];
  double dStack_148;
  double dStack_140;
  double dStack_138;
  double dStack_130;
  uint uStack_128;
  undefined4 uStack_124;
  int aiStack_120 [2];
  int aiStack_118 [23];
  int iStack_bc;
  int *piStack_b4;
  undefined *puStack_b0;
  undefined *puStack_ac;
  undefined8 *puStack_a8;
  code *pcStack_a4;
  int iStack_90;
  undefined *puStack_8c;
  undefined *puStack_88;
  int *piStack_80;
  undefined *puStack_7c;
  undefined *puStack_78;
  code *pcStack_74;
  undefined *local_60;
  int *local_5c;
  undefined8 local_50 [3];
  undefined8 local_38;
  undefined8 local_30;
  undefined8 local_28;
  int local_1c;
  
  puVar17 = PTR___stack_chk_guard_0014f4cc;
  local_1c = *(int *)PTR___stack_chk_guard_0014f4cc;
  if (param_1 == (int *)0x0) {
    (*(code *)PTR___assert_fail_0014f720)
              (PTR_s_t_char____NULL_0014f03c + -0x954,PTR_s_t_char____NULL_0014f03c + -0x970,0x125e,
               PTR_s_t_char____NULL_0014f03c + 0xa1c);
    param_1 = unaff_s0;
LAB_0006bfa4:
    (*(code *)PTR___stack_chk_fail_0014f38c)();
  }
  else if (param_1[0x415] == -0x54535255) {
    if (param_1[0x414] != 0) {
      local_5c = param_1 + 1;
      local_60 = PTR_s_the_image__define_format_option_d_0014f030 + -0x131c;
      (*(code *)PTR_LogMagickEvent_0014f488)
                (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,
                 PTR_s_t_char____NULL_0014f03c + 0xa08,0x1261);
    }
    iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);
    if (param_1[0x40f] == 0) {
      if (*(undefined **)(iVar1 + 0x2c8) != param_2) {
        *(undefined **)(iVar1 + 0x2c8) = param_2;
        goto joined_r0x0006bed8;
      }
    }
    else {
      *(undefined **)(iVar1 + 0x2c8) = param_2;
joined_r0x0006bed8:
      if (param_2 == (undefined *)0x3) {
        unaff_s3 = local_50;
        (*(code *)PTR_GetAffineMatrix_0014f1f8)(unaff_s3);
        iVar1 = *(int *)(param_1[0x40e] + param_1[0x40d] * 4);
        local_50[0] = *(undefined8 *)(iVar1 + 0x2b8);
        local_38 = *(undefined8 *)(iVar1 + 0x2c0);
        local_30 = *(undefined8 *)(iVar1 + 0x2a8);
        local_28 = *(undefined8 *)(iVar1 + 0x2b0);
        FUN_00062640(param_1,unaff_s3);
      }
      uVar2 = (*(code *)PTR_CommandOptionToMnemonic_0014f168)(6,param_2);
      FUN_00062838(param_1,PTR_s_t_char____NULL_0014f03c + -0x148,uVar2);
    }
    unaff_s1 = param_2;
    if (local_1c == *(int *)puVar17) {
      return *(int *)puVar17;
    }
    goto LAB_0006bfa4;
  }
  puVar9 = PTR_s_t_char____NULL_0014f03c + -0x970;
  pcVar21 = DrawSetDensity;
  piVar5 = (int *)(PTR_s_t_char____NULL_0014f03c + 0x419c);
  puVar6 = PTR___assert_fail_0014f720;
  (*(code *)PTR___assert_fail_0014f720)(piVar5,puVar9,0x125f,PTR_s_t_char____NULL_0014f03c + 0xa1c);
  puVar20 = puVar6 + 0xeb02c;
  puStack_78 = puVar17;
  puStack_88 = puVar20;
  piStack_80 = param_1;
  puStack_7c = unaff_s1;
  pcStack_74 = pcVar21;
  if (piVar5 == (int *)0x0) {
    iVar1 = *(int *)(puVar6 + 0xe3068) + 0x9f8;
    (**(code **)(puVar6 + 0xe374c))
              (*(int *)(puVar6 + 0xe3068) + -0x954,*(int *)(puVar6 + 0xe3068) + -0x970,0x1293,iVar1)
    ;
LAB_0006c128:
    iVar1 = iVar1 + 0x9f8;
    (**(code **)(puVar20 + -0x78e0))
              (*(int *)(puVar20 + -0x7fc4) + -0x134,*(int *)(puVar20 + -0x7fc4) + -0x970);
  }
  else {
    if (piVar5[0x414] != 0) {
      iStack_90 = *(int *)(puVar6 + 0xe305c) + -0x131c;
      puStack_8c = puVar9;
      (**(code **)(puVar6 + 0xe34b4))
                (0x40000,*(int *)(puVar6 + 0xe3068) + -0x970,*(int *)(puVar6 + 0xe3068) + 0x9e8,
                 0x1295);
    }
    iVar1 = *(int *)(puStack_88 + -0x7fc4);
    param_1 = piVar5;
    unaff_s1 = puVar9;
    puVar20 = puStack_88;
    if (piVar5[0x415] == -0x54535255) {
      if (puVar9 != (undefined *)0x0) {
        iVar16 = *(int *)(piVar5[0x40e] + piVar5[0x40d] * 4);
        iVar1 = *(int *)(iVar16 + 0x290);
        pcVar21 = *(code **)(puStack_88 + -0x79d0);
        if (iVar1 != 0) {
          if ((piVar5[0x40f] == 0) &&
             (iVar1 = (**(code **)(puStack_88 + -0x7c18))(iVar1,puVar9,0x1297), iVar1 == 0)) {
            return 1;
          }
          pcVar21 = *(code **)(puStack_88 + -0x79d0);
        }
        (*pcVar21)(iVar16 + 0x290,puVar9);
        FUN_00062838(piVar5,*(int *)(puStack_88 + -0x7fc4) + -0x114,puVar9);
        return 1;
      }
      goto LAB_0006c128;
    }
  }
  pcVar19 = *(code **)(puVar20 + -0x78e0);
  puVar10 = (undefined8 *)(*(int *)(puVar20 + -0x7fc4) + -0x970);
  pcVar22 = DrawSetFillColor;
  puVar6 = (undefined *)(*(int *)(puVar20 + -0x7fc4) + 0x419c);
  (*pcVar19)(puVar6,puVar10,0x1296,iVar1 + 0x9f8);
  pcVar21 = pcVar19 + 0xeae9c;
  piVar5 = *(int **)(pcVar19 + 0xe3368);
  puStack_ac = puVar17;
  iStack_bc = *piVar5;
  pcStack_180 = pcVar21;
  piStack_b4 = param_1;
  puStack_b0 = unaff_s1;
  puStack_a8 = unaff_s3;
  pcStack_a4 = pcVar22;
  if (puVar6 != (undefined *)0x0) {
    if (*(int *)(puVar6 + 0x1054) == -0x54535255) {
      if (*(int *)(puVar6 + 0x1050) != 0) {
        puStack_184 = puVar6 + 4;
        iStack_188 = *(int *)(pcVar19 + 0xe2ecc) + -0x131c;
        (**(code **)(pcVar19 + 0xe3324))
                  (0x40000,*(int *)(pcVar19 + 0xe2ed8) + -0x970,*(int *)(pcVar19 + 0xe2ed8) + 0x9c0,
                   0x12c4);
      }
      pcVar21 = pcStack_180;
      if (puVar10 == (undefined8 *)0x0) {
        (**(code **)(pcStack_180 + -0x78e0))
                  (*(int *)(pcStack_180 + -0x7fc4) + -0x104,*(int *)(pcStack_180 + -0x7fc4) + -0x970
                   ,0x12c5,*(int *)(pcStack_180 + -0x7fc4) + 0x9d4);
        unaff_s3 = puVar10;
        goto LAB_0006c624;
      }
      param_1 = aiStack_170;
      (**(code **)(pcStack_180 + -0x77a0))(puVar10,param_1);
      piVar7 = param_1;
      piVar8 = aiStack_118;
      do {
        piVar4 = piVar8;
        piVar3 = piVar7;
        piVar7 = piVar3 + 4;
        iVar13 = piVar3[1];
        iVar16 = piVar3[2];
        iVar1 = piVar3[3];
        *piVar4 = *piVar3;
        piVar4[1] = iVar13;
        piVar4[2] = iVar16;
        piVar4[3] = iVar1;
        piVar8 = piVar4 + 4;
      } while (piVar7 != aiStack_120);
      iVar16 = *(int *)(puVar6 + 0x1034);
      iVar1 = *(int *)(puVar6 + 0x1038);
      iVar14 = piVar3[5];
      iVar13 = *(int *)(puVar6 + 0x103c);
      piVar4[4] = *piVar7;
      piVar4[5] = iVar14;
      iVar1 = *(int *)(iVar1 + iVar16 * 4);
      if (iVar13 == 0) {
        if (*(int *)(iVar1 + 0x50) != 0) {
          uVar2 = *(undefined4 *)(iVar1 + 0x94);
          uVar12 = *(uint *)(iVar1 + 0x90);
          if (aiStack_170[2] == 0) {
            uStack_124 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);
            uStack_128 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);
          }
LAB_0006c260:
          dVar24 = (double)CONCAT44(uVar12,uVar2) - (double)CONCAT44(uStack_128,uStack_124);
          uVar15 = SUB84(dVar24,0);
          if (dVar24 < 0.0) {
            uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;
            dVar24 = -dVar24;
            uStack_174 = uVar15;
          }
          iVar16 = *(int *)(pcStack_180 + -0x7fc4);
          if (dVar24 < *(double *)(iVar16 + 0x1a98)) {
            if ((double)CONCAT44(uVar12,uVar2) < 0.0) {
              uVar12 = uVar12 ^ 0x80000000;
              uStack_178 = uVar12;
              uStack_174 = uVar2;
            }
            if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uVar12,uVar2)) {
              if ((double)CONCAT44(uStack_128,uStack_124) < 0.0) {
                uStack_128 = uStack_128 ^ 0x80000000;
                uStack_178 = uStack_128;
                uStack_174 = uStack_124;
              }
              if (*(double *)(iVar16 + 0x1a98) <= (double)CONCAT44(uStack_128,uStack_124)) {
                dVar24 = *(double *)(iVar1 + 0x70);
                goto LAB_0006c398;
              }
            }
            goto LAB_0006c360;
          }
          goto LAB_0006c2d0;
        }
        if (aiStack_170[2] != 0) {
          uVar2 = *(undefined4 *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f4);
          uVar12 = *(uint *)(*(int *)(pcStack_180 + -0x7fd4) + 0x75f0);
          goto LAB_0006c260;
        }
        iVar16 = *(int *)(pcStack_180 + -0x7fc4);
        dVar24 = *(double *)(iVar1 + 0x70);
LAB_0006c398:
        dVar24 = dVar24 - dStack_148;
        uVar2 = SUB84(dVar24,0);
        if (dVar24 < 0.0) {
          uStack_178 = (uint)((ulonglong)dVar24 >> 0x20) ^ 0x80000000;
          dVar24 = -dVar24;
          uStack_174 = uVar2;
        }
        if (*(double *)(iVar16 + 0x1a98) <= dVar24) goto LAB_0006c2d0;
        dStack_140 = *(double *)(iVar1 + 0x78) - dStack_140;
        uVar2 = SUB84(dStack_140,0);
        if (dStack_140 < 0.0) {
          uStack_178 = (uint)((ulonglong)dStack_140 >> 0x20) ^ 0x80000000;
          dStack_140 = -dStack_140;
          uStack_174 = uVar2;
        }
        if (*(double *)(iVar16 + 0x1a98) <= dStack_140) goto LAB_0006c2d0;
        dStack_138 = *(double *)(iVar1 + 0x80) - dStack_138;
        uVar2 = SUB84(dStack_138,0);
        if (dStack_138 < 0.0) {
          uStack_178 = (uint)((ulonglong)dStack_138 >> 0x20) ^ 0x80000000;
          dStack_138 = -dStack_138;
          uStack_174 = uVar2;
        }
        if (*(double *)(iVar16 + 0x1a98) <= dStack_138) goto LAB_0006c2d0;
        if (*(int *)(iVar1 + 0x4c) == 2) {
          dStack_130 = *(double *)(iVar1 + 0x88) - dStack_130;
          uVar2 = SUB84(dStack_130,0);
          if (dStack_130 < 0.0) {
            uStack_178 = (uint)((ulonglong)dStack_130 >> 0x20) ^ 0x80000000;
            dStack_130 = -dStack_130;
            uStack_174 = uVar2;
          }
          if (*(double *)(iVar16 + 0x1a98) <= dStack_130) goto LAB_0006c2d0;
        }
      }
      else {
LAB_0006c2d0:
        piVar7 = aiStack_118;
        piVar8 = (int *)(iVar1 + 0x48);
        do {
          piVar4 = piVar8;
          piVar3 = piVar7;
          piVar7 = piVar3 + 4;
          iVar13 = piVar3[1];
          iVar16 = piVar3[2];
          iVar1 = piVar3[3];
          *piVar4 = *piVar3;
          piVar4[1] = iVar13;
          piVar4[2] = iVar16;
          piVar4[3] = iVar1;
          piVar8 = piVar4 + 4;
        } while (piVar7 != aiStack_118 + 0x14);
        iVar16 = *(int *)(pcStack_180 + -0x7fc4);
        iVar1 = piVar3[5];
        puVar10 = (undefined8 *)(*(int *)(pcStack_180 + -0x7f90) + 0x2838);
        piVar4[4] = *piVar7;
        piVar4[5] = iVar1;
        FUN_00062838(puVar6,iVar16 + -0xdc);
        FUN_00063d20(puVar6,param_1);
        FUN_00062838(puVar6,*(int *)(pcStack_180 + -0x7fc4) + -0x224);
      }
LAB_0006c360:
      pcVar21 = pcStack_180;
      if (iStack_bc == *piVar5) {
        return *piVar5;
      }
    }
    else {
LAB_0006c624:
      puVar10 = unaff_s3;
      (**(code **)(pcVar21 + -0x78e0))
                (*(int *)(pcVar21 + -0x7fc4) + 0x419c,*(int *)(pcVar21 + -0x7fc4) + -0x970,0x12c2,
                 *(int *)(pcVar21 + -0x7fc4) + 0x9d4);
    }
    (**(code **)(pcVar21 + -0x7c74))();
    puVar17 = puVar6;
    unaff_s3 = puVar10;
  }
  uVar2 = 0x12c1;
  pcVar19 = *(code **)(pcVar21 + -0x78e0);
  iVar1 = *(int *)(pcVar21 + -0x7fc4) + 0x9d4;
  pcVar22 = DrawSetFillOpacity;
  piVar7 = (int *)(*(int *)(pcVar21 + -0x7fc4) + -0x954);
  (*pcVar19)(piVar7,*(int *)(pcVar21 + -0x7fc4) + -0x970);
  pcStack_1b0 = pcVar19 + 0xea988;
  dVar24 = (double)CONCAT44(uVar2,iVar1);
  piStack_1e0 = param_1;
  piStack_1a8 = param_1;
  pcStack_1a4 = pcVar22;
  if (piVar7 != (int *)0x0) {
    if (piVar7[0x415] == -0x54535255) {
      if (piVar7[0x414] != 0) {
        iStack_1b8 = *(int *)(pcVar19 + 0xe29b8) + -0x131c;
        piStack_1b4 = piVar7 + 1;
        (**(code **)(pcVar19 + 0xe2e10))
                  (0x40000,*(int *)(pcVar19 + 0xe29c4) + -0x970,*(int *)(pcVar19 + 0xe29c4) + 0x998,
                   0x12f4);
      }
      iVar1 = *(int *)(piVar7[0x40e] + piVar7[0x40d] * 4);
      dVar25 = (double)(float)(dVar24 * *(double *)(*(int *)(pcStack_1b0 + -0x7fd4) + 0x75f0));
      if ((piVar7[0x40f] == 0) && (*(double *)(iVar1 + 0x90) == dVar25)) {
        return iVar1;
      }
      iVar16 = *(int *)(pcStack_1b0 + -0x7fc4);
      *(double *)(iVar1 + 0x90) = dVar25;
      iVar1 = FUN_00062838(piVar7,iVar16 + -0xd4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));
      return iVar1;
    }
    (**(code **)(pcVar19 + 0xe30a8))
              (*(int *)(pcVar19 + 0xe29c4) + 0x419c,*(int *)(pcVar19 + 0xe29c4) + -0x970,0x12f2,
               *(int *)(pcVar19 + 0xe29c4) + 0x9ac);
    piStack_1e0 = piVar7;
  }
  uVar2 = 0x12f1;
  pcVar22 = *(code **)(pcVar19 + 0xe30a8);
  iVar1 = *(int *)(pcVar19 + 0xe29c4) + 0x9ac;
  pcVar23 = DrawSetFontResolution;
  piVar8 = (int *)(*(int *)(pcVar19 + 0xe29c4) + -0x954);
  (*pcVar22)(piVar8,*(int *)(pcVar19 + 0xe29c4) + -0x970);
  pcVar21 = pcVar22 + 0xea838;
  puVar18 = *(undefined4 **)(pcVar22 + 0xe2d04);
  piStack_1e4 = (int *)*puVar18;
  uVar27 = CONCAT44(uVar2,iVar1);
  piVar7 = piStack_1e0;
  pcStack_11f0 = pcVar21;
  piStack_1dc = piVar5;
  puStack_1d8 = puVar17;
  pcStack_1d4 = pcVar23;
  dStack_1d0 = dVar24;
  if (piVar8 == (int *)0x0) {
LAB_0006c904:
    iVar16 = 0x131f;
    iVar1 = *(int *)(pcVar22 + 0xe2874) + 0x980;
    piVar8 = (int *)(*(int *)(pcVar22 + 0xe2874) + -0x954);
    (**(code **)(pcVar22 + 0xe2f58))(piVar8,*(int *)(pcVar22 + 0xe2874) + -0x970);
  }
  else {
    piVar7 = piVar8;
    if (piVar8[0x415] != -0x54535255) {
      (**(code **)(pcVar22 + 0xe2f58))
                (*(int *)(pcVar22 + 0xe2874) + 0x419c,*(int *)(pcVar22 + 0xe2874) + -0x970,0x1320,
                 *(int *)(pcVar22 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (piVar8[0x414] != 0) {
      iVar1 = 0x1322;
      uStack_1200 = CONCAT44(*(int *)(pcVar22 + 0xe2868) + -0x131c,piVar8 + 1);
      (**(code **)(pcVar22 + 0xe2cc0))
                (0x40000,*(int *)(pcVar22 + 0xe2874) + -0x970,*(int *)(pcVar22 + 0xe2874) + 0x968);
    }
    piVar5 = aiStack_11e4;
    iVar16 = *(int *)(pcStack_11f0 + -0x7fc4) + -0xc0;
    uStack_1200 = uVar27;
    (**(code **)(pcStack_11f0 + -0x7e80))(piVar5,0x1000);
    (**(code **)(pcStack_11f0 + -0x79d0))
              (*(int *)(piVar8[0x40e] + piVar8[0x40d] * 4) + 0x290,piVar5);
    piVar8 = piStack_1e4;
    pcVar21 = pcStack_11f0;
    if (piStack_1e4 == (int *)*puVar18) {
      return 1;
    }
  }
  pcVar21 = *(code **)(pcVar21 + -0x7c74);
  pcVar19 = DrawSetOpacity;
  (*pcVar21)();
  pcStack_1228 = pcVar21 + 0xea6cc;
  dVar24 = (double)CONCAT44(iVar16,iVar1);
  piStack_1254 = piVar7;
  piStack_1220 = piVar7;
  pcStack_121c = pcVar19;
  uStack_1218 = uVar27;
  if (piVar8 != (int *)0x0) {
    if (piVar8[0x415] == -0x54535255) {
      if (piVar8[0x414] != 0) {
        iStack_1230 = *(int *)(pcVar21 + 0xe26fc) + -0x131c;
        piStack_122c = piVar8 + 1;
        (**(code **)(pcVar21 + 0xe2b54))
                  (0x40000,*(int *)(pcVar21 + 0xe2708) + -0x970,*(int *)(pcVar21 + 0xe2708) + 0x948,
                   0x134a);
      }
      iVar1 = *(int *)(piVar8[0x40e] + piVar8[0x40d] * 4);
      fVar26 = (float)(dVar24 * *(double *)(*(int *)(pcStack_1228 + -0x7fd4) + 0x75f0));
      if ((piVar8[0x40f] == 0) && (*(float *)(iVar1 + 0x2cc) == fVar26)) {
        return iVar1;
      }
      iVar16 = *(int *)(pcStack_1228 + -0x7fc4);
      *(float *)(iVar1 + 0x2cc) = fVar26;
      iVar1 = FUN_00062838(piVar8,iVar16 + -0xb4,(int)((ulonglong)dVar24 >> 0x20),SUB84(dVar24,0));
      return iVar1;
    }
    (**(code **)(pcVar21 + 0xe2dec))
              (*(int *)(pcVar21 + 0xe2708) + 0x419c,*(int *)(pcVar21 + 0xe2708) + -0x970,0x1348,
               *(int *)(pcVar21 + 0xe2708) + 0x958);
    piStack_1254 = piVar8;
  }
  pcVar19 = *(code **)(pcVar21 + 0xe2dec);
  pcVar11 = (char *)(*(int *)(pcVar21 + 0xe2708) + -0x970);
  pcVar22 = DrawSetFillPatternURL;
  iVar1 = *(int *)(pcVar21 + 0xe2708) + -0x954;
  (*pcVar19)(iVar1,pcVar11,0x1347,*(int *)(pcVar21 + 0xe2708) + 0x958);
  piVar7 = *(int **)(pcVar19 + 0xe2a4c);
  iStack_125c = *piVar7;
  piStack_1250 = piVar5;
  puStack_124c = puVar18;
  puStack_1248 = unaff_s3;
  pcStack_1244 = pcVar22;
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) == 0) {
        iVar16 = *(int *)(&DAT_00001004 + iVar1);
      }
      else {
        (**(code **)(pcVar19 + 0xe2a08))
                  (0x40000,*(int *)(pcVar19 + 0xe25bc) + -0x970,*(int *)(pcVar19 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11);
        iVar16 = *(int *)(&DAT_00001004 + iVar1);
      }
      if (iVar16 == 0) {
        (**(code **)(pcVar19 + 0xe283c))
                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar19 + 0xe25bc) + -0x970,
                   *(int *)(pcVar19 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(pcVar19 + 0xe25bc) + -0x225c,*(int *)(pcVar19 + 0xe25ac) + 0x5cf4,
                   iVar1 + 4);
      }
      if (pcVar11 != (char *)0x0) {
        iVar13 = *(int *)(pcVar19 + 0xe25ac);
        if (*pcVar11 == '#') {
          (**(code **)(pcVar19 + 0xe2700))
                    (auStack_325c,0x1000,*(int *)(pcVar19 + 0xe25b0) + -0x131c,pcVar11 + 1);
          iVar16 = (**(code **)(pcVar19 + 0xe2bc8))
                             (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_325c);
          if (iVar16 == 0) {
            iVar13 = *(int *)(pcVar19 + 0xe25ac);
            uVar15 = 0x1386;
            uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);
            iVar14 = *(int *)(pcVar19 + 0xe25bc);
            iVar16 = *(int *)(pcVar19 + 0xe25bc);
            pcVar21 = *(code **)(pcVar19 + 0xe283c);
            iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(code **)(pcVar19 + 0xe2700))
                    (auStack_225c,0x1000,*(int *)(pcVar19 + 0xe25bc) + -0x68,pcVar11);
          iVar16 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
          if (*(double *)(iVar16 + 0x90) != 0.0) {
            *(double *)(iVar16 + 0x90) = (double)*(float *)(iVar16 + 0x2cc);
          }
          iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x60;
          FUN_00062838(iVar1,iVar16,auStack_225c);
          iVar13 = 1;
        }
        else {
          uVar15 = 0x1380;
          uVar2 = *(undefined4 *)(&DAT_00001008 + iVar1);
          iVar14 = *(int *)(pcVar19 + 0xe25bc);
          iVar16 = *(int *)(pcVar19 + 0xe25bc);
          pcVar21 = *(code **)(pcVar19 + 0xe283c);
          iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x84;
LAB_0006cb28:
          iVar16 = iVar16 + -0x970;
          (*pcVar21)(uVar2,iVar16,iVar14 + 0x918,uVar15,0x1cc,iVar1,iVar13 + 0x5cf4,pcVar11);
          iVar13 = 0;
        }
        iVar1 = iStack_125c;
        if (iStack_125c == *piVar7) {
          return iVar13;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(code **)(pcVar19 + 0xe2ca0))
                (*(int *)(pcVar19 + 0xe25bc) + 0x419c,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(pcVar19 + 0xe25bc) + 0x930);
    }
    (**(code **)(pcVar19 + 0xe2ca0))
              (*(int *)(pcVar19 + 0xe25bc) + -0xa4,*(int *)(pcVar19 + 0xe25bc) + -0x970,0x137d,
               *(int *)(pcVar19 + 0xe25bc) + 0x930);
  }
  iVar16 = *(int *)(pcVar19 + 0xe25bc) + -0x970;
  iVar1 = *(int *)(pcVar19 + 0xe25bc) + -0x954;
  (**(code **)(pcVar19 + 0xe2ca0))(iVar1,iVar16,0x1377,*(int *)(pcVar19 + 0xe25bc) + 0x930);
LAB_0006cd54:
  pcVar21 = *(code **)(pcVar19 + 0xe290c);
  (*pcVar21)();
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar21 + 0xe2728))
                  (0x40000,*(int *)(pcVar21 + 0xe22dc) + -0x970,*(int *)(pcVar21 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(pcVar21 + 0xe22d0) + -0x131c,iVar1 + 4);
      }
      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar13 + 0x240) == iVar16)) {
        return iVar13;
      }
      pcVar19 = *(code **)(pcVar21 + 0xe2408);
      *(int *)(iVar13 + 0x240) = iVar16;
      uVar2 = (*pcVar19)(0x1a,iVar16);
      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe22dc) + -0x54,uVar2);
      return iVar1;
    }
    (**(code **)(pcVar21 + 0xe29c0))
              (*(int *)(pcVar21 + 0xe22dc) + 0x419c,*(int *)(pcVar21 + 0xe22dc) + -0x970,0x13af,
               *(int *)(pcVar21 + 0xe22dc) + 0x908);
  }
  pcVar19 = *(code **)(pcVar21 + 0xe29c0);
  iVar16 = *(int *)(pcVar21 + 0xe22dc) + -0x970;
  iVar1 = *(int *)(pcVar21 + 0xe22dc) + -0x954;
  (*pcVar19)(iVar1,iVar16,0x13ae,*(int *)(pcVar21 + 0xe22dc) + 0x908);
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar19 + 0xe25e4))
                  (0x40000,*(int *)(pcVar19 + 0xe2198) + -0x970,*(int *)(pcVar19 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(pcVar19 + 0xe218c) + -0x131c,iVar1 + 4);
      }
      if (iVar16 != 0) {
        iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
        if (*(int *)(iVar1 + 0x103c) == 0) {
          iVar14 = *(int *)(iVar13 + 0x264);
          if ((iVar14 != 0) &&
             (iVar14 = (**(code **)(pcVar19 + 0xe2544))(iVar14,iVar16), iVar14 == 0)) {
            return 1;
          }
        }
        (**(code **)(pcVar19 + 0xe278c))(iVar13 + 0x264,iVar16);
        FUN_00062838(iVar1,*(int *)(pcVar19 + 0xe2198) + -0x20,iVar16);
        return 1;
      }
      (**(code **)(pcVar19 + 0xe287c))
                (*(int *)(pcVar19 + 0xe2198) + -0x44,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13db,
                 *(int *)(pcVar19 + 0xe2198) + 0x8ec);
    }
    (**(code **)(pcVar19 + 0xe287c))
              (*(int *)(pcVar19 + 0xe2198) + 0x419c,*(int *)(pcVar19 + 0xe2198) + -0x970,0x13d8,
               *(int *)(pcVar19 + 0xe2198) + 0x8ec);
  }
  pcVar21 = *(code **)(pcVar19 + 0xe287c);
  iVar16 = *(int *)(pcVar19 + 0xe2198) + -0x970;
  iVar1 = *(int *)(pcVar19 + 0xe2198) + -0x954;
  (*pcVar21)(iVar1,iVar16,0x13d7,*(int *)(pcVar19 + 0xe2198) + 0x8ec);
  if (iVar1 == 0) {
    iVar1 = (**(code **)(pcVar21 + 0xe2704))
                      (*(int *)(pcVar21 + 0xe2020) + -0x954,*(int *)(pcVar21 + 0xe2020) + -0x970,
                       0x1402,*(int *)(pcVar21 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
    if (*(int *)(iVar1 + 0x1050) != 0) {
      (**(code **)(pcVar21 + 0xe246c))
                (0x40000,*(int *)(pcVar21 + 0xe2020) + -0x970,*(int *)(pcVar21 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(pcVar21 + 0xe2014) + -0x131c,iVar1 + 4);
    }
    if (iVar16 != 0) {
      iVar13 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if (*(int *)(iVar1 + 0x103c) == 0) {
        iVar14 = *(int *)(iVar13 + 0x26c);
        if ((iVar14 != 0) && (iVar14 = (**(code **)(pcVar21 + 0xe23cc))(iVar14,iVar16), iVar14 == 0)
           ) {
          return 1;
        }
      }
      (**(code **)(pcVar21 + 0xe2614))(iVar13 + 0x26c,iVar16);
      FUN_00062838(iVar1,*(int *)(pcVar21 + 0xe2020) + 0x10,iVar16);
      return 1;
    }
    iVar1 = (**(code **)(pcVar21 + 0xe2704))
                      (*(int *)(pcVar21 + 0xe2020) + -0x14,*(int *)(pcVar21 + 0xe2020) + -0x970,
                       0x1406,*(int *)(pcVar21 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  iVar1 = (**(code **)(pcVar21 + 0xe2704))
                    (*(int *)(pcVar21 + 0xe2020) + 0x419c,*(int *)(pcVar21 + 0xe2020) + -0x970,
                     0x1403,*(int *)(pcVar21 + 0xe2020) + 0x8cc);
  return iVar1;
}

