
/* 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 DrawSetFillOpacity(DrawingWand *wand,double fill_opacity)

{
  Image *pIVar1;
  int iVar2;
  DrawingWand *pDVar3;
  DrawingWand *pDVar4;
  ExceptionInfo *pEVar5;
  char *pcVar6;
  int iVar7;
  char *format;
  undefined4 in_a2;
  int iVar8;
  int iVar9;
  undefined4 in_a3;
  undefined *puVar10;
  undefined4 uVar11;
  DrawingWand *unaff_s0;
  undefined1 *unaff_s1;
  int *piVar12;
  int *piVar13;
  DrawInfo *pDVar14;
  undefined *puVar15;
  code *pcVar16;
  code *pcVar17;
  float fVar18;
  double dVar19;
  undefined1 auStack_30c4 [4096];
  undefined1 auStack_20c4 [4096];
  DrawingWand *pDStack_10c4;
  DrawingWand *pDStack_10bc;
  undefined1 *puStack_10b8;
  int *piStack_10b4;
  undefined1 auStack_104c [4096];
  DrawingWand *pDStack_4c;
  DrawingWand *pDStack_48;
  
  dVar19 = (double)CONCAT44(in_a2,in_a3);
  pDStack_48 = unaff_s0;
  if (wand != (DrawingWand *)0x0) {
    if (wand->signature == 0xabacadab) {
      if (wand->debug != MagickFalse) {
        (*(code *)PTR_LogMagickEvent_0014f488)
                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,
                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);
      }
      if ((wand->filter_off == MagickFalse) &&
         ((wand->graphic_context[wand->index]->fill).alpha ==
          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {
        return;
      }
      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;
      (wand->graphic_context[wand->index]->fill).alpha =
           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));
      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));
      return;
    }
    (*(code *)PTR___assert_fail_0014f720)
              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,
               PTR_s_t_char____NULL_0014f03c + 0x9ac);
    pDStack_48 = wand;
  }
  puVar10 = PTR_s_t_char____NULL_0014f03c + 0x9ac;
  pDVar3 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954);
  puVar15 = PTR___assert_fail_0014f720;
  (*(code *)PTR___assert_fail_0014f720)(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970);
  piVar12 = *(int **)(puVar15 + 0xe2d04);
  pDStack_4c = (DrawingWand *)*piVar12;
  pDVar4 = pDStack_48;
  if (pDVar3 == (DrawingWand *)0x0) {
LAB_0006c904:
    iVar8 = 0x131f;
    puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);
    pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);
    (**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);
  }
  else {
    pDVar4 = pDVar3;
    if (pDVar3->signature != 0xabacadab) {
      (**(code **)(puVar15 + 0xe2f58))
                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,
                 *(int *)(puVar15 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (pDVar3->debug != MagickFalse) {
      puVar10 = (undefined *)0x1322;
      (**(code **)(puVar15 + 0xe2cc0))
                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);
    }
    unaff_s1 = auStack_104c;
    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;
    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);
    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);
    pDVar3 = pDStack_4c;
    if (pDStack_4c == (DrawingWand *)*piVar12) {
      return;
    }
  }
  pcVar16 = *(code **)(puVar15 + 0xe2bc4);
  (*pcVar16)();
  dVar19 = (double)CONCAT44(iVar8,puVar10);
  pDStack_10bc = pDVar4;
  if (pDVar3 != (DrawingWand *)0x0) {
    if (pDVar3->signature == 0xabacadab) {
      if (pDVar3->debug != MagickFalse) {
        (**(code **)(pcVar16 + 0xe2b54))
                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,
                   0x134a);
      }
      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));
      if ((pDVar3->filter_off == MagickFalse) &&
         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {
        return;
      }
      iVar8 = *(int *)(pcVar16 + 0xe2708);
      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;
      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));
      return;
    }
    (**(code **)(pcVar16 + 0xe2dec))
              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,
               *(int *)(pcVar16 + 0xe2708) + 0x958);
    pDStack_10bc = pDVar3;
  }
  pcVar17 = *(code **)(pcVar16 + 0xe2dec);
  pcVar6 = (char *)(*(int *)(pcVar16 + 0xe2708) + -0x970);
  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954);
  (*pcVar17)(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958);
  piVar13 = *(int **)(pcVar17 + 0xe2a4c);
  pDStack_10c4 = (DrawingWand *)*piVar13;
  puStack_10b8 = unaff_s1;
  piStack_10b4 = piVar12;
  if (pDVar4 != (DrawingWand *)0x0) {
    if (pDVar4->signature == 0xabacadab) {
      if (pDVar4->debug == MagickFalse) {
        pIVar1 = pDVar4->image;
      }
      else {
        (**(code **)(pcVar17 + 0xe2a08))
                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);
        pIVar1 = pDVar4->image;
      }
      if (pIVar1 == (Image *)0x0) {
        (**(code **)(pcVar17 + 0xe283c))
                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,
                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,
                   pDVar4->name);
      }
      if (pcVar6 != (char *)0x0) {
        iVar8 = *(int *)(pcVar17 + 0xe25ac);
        if (*pcVar6 == '#') {
          (**(code **)(pcVar17 + 0xe2700))
                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);
          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);
          if (iVar8 == 0) {
            iVar8 = *(int *)(pcVar17 + 0xe25ac);
            uVar11 = 0x1386;
            pEVar5 = pDVar4->exception;
            iVar9 = *(int *)(pcVar17 + 0xe25bc);
            iVar7 = *(int *)(pcVar17 + 0xe25bc);
            pcVar16 = *(code **)(pcVar17 + 0xe283c);
            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(code **)(pcVar17 + 0xe2700))
                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);
          pDVar14 = pDVar4->graphic_context[pDVar4->index];
          if ((pDVar14->fill).alpha != 0.0) {
            (pDVar14->fill).alpha = (double)pDVar14->alpha;
          }
          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);
          MVGPrintf(pDVar4,format,auStack_20c4);
        }
        else {
          uVar11 = 0x1380;
          pEVar5 = pDVar4->exception;
          iVar9 = *(int *)(pcVar17 + 0xe25bc);
          iVar7 = *(int *)(pcVar17 + 0xe25bc);
          pcVar16 = *(code **)(pcVar17 + 0xe283c);
          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;
LAB_0006cb28:
          format = (char *)(iVar7 - 0x970);
          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);
        }
        pDVar4 = pDStack_10c4;
        if (pDStack_10c4 == (DrawingWand *)*piVar13) {
          return;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(code **)(pcVar17 + 0xe2ca0))
                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(pcVar17 + 0xe25bc) + 0x930);
    }
    (**(code **)(pcVar17 + 0xe2ca0))
              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,
               *(int *)(pcVar17 + 0xe25bc) + 0x930);
  }
  format = (char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970);
  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954);
  (**(code **)(pcVar17 + 0xe2ca0))(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930);
LAB_0006cd54:
  pcVar16 = *(code **)(pcVar17 + 0xe290c);
  (*pcVar16)();
  if (pDVar4 != (DrawingWand *)0x0) {
    if (pDVar4->signature == 0xabacadab) {
      if (pDVar4->debug != MagickFalse) {
        (**(code **)(pcVar16 + 0xe2728))
                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);
      }
      if ((pDVar4->filter_off == MagickFalse) &&
         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {
        return;
      }
      pcVar17 = *(code **)(pcVar16 + 0xe2408);
      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;
      uVar11 = (*pcVar17)(0x1a,format);
      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);
      return;
    }
    (**(code **)(pcVar16 + 0xe29c0))
              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,
               *(int *)(pcVar16 + 0xe22dc) + 0x908);
  }
  pcVar17 = *(code **)(pcVar16 + 0xe29c0);
  iVar8 = *(int *)(pcVar16 + 0xe22dc) + -0x970;
  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954);
  (*pcVar17)(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908);
  if (pDVar4 != (DrawingWand *)0x0) {
    if (pDVar4->signature == 0xabacadab) {
      if (pDVar4->debug != MagickFalse) {
        (**(code **)(pcVar17 + 0xe25e4))
                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);
      }
      if (iVar8 != 0) {
        pDVar14 = pDVar4->graphic_context[pDVar4->index];
        if (pDVar4->filter_off == MagickFalse) {
          pcVar6 = pDVar14->font;
          if ((pcVar6 != (char *)0x0) &&
             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {
            return;
          }
        }
        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);
        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);
        return;
      }
      (**(code **)(pcVar17 + 0xe287c))
                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,
                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);
    }
    (**(code **)(pcVar17 + 0xe287c))
              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,
               *(int *)(pcVar17 + 0xe2198) + 0x8ec);
  }
  pcVar16 = *(code **)(pcVar17 + 0xe287c);
  iVar8 = *(int *)(pcVar17 + 0xe2198) + -0x970;
  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954);
  (*pcVar16)(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec);
  if (pDVar4 == (DrawingWand *)0x0) {
    (**(code **)(pcVar16 + 0xe2704))
              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,
               *(int *)(pcVar16 + 0xe2020) + 0x8cc);
    return;
  }
  if (pDVar4->signature == 0xabacadab) {
    if (pDVar4->debug != MagickFalse) {
      (**(code **)(pcVar16 + 0xe246c))
                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);
    }
    if (iVar8 != 0) {
      pDVar14 = pDVar4->graphic_context[pDVar4->index];
      if (pDVar4->filter_off == MagickFalse) {
        pcVar6 = pDVar14->family;
        if ((pcVar6 != (char *)0x0) &&
           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {
          return;
        }
      }
      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);
      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);
      return;
    }
    (**(code **)(pcVar16 + 0xe2704))
              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,
               *(int *)(pcVar16 + 0xe2020) + 0x8cc);
    return;
  }
  (**(code **)(pcVar16 + 0xe2704))
            (*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,
             *(int *)(pcVar16 + 0xe2020) + 0x8cc);
  return;
}



int DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)

{
  int iVar1;
  int iVar2;
  undefined *puVar3;
  undefined4 uVar4;
  undefined *puVar5;
  int iVar6;
  char *pcVar7;
  int iVar8;
  undefined *puVar9;
  undefined4 uVar10;
  undefined *unaff_s0;
  undefined1 *unaff_s1;
  undefined4 *puVar11;
  int *piVar12;
  undefined *puVar13;
  code *pcVar14;
  code *pcVar15;
  float fVar16;
  double dVar17;
  undefined1 auStack_30c4 [4096];
  undefined1 auStack_20c4 [4096];
  int iStack_10c4;
  undefined *puStack_10bc;
  undefined1 *puStack_10b8;
  undefined4 *puStack_10b4;
  undefined1 auStack_104c [4096];
  undefined *puStack_4c;
  undefined *puStack_48;
  
  dVar17 = (double)CONCAT44(param_3,param_4);
  puStack_48 = unaff_s0;
  if (param_1 != (undefined *)0x0) {
    if (*(int *)(param_1 + 0x1054) == -0x54535255) {
      if (*(int *)(param_1 + 0x1050) != 0) {
        (*(code *)PTR_LogMagickEvent_0014f488)
                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,
                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);
      }
      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);
      if ((*(int *)(param_1 + 0x103c) == 0) &&
         (*(double *)(iVar1 + 0x90) ==
          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {
        return iVar1;
      }
      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;
      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));
      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));
      return iVar1;
    }
    (*(code *)PTR___assert_fail_0014f720)
              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,
               PTR_s_t_char____NULL_0014f03c + 0x9ac);
    puStack_48 = param_1;
  }
  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;
  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;
  puVar13 = PTR___assert_fail_0014f720;
  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);
  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);
  puStack_4c = (undefined *)*puVar11;
  puVar5 = puStack_48;
  if (puVar3 == (undefined *)0x0) {
LAB_0006c904:
    iVar1 = 0x131f;
    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);
    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);
    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);
  }
  else {
    puVar5 = puVar3;
    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {
      (**(code **)(puVar13 + 0xe2f58))
                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,
                 *(int *)(puVar13 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (*(int *)(puVar3 + 0x1050) != 0) {
      puVar9 = (undefined *)0x1322;
      (**(code **)(puVar13 + 0xe2cc0))
                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);
    }
    unaff_s1 = auStack_104c;
    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;
    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);
    (**(code **)(puVar13 + 0xe2e68))
              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)
    ;
    puVar3 = puStack_4c;
    if (puStack_4c == (undefined *)*puVar11) {
      return 1;
    }
  }
  pcVar14 = *(code **)(puVar13 + 0xe2bc4);
  (*pcVar14)();
  dVar17 = (double)CONCAT44(iVar1,puVar9);
  puStack_10bc = puVar5;
  if (puVar3 != (undefined *)0x0) {
    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {
      if (*(int *)(puVar3 + 0x1050) != 0) {
        (**(code **)(pcVar14 + 0xe2b54))
                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,
                   0x134a);
      }
      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);
      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));
      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {
        return iVar1;
      }
      iVar6 = *(int *)(pcVar14 + 0xe2708);
      *(float *)(iVar1 + 0x2cc) = fVar16;
      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));
      return iVar1;
    }
    (**(code **)(pcVar14 + 0xe2dec))
              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,
               *(int *)(pcVar14 + 0xe2708) + 0x958);
    puStack_10bc = puVar3;
  }
  pcVar15 = *(code **)(pcVar14 + 0xe2dec);
  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);
  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;
  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);
  piVar12 = *(int **)(pcVar15 + 0xe2a4c);
  iStack_10c4 = *piVar12;
  puStack_10b8 = unaff_s1;
  puStack_10b4 = puVar11;
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) == 0) {
        iVar6 = *(int *)(&DAT_00001004 + iVar1);
      }
      else {
        (**(code **)(pcVar15 + 0xe2a08))
                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);
        iVar6 = *(int *)(&DAT_00001004 + iVar1);
      }
      if (iVar6 == 0) {
        (**(code **)(pcVar15 + 0xe283c))
                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,
                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,
                   iVar1 + 4);
      }
      if (pcVar7 != (char *)0x0) {
        iVar2 = *(int *)(pcVar15 + 0xe25ac);
        if (*pcVar7 == '#') {
          (**(code **)(pcVar15 + 0xe2700))
                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);
          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))
                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);
          if (iVar6 == 0) {
            iVar2 = *(int *)(pcVar15 + 0xe25ac);
            uVar10 = 0x1386;
            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);
            iVar8 = *(int *)(pcVar15 + 0xe25bc);
            iVar6 = *(int *)(pcVar15 + 0xe25bc);
            pcVar14 = *(code **)(pcVar15 + 0xe283c);
            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(code **)(pcVar15 + 0xe2700))
                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);
          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
          if (*(double *)(iVar6 + 0x90) != 0.0) {
            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);
          }
          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;
          FUN_00062838(iVar1,iVar6,auStack_20c4);
          iVar2 = 1;
        }
        else {
          uVar10 = 0x1380;
          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);
          iVar8 = *(int *)(pcVar15 + 0xe25bc);
          iVar6 = *(int *)(pcVar15 + 0xe25bc);
          pcVar14 = *(code **)(pcVar15 + 0xe283c);
          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;
LAB_0006cb28:
          iVar6 = iVar6 + -0x970;
          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);
          iVar2 = 0;
        }
        iVar1 = iStack_10c4;
        if (iStack_10c4 == *piVar12) {
          return iVar2;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(code **)(pcVar15 + 0xe2ca0))
                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(pcVar15 + 0xe25bc) + 0x930);
    }
    (**(code **)(pcVar15 + 0xe2ca0))
              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,
               *(int *)(pcVar15 + 0xe25bc) + 0x930);
  }
  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;
  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;
  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);
LAB_0006cd54:
  pcVar14 = *(code **)(pcVar15 + 0xe290c);
  (*pcVar14)();
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar14 + 0xe2728))
                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);
      }
      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {
        return iVar2;
      }
      pcVar15 = *(code **)(pcVar14 + 0xe2408);
      *(int *)(iVar2 + 0x240) = iVar6;
      uVar4 = (*pcVar15)(0x1a,iVar6);
      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);
      return iVar1;
    }
    (**(code **)(pcVar14 + 0xe29c0))
              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,
               *(int *)(pcVar14 + 0xe22dc) + 0x908);
  }
  pcVar15 = *(code **)(pcVar14 + 0xe29c0);
  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;
  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;
  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar15 + 0xe25e4))
                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);
      }
      if (iVar6 != 0) {
        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
        if (*(int *)(iVar1 + 0x103c) == 0) {
          iVar8 = *(int *)(iVar2 + 0x264);
          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {
            return 1;
          }
        }
        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);
        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);
        return 1;
      }
      (**(code **)(pcVar15 + 0xe287c))
                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,
                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);
    }
    (**(code **)(pcVar15 + 0xe287c))
              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,
               *(int *)(pcVar15 + 0xe2198) + 0x8ec);
  }
  pcVar14 = *(code **)(pcVar15 + 0xe287c);
  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;
  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;
  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);
  if (iVar1 == 0) {
    iVar1 = (**(code **)(pcVar14 + 0xe2704))
                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,
                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
    if (*(int *)(iVar1 + 0x1050) != 0) {
      (**(code **)(pcVar14 + 0xe246c))
                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);
    }
    if (iVar6 != 0) {
      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if (*(int *)(iVar1 + 0x103c) == 0) {
        iVar8 = *(int *)(iVar2 + 0x26c);
        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {
          return 1;
        }
      }
      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);
      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);
      return 1;
    }
    iVar1 = (**(code **)(pcVar14 + 0xe2704))
                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,
                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  iVar1 = (**(code **)(pcVar14 + 0xe2704))
                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,
                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);
  return iVar1;
}


lui gp,0xf
addiu gp,gp,-0x5678
addu gp,gp,t9
addiu sp,sp,-0x30
sdc1 f20,0x28(sp)
mtc1 a3,f20
sw gp,0x18(sp)
sw ra,0x24(sp)
sw s0,0x20(sp)
beq a0,zero,0x0006c7a4
_mthc1 a2,f20
lui v0,0xabac
lw v1,0x1054(a0)
ori v0,v0,0xadab
bne v1,v0,0x0006c780
_or s0,a0,zero
lw v0,0x1050(a0)
bne v0,zero,0x0006c748
_addiu v0,a0,0x4
lw v1,0x1034(s0)
lw v0,0x1038(s0)
lw a0,0x103c(s0)
sll v1,v1,0x2
addu v0,v0,v1
lw v1,-0x7fd4(gp)
ldc1 f0,0x75f0(v1)
lw v0,0x0(v0)
mul.D f0,f20,f0
cvt.s.D f0,f0
bne a0,zero,0x0006c704
_cvt.d.S f0,f0
ldc1 f2,0x90(v0)
c.eq.D f2,f0
bc1t 0x0006c738
_lw ra,0x24(sp)
mfc1 a3,f20
lw a1,-0x7fc4(gp)
or a0,s0,zero
lw t9,-0x7f90(gp)
mfhc1 a2,f20
ldc1 f20,0x28(sp)
lw ra,0x24(sp)
addiu a1,a1,-0xd4
lw s0,0x20(sp)
addiu t9,t9,0x2838
sdc1 f0,0x90(v0)
b 0x00062838
_addiu sp,sp,0x30
lw s0,0x20(sp)
ldc1 f20,0x28(sp)
jr ra
_addiu sp,sp,0x30
lw a2,-0x7fc4(gp)
lw a1,-0x7fc4(gp)
li a3,0x12f4
lw t9,-0x7b78(gp)
lui a0,0x4
sw v0,0x14(sp)
addiu a2,a2,0x998
lw v0,-0x7fd0(gp)
addiu a1,a1,-0x970
addiu v0,v0,-0x131c
jalr t9
_sw v0,0x10(sp)
b 0x0006c6c4
_lw gp,0x18(sp)
lw a3,-0x7fc4(gp)
li a2,0x12f2
lw a1,-0x7fc4(gp)
lw a0,-0x7fc4(gp)
lw t9,-0x78e0(gp)
addiu a3,a3,0x9ac
addiu a1,a1,-0x970
jalr t9
_addiu a0,a0,0x419c
lw a3,-0x7fc4(gp)
li a2,0x12f1
lw a1,-0x7fc4(gp)
lw a0,-0x7fc4(gp)
lw t9,-0x78e0(gp)
addiu a3,a3,0x9ac
addiu a1,a1,-0x970
jalr t9
_addiu a0,a0,-0x954
(translation_unit "int DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}\n\n" (function_definition "int DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" primitive_type (function_declarator "DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)" identifier (parameter_list "(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 param_4" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "undefined *unaff_s0;" type_identifier (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "undefined1 *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "int *piVar12;" primitive_type (pointer_declarator "*piVar12" * identifier) ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "float fVar16;" primitive_type identifier ;) (declaration "double dVar17;" primitive_type identifier ;) (declaration "undefined1 auStack_30c4 [4096];" type_identifier (array_declarator "auStack_30c4 [4096]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_20c4 [4096];" type_identifier (array_declarator "auStack_20c4 [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_10c4;" primitive_type identifier ;) (declaration "undefined *puStack_10bc;" type_identifier (pointer_declarator "*puStack_10bc" * identifier) ;) (declaration "undefined1 *puStack_10b8;" type_identifier (pointer_declarator "*puStack_10b8" * identifier) ;) (declaration "undefined4 *puStack_10b4;" type_identifier (pointer_declarator "*puStack_10b4" * identifier) ;) (declaration "undefined1 auStack_104c [4096];" type_identifier (array_declarator "auStack_104c [4096]" identifier [ number_literal ]) ;) (declaration "undefined *puStack_4c;" type_identifier (pointer_declarator "*puStack_4c" * identifier) ;) (declaration "undefined *puStack_48;" type_identifier (pointer_declarator "*puStack_48" * identifier) ;) (expression_statement "dVar17 = (double)CONCAT44(param_3,param_4);" (assignment_expression "dVar17 = (double)CONCAT44(param_3,param_4)" identifier = (cast_expression "(double)CONCAT44(param_3,param_4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(param_3,param_4)" identifier (argument_list "(param_3,param_4)" ( identifier , identifier ))))) ;) (expression_statement "puStack_48 = unaff_s0;" (assignment_expression "puStack_48 = unaff_s0" identifier = identifier) ;) (if_statement "if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }" if (parenthesized_expression "(param_1 != (undefined *)0x0)" ( (binary_expression "param_1 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }" { (if_statement "if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(param_1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x1054)" * (cast_expression "(int *)(param_1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1054)" ( (binary_expression "param_1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" { (if_statement "if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" if (parenthesized_expression "(*(int *)(param_1 + 0x1050) != 0)" ( (binary_expression "*(int *)(param_1 + 0x1050) != 0" (pointer_expression "*(int *)(param_1 + 0x1050)" * (cast_expression "(int *)(param_1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1050)" ( (binary_expression "param_1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" { (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4)" (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 + 0x998,0x12f4)" ( number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x998" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);" (assignment_expression "iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" ( (binary_expression "*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4" (pointer_expression "*(int *)(param_1 + 0x1038)" * (cast_expression "(int *)(param_1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1038)" ( (binary_expression "param_1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(param_1 + 0x1034) * 4" (pointer_expression "*(int *)(param_1 + 0x1034)" * (cast_expression "(int *)(param_1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1034)" ( (binary_expression "param_1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }" if (parenthesized_expression "((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))))" ( (binary_expression "(*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" (parenthesized_expression "(*(int *)(param_1 + 0x103c) == 0)" ( (binary_expression "*(int *)(param_1 + 0x103c) == 0" (pointer_expression "*(int *)(param_1 + 0x103c)" * (cast_expression "(int *)(param_1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x103c)" ( (binary_expression "param_1 + 0x103c" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" ( (binary_expression "*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (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) )))) == (cast_expression "(double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (binary_expression "dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" identifier * (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" * (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" ( (binary_expression "PTR_LAB_0014f02c + 0x75f0" identifier + number_literal) ))))) ))))) ))) )) (compound_statement "{\n        return iVar1;\n      }" { (return_statement "return iVar1;" return identifier ;) })) (expression_statement "puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;" (assignment_expression "puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0xd4" identifier + number_literal)) ;) (expression_statement "*(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));" (assignment_expression "*(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (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) )))) = (cast_expression "(double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (binary_expression "dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" identifier * (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" * (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" ( (binary_expression "PTR_LAB_0014f02c + 0x75f0" identifier + number_literal) ))))) ))))) ;) (expression_statement "iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));" (assignment_expression "iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier = (call_expression "FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier (argument_list "(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" ( identifier , identifier , (cast_expression "(int)((ulonglong)dVar17 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar17 >> 0x20)" ( (binary_expression "(ulonglong)dVar17 >> 0x20" (cast_expression "(ulonglong)dVar17" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar17,0)" identifier (argument_list "(dVar17,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" (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 + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" 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 + 0x9ac" identifier + number_literal) ))) ;) (expression_statement "puStack_48 = param_1;" (assignment_expression "puStack_48 = param_1" identifier = identifier) ;) })) (expression_statement "puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;" (assignment_expression "puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x9ac" identifier + number_literal)) ;) (expression_statement "puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;" (assignment_expression "puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" identifier + number_literal)) ;) (expression_statement "puVar13 = PTR___assert_fail_0014f720;" (assignment_expression "puVar13 = PTR___assert_fail_0014f720" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" (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 "(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" ( identifier , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) ))) ;) (expression_statement "puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);" (assignment_expression "puVar11 = *(undefined4 **)(puVar13 + 0xe2d04)" identifier = (pointer_expression "*(undefined4 **)(puVar13 + 0xe2d04)" * (cast_expression "(undefined4 **)(puVar13 + 0xe2d04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2d04)" ( (binary_expression "puVar13 + 0xe2d04" identifier + number_literal) ))))) ;) (expression_statement "puStack_4c = (undefined *)*puVar11;" (assignment_expression "puStack_4c = (undefined *)*puVar11" identifier = (cast_expression "(undefined *)*puVar11" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar11" * identifier))) ;) (expression_statement "puVar5 = puStack_48;" (assignment_expression "puVar5 = puStack_48" identifier = identifier) ;) (if_statement "if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(puVar3 == (undefined *)0x0)" ( (binary_expression "puVar3 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }" { (labeled_statement "LAB_0006c904:\n    iVar1 = 0x131f;" statement_identifier : (expression_statement "iVar1 = 0x131f;" (assignment_expression "iVar1 = 0x131f" identifier = number_literal) ;)) (expression_statement "puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);" (assignment_expression "puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980)" identifier = (cast_expression "(undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);" (assignment_expression "puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954)" identifier = (cast_expression "(undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0xe2874) + -0x954)" ( (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x954" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);" (call_expression "(**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2f58))" ( (pointer_expression "**(code **)(puVar13 + 0xe2f58)" * (pointer_expression "*(code **)(puVar13 + 0xe2f58)" * (cast_expression "(code **)(puVar13 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2f58)" ( (binary_expression "puVar13 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970)" ( identifier , (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" { (expression_statement "puVar5 = puVar3;" (assignment_expression "puVar5 = puVar3" identifier = identifier) ;) (if_statement "if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1054) != -0x54535255)" ( (binary_expression "*(int *)(puVar3 + 0x1054) != -0x54535255" (pointer_expression "*(int *)(puVar3 + 0x1054)" * (cast_expression "(int *)(puVar3 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1054)" ( (binary_expression "puVar3 + 0x1054" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" { (expression_statement "(**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);" (call_expression "(**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2f58))" ( (pointer_expression "**(code **)(puVar13 + 0xe2f58)" * (pointer_expression "*(code **)(puVar13 + 0xe2f58)" * (cast_expression "(code **)(puVar13 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2f58)" ( (binary_expression "puVar13 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) (goto_statement "goto LAB_0006c904;" goto statement_identifier ;) })) (if_statement "if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1050) != 0)" ( (binary_expression "*(int *)(puVar3 + 0x1050) != 0" (pointer_expression "*(int *)(puVar3 + 0x1050)" * (cast_expression "(int *)(puVar3 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1050)" ( (binary_expression "puVar3 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }" { (expression_statement "puVar9 = (undefined *)0x1322;" (assignment_expression "puVar9 = (undefined *)0x1322" identifier = (cast_expression "(undefined *)0x1322" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);" (call_expression "(**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2cc0))" ( (pointer_expression "**(code **)(puVar13 + 0xe2cc0)" * (pointer_expression "*(code **)(puVar13 + 0xe2cc0)" * (cast_expression "(code **)(puVar13 + 0xe2cc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2cc0)" ( (binary_expression "puVar13 + 0xe2cc0" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968)" ( number_literal , (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x968" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "unaff_s1 = auStack_104c;" (assignment_expression "unaff_s1 = auStack_104c" identifier = identifier) ;) (expression_statement "iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;" (assignment_expression "iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0" identifier = (binary_expression "*(int *)(puVar13 + 0xe2874) + -0xc0" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);" (call_expression "(**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000)" (parenthesized_expression "(**(code **)(puVar13 + 0xe29b8))" ( (pointer_expression "**(code **)(puVar13 + 0xe29b8)" * (pointer_expression "*(code **)(puVar13 + 0xe29b8)" * (cast_expression "(code **)(puVar13 + 0xe29b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe29b8)" ( (binary_expression "puVar13 + 0xe29b8" identifier + number_literal) ))))) )) (argument_list "(unaff_s1,0x1000)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;" (call_expression "(**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2e68))" ( (pointer_expression "**(code **)(puVar13 + 0xe2e68)" * (pointer_expression "*(code **)(puVar13 + 0xe2e68)" * (cast_expression "(code **)(puVar13 + 0xe2e68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2e68)" ( (binary_expression "puVar13 + 0xe2e68" identifier + number_literal) ))))) )) (argument_list "(*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)" ( (binary_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290" (pointer_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (binary_expression "*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1038)" * (cast_expression "(int *)(puVar3 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1038)" ( (binary_expression "puVar3 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1034)" * (cast_expression "(int *)(puVar3 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1034)" ( (binary_expression "puVar3 + 0x1034" identifier + number_literal) )))) * number_literal)) )))) + number_literal) , identifier ))) ;) (expression_statement "puVar3 = puStack_4c;" (assignment_expression "puVar3 = puStack_4c" identifier = identifier) ;) (if_statement "if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }" if (parenthesized_expression "(puStack_4c == (undefined *)*puVar11)" ( (binary_expression "puStack_4c == (undefined *)*puVar11" identifier == (cast_expression "(undefined *)*puVar11" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar11" * identifier))) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "pcVar14 = *(code **)(puVar13 + 0xe2bc4);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0xe2bc4)" identifier = (pointer_expression "*(code **)(puVar13 + 0xe2bc4)" * (cast_expression "(code **)(puVar13 + 0xe2bc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2bc4)" ( (binary_expression "puVar13 + 0xe2bc4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar14)();" (call_expression "(*pcVar14)()" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "dVar17 = (double)CONCAT44(iVar1,puVar9);" (assignment_expression "dVar17 = (double)CONCAT44(iVar1,puVar9)" identifier = (cast_expression "(double)CONCAT44(iVar1,puVar9)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(iVar1,puVar9)" identifier (argument_list "(iVar1,puVar9)" ( identifier , identifier ))))) ;) (expression_statement "puStack_10bc = puVar5;" (assignment_expression "puStack_10bc = puVar5" identifier = identifier) ;) (if_statement "if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }" if (parenthesized_expression "(puVar3 != (undefined *)0x0)" ( (binary_expression "puVar3 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }" { (if_statement "if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(puVar3 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(puVar3 + 0x1054)" * (cast_expression "(int *)(puVar3 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1054)" ( (binary_expression "puVar3 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" { (if_statement "if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1050) != 0)" ( (binary_expression "*(int *)(puVar3 + 0x1050) != 0" (pointer_expression "*(int *)(puVar3 + 0x1050)" * (cast_expression "(int *)(puVar3 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1050)" ( (binary_expression "puVar3 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }" { (expression_statement "(**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2b54))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2b54)" * (pointer_expression "*(code **)(pcVar14 + 0xe2b54)" * (cast_expression "(code **)(pcVar14 + 0xe2b54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2b54)" ( (binary_expression "pcVar14 + 0xe2b54" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a)" ( number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);" (assignment_expression "iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (binary_expression "*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1038)" * (cast_expression "(int *)(puVar3 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1038)" ( (binary_expression "puVar3 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1034)" * (cast_expression "(int *)(puVar3 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1034)" ( (binary_expression "puVar3 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (expression_statement "fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));" (assignment_expression "fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" identifier = (cast_expression "(float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" ( (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" ( (binary_expression "*(int *)(pcVar14 + 0xe26f8) + 0x75f0" (pointer_expression "*(int *)(pcVar14 + 0xe26f8)" * (cast_expression "(int *)(pcVar14 + 0xe26f8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe26f8)" ( (binary_expression "pcVar14 + 0xe26f8" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (if_statement "if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }" if (parenthesized_expression "((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16))" ( (binary_expression "(*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)" (parenthesized_expression "(*(int *)(puVar3 + 0x103c) == 0)" ( (binary_expression "*(int *)(puVar3 + 0x103c) == 0" (pointer_expression "*(int *)(puVar3 + 0x103c)" * (cast_expression "(int *)(puVar3 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x103c)" ( (binary_expression "puVar3 + 0x103c" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(float *)(iVar1 + 0x2cc) == fVar16)" ( (binary_expression "*(float *)(iVar1 + 0x2cc) == fVar16" (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 "iVar6 = *(int *)(pcVar14 + 0xe2708);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0xe2708)" identifier = (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) ))))) ;) (expression_statement "*(float *)(iVar1 + 0x2cc) = fVar16;" (assignment_expression "*(float *)(iVar1 + 0x2cc) = fVar16" (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(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));" (assignment_expression "iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier = (call_expression "FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier (argument_list "(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" ( identifier , (binary_expression "iVar6 + -0xb4" identifier + number_literal) , (cast_expression "(int)((ulonglong)dVar17 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar17 >> 0x20)" ( (binary_expression "(ulonglong)dVar17 >> 0x20" (cast_expression "(ulonglong)dVar17" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar17,0)" identifier (argument_list "(dVar17,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2dec))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2dec)" * (pointer_expression "*(code **)(pcVar14 + 0xe2dec)" * (cast_expression "(code **)(pcVar14 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2dec)" ( (binary_expression "pcVar14 + 0xe2dec" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958)" ( (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "puStack_10bc = puVar3;" (assignment_expression "puStack_10bc = puVar3" identifier = identifier) ;) })) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe2dec);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe2dec)" identifier = (pointer_expression "*(code **)(pcVar14 + 0xe2dec)" * (cast_expression "(code **)(pcVar14 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2dec)" ( (binary_expression "pcVar14 + 0xe2dec" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);" (assignment_expression "pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar14 + 0xe2708) + -0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0xe2708) + -0x970)" ( (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954" identifier = (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);" (call_expression "(*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar12 = *(int **)(pcVar15 + 0xe2a4c);" (assignment_expression "piVar12 = *(int **)(pcVar15 + 0xe2a4c)" identifier = (pointer_expression "*(int **)(pcVar15 + 0xe2a4c)" * (cast_expression "(int **)(pcVar15 + 0xe2a4c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2a4c)" ( (binary_expression "pcVar15 + 0xe2a4c" identifier + number_literal) ))))) ;) (expression_statement "iStack_10c4 = *piVar12;" (assignment_expression "iStack_10c4 = *piVar12" identifier = (pointer_expression "*piVar12" * identifier)) ;) (expression_statement "puStack_10b8 = unaff_s1;" (assignment_expression "puStack_10b8 = unaff_s1" identifier = identifier) ;) (expression_statement "puStack_10b4 = puVar11;" (assignment_expression "puStack_10b4 = puVar11" identifier = identifier) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "iVar6 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar6 = *(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 **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" else (compound_statement "{\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "(**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);" (call_expression "(**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2a08))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2a08)" * (pointer_expression "*(code **)(pcVar15 + 0xe2a08)" * (cast_expression "(code **)(pcVar15 + 0xe2a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2a08)" ( (binary_expression "pcVar15 + 0xe2a08" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7)" ( number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe25b0)" * (cast_expression "(int *)(pcVar15 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25b0)" ( (binary_expression "pcVar15 + 0xe25b0" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar6 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar6 = *(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 (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);" (call_expression "(**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe283c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe283c)" * (pointer_expression "*(code **)(pcVar15 + 0xe283c)" * (cast_expression "(code **)(pcVar15 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe283c)" ( (binary_expression "pcVar15 + 0xe283c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 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 *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" * (cast_expression "(int *)(pcVar15 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25ac)" ( (binary_expression "pcVar15 + 0xe25ac" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }" { (expression_statement "iVar2 = *(int *)(pcVar15 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar15 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" * (cast_expression "(int *)(pcVar15 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25ac)" ( (binary_expression "pcVar15 + 0xe25ac" identifier + number_literal) ))))) ;) (if_statement "if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" if (parenthesized_expression "(*pcVar7 == '#')" ( (binary_expression "*pcVar7 == '#'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'#'" ' character ')) )) (compound_statement "{\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }" { (expression_statement "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);" (call_expression "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2700)" * (pointer_expression "*(code **)(pcVar15 + 0xe2700)" * (cast_expression "(code **)(pcVar15 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2700)" ( (binary_expression "pcVar15 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe25b0)" * (cast_expression "(int *)(pcVar15 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25b0)" ( (binary_expression "pcVar15 + 0xe25b0" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar7 + 1" identifier + number_literal) ))) ;) (expression_statement "iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);" (assignment_expression "iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" identifier = (call_expression "(**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2bc8))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2bc8)" * (pointer_expression "*(code **)(pcVar15 + 0xe2bc8)" * (cast_expression "(code **)(pcVar15 + 0xe2bc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2bc8)" ( (binary_expression "pcVar15 + 0xe2bc8" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" ( (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 (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" { (expression_statement "iVar2 = *(int *)(pcVar15 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar15 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" * (cast_expression "(int *)(pcVar15 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25ac)" ( (binary_expression "pcVar15 + 0xe25ac" identifier + number_literal) ))))) ;) (expression_statement "uVar10 = 0x1386;" (assignment_expression "uVar10 = 0x1386" identifier = number_literal) ;) (expression_statement "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar4 = *(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 "iVar8 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar8 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe283c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe283c)" * (cast_expression "(code **)(pcVar15 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe283c)" ( (binary_expression "pcVar15 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (goto_statement "goto LAB_0006cb28;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);" (call_expression "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2700)" * (pointer_expression "*(code **)(pcVar15 + 0xe2700)" * (cast_expression "(code **)(pcVar15 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2700)" ( (binary_expression "pcVar15 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar6 = *(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 *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }" if (parenthesized_expression "(*(double *)(iVar6 + 0x90) != 0.0)" ( (binary_expression "*(double *)(iVar6 + 0x90) != 0.0" (pointer_expression "*(double *)(iVar6 + 0x90)" * (cast_expression "(double *)(iVar6 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x90)" ( (binary_expression "iVar6 + 0x90" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }" { (expression_statement "*(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);" (assignment_expression "*(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc)" (pointer_expression "*(double *)(iVar6 + 0x90)" * (cast_expression "(double *)(iVar6 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x90)" ( (binary_expression "iVar6 + 0x90" identifier + number_literal) )))) = (cast_expression "(double)*(float *)(iVar6 + 0x2cc)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar6 + 0x2cc)" * (cast_expression "(float *)(iVar6 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x2cc)" ( (binary_expression "iVar6 + 0x2cc" identifier + number_literal) )))))) ;) })) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "FUN_00062838(iVar1,iVar6,auStack_20c4);" (call_expression "FUN_00062838(iVar1,iVar6,auStack_20c4)" identifier (argument_list "(iVar1,iVar6,auStack_20c4)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }) (else_clause "else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" else (compound_statement "{\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" { (expression_statement "uVar10 = 0x1380;" (assignment_expression "uVar10 = 0x1380" identifier = number_literal) ;) (expression_statement "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar4 = *(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 "iVar8 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar8 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe283c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe283c)" * (cast_expression "(code **)(pcVar15 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe283c)" ( (binary_expression "pcVar15 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0006cb28:\n          iVar6 = iVar6 + -0x970;" statement_identifier : (expression_statement "iVar6 = iVar6 + -0x970;" (assignment_expression "iVar6 = iVar6 + -0x970" identifier = (binary_expression "iVar6 + -0x970" identifier + number_literal)) ;)) (expression_statement "(*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);" (call_expression "(*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7)" ( identifier , identifier , (binary_expression "iVar8 + 0x918" identifier + number_literal) , identifier , number_literal , identifier , (binary_expression "iVar2 + 0x5cf4" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) }))) (expression_statement "iVar1 = iStack_10c4;" (assignment_expression "iVar1 = iStack_10c4" identifier = identifier) ;) (if_statement "if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }" if (parenthesized_expression "(iStack_10c4 == *piVar12)" ( (binary_expression "iStack_10c4 == *piVar12" identifier == (pointer_expression "*piVar12" * identifier)) )) (compound_statement "{\n          return iVar2;\n        }" { (return_statement "return iVar2;" return identifier ;) })) (goto_statement "goto LAB_0006cd54;" goto statement_identifier ;) })) }) (else_clause "else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }" else (compound_statement "{\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }" { (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" * (cast_expression "(code **)(pcVar15 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2ca0)" ( (binary_expression "pcVar15 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" * (cast_expression "(code **)(pcVar15 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2ca0)" ( (binary_expression "pcVar15 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" * (cast_expression "(code **)(pcVar15 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2ca0)" ( (binary_expression "pcVar15 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);" statement_identifier : (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe290c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe290c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe290c)" * (cast_expression "(code **)(pcVar15 + 0xe290c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe290c)" ( (binary_expression "pcVar15 + 0xe290c" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar14)();" (call_expression "(*pcVar14)()" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2728))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2728)" * (pointer_expression "*(code **)(pcVar14 + 0xe2728)" * (cast_expression "(code **)(pcVar14 + 0xe2728)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2728)" ( (binary_expression "pcVar14 + 0xe2728" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar14 + 0xe22d0)" * (cast_expression "(int *)(pcVar14 + 0xe22d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22d0)" ( (binary_expression "pcVar14 + 0xe22d0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(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 *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }" if (parenthesized_expression "((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6))" ( (binary_expression "(*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)" (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 *)(iVar2 + 0x240) == iVar6)" ( (binary_expression "*(int *)(iVar2 + 0x240) == iVar6" (pointer_expression "*(int *)(iVar2 + 0x240)" * (cast_expression "(int *)(iVar2 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x240)" ( (binary_expression "iVar2 + 0x240" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar2;\n      }" { (return_statement "return iVar2;" return identifier ;) })) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe2408);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe2408)" identifier = (pointer_expression "*(code **)(pcVar14 + 0xe2408)" * (cast_expression "(code **)(pcVar14 + 0xe2408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2408)" ( (binary_expression "pcVar14 + 0xe2408" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(iVar2 + 0x240) = iVar6;" (assignment_expression "*(int *)(iVar2 + 0x240) = iVar6" (pointer_expression "*(int *)(iVar2 + 0x240)" * (cast_expression "(int *)(iVar2 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x240)" ( (binary_expression "iVar2 + 0x240" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar4 = (*pcVar15)(0x1a,iVar6);" (assignment_expression "uVar4 = (*pcVar15)(0x1a,iVar6)" identifier = (call_expression "(*pcVar15)(0x1a,iVar6)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(0x1a,iVar6)" ( number_literal , identifier )))) ;) (expression_statement "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);" (assignment_expression "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" identifier = (call_expression "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" identifier (argument_list "(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" ( identifier , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe29c0))" ( (pointer_expression "**(code **)(pcVar14 + 0xe29c0)" * (pointer_expression "*(code **)(pcVar14 + 0xe29c0)" * (cast_expression "(code **)(pcVar14 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe29c0)" ( (binary_expression "pcVar14 + 0xe29c0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908)" ( (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe29c0);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe29c0)" identifier = (pointer_expression "*(code **)(pcVar14 + 0xe29c0)" * (cast_expression "(code **)(pcVar14 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe29c0)" ( (binary_expression "pcVar14 + 0xe29c0" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970" identifier = (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954" identifier = (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);" (call_expression "(*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe25e4))" ( (pointer_expression "**(code **)(pcVar15 + 0xe25e4)" * (pointer_expression "*(code **)(pcVar15 + 0xe25e4)" * (cast_expression "(code **)(pcVar15 + 0xe25e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe25e4)" ( (binary_expression "pcVar15 + 0xe25e4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe218c)" * (cast_expression "(int *)(pcVar15 + 0xe218c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe218c)" ( (binary_expression "pcVar15 + 0xe218c" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }" { (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(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          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 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          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }" { (expression_statement "iVar8 = *(int *)(iVar2 + 0x264);" (assignment_expression "iVar8 = *(int *)(iVar2 + 0x264)" identifier = (pointer_expression "*(int *)(iVar2 + 0x264)" * (cast_expression "(int *)(iVar2 + 0x264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x264)" ( (binary_expression "iVar2 + 0x264" identifier + number_literal) ))))) ;) (if_statement "if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }" if (parenthesized_expression "((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0))" ( (binary_expression "(iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)" (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)" ( (comma_expression "iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0" (assignment_expression "iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6)" identifier = (call_expression "(**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2544))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2544)" * (pointer_expression "*(code **)(pcVar15 + 0xe2544)" * (cast_expression "(code **)(pcVar15 + 0xe2544)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2544)" ( (binary_expression "pcVar15 + 0xe2544" identifier + number_literal) ))))) )) (argument_list "(iVar8,iVar6)" ( identifier , identifier )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);" (call_expression "(**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe278c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe278c)" * (pointer_expression "*(code **)(pcVar15 + 0xe278c)" * (cast_expression "(code **)(pcVar15 + 0xe278c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe278c)" ( (binary_expression "pcVar15 + 0xe278c" identifier + number_literal) ))))) )) (argument_list "(iVar2 + 0x264,iVar6)" ( (binary_expression "iVar2 + 0x264" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6)" identifier (argument_list "(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6)" ( identifier , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "(**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe287c)" * (pointer_expression "*(code **)(pcVar15 + 0xe287c)" * (cast_expression "(code **)(pcVar15 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe287c)" ( (binary_expression "pcVar15 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "(**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe287c)" * (pointer_expression "*(code **)(pcVar15 + 0xe287c)" * (cast_expression "(code **)(pcVar15 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe287c)" ( (binary_expression "pcVar15 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe287c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe287c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe287c)" * (cast_expression "(code **)(pcVar15 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe287c)" ( (binary_expression "pcVar15 + 0xe287c" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970" identifier = (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954" identifier = (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2704)" * (pointer_expression "*(code **)(pcVar14 + 0xe2704)" * (cast_expression "(code **)(pcVar14 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2704)" ( (binary_expression "pcVar14 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" { (expression_statement "(**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe246c))" ( (pointer_expression "**(code **)(pcVar14 + 0xe246c)" * (pointer_expression "*(code **)(pcVar14 + 0xe246c)" * (cast_expression "(code **)(pcVar14 + 0xe246c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe246c)" ( (binary_expression "pcVar14 + 0xe246c" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar14 + 0xe2014)" * (cast_expression "(int *)(pcVar14 + 0xe2014)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2014)" ( (binary_expression "pcVar14 + 0xe2014" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }" { (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(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        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 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        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }" { (expression_statement "iVar8 = *(int *)(iVar2 + 0x26c);" (assignment_expression "iVar8 = *(int *)(iVar2 + 0x26c)" identifier = (pointer_expression "*(int *)(iVar2 + 0x26c)" * (cast_expression "(int *)(iVar2 + 0x26c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x26c)" ( (binary_expression "iVar2 + 0x26c" identifier + number_literal) ))))) ;) (if_statement "if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }" if (parenthesized_expression "((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0))" ( (binary_expression "(iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)" (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)" ( (comma_expression "iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0" (assignment_expression "iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe23cc))" ( (pointer_expression "**(code **)(pcVar14 + 0xe23cc)" * (pointer_expression "*(code **)(pcVar14 + 0xe23cc)" * (cast_expression "(code **)(pcVar14 + 0xe23cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe23cc)" ( (binary_expression "pcVar14 + 0xe23cc" identifier + number_literal) ))))) )) (argument_list "(iVar8,iVar6)" ( identifier , identifier )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);" (call_expression "(**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2614))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2614)" * (pointer_expression "*(code **)(pcVar14 + 0xe2614)" * (cast_expression "(code **)(pcVar14 + 0xe2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2614)" ( (binary_expression "pcVar14 + 0xe2614" identifier + number_literal) ))))) )) (argument_list "(iVar2 + 0x26c,iVar6)" ( (binary_expression "iVar2 + 0x26c" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6)" identifier (argument_list "(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6)" ( identifier , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2704)" * (pointer_expression "*(code **)(pcVar14 + 0xe2704)" * (cast_expression "(code **)(pcVar14 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2704)" ( (binary_expression "pcVar14 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2704)" * (pointer_expression "*(code **)(pcVar14 + 0xe2704)" * (cast_expression "(code **)(pcVar14 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2704)" ( (binary_expression "pcVar14 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 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 DrawSetFillOpacity(DrawingWand *wand,double fill_opacity)\n\n{\n  Image *pIVar1;\n  int iVar2;\n  DrawingWand *pDVar3;\n  DrawingWand *pDVar4;\n  ExceptionInfo *pEVar5;\n  char *pcVar6;\n  int iVar7;\n  char *format;\n  undefined4 in_a2;\n  int iVar8;\n  int iVar9;\n  undefined4 in_a3;\n  undefined *puVar10;\n  undefined4 uVar11;\n  DrawingWand *unaff_s0;\n  undefined1 *unaff_s1;\n  int *piVar12;\n  int *piVar13;\n  DrawInfo *pDVar14;\n  undefined *puVar15;\n  code *pcVar16;\n  code *pcVar17;\n  float fVar18;\n  double dVar19;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  DrawingWand *pDStack_10c4;\n  DrawingWand *pDStack_10bc;\n  undefined1 *puStack_10b8;\n  int *piStack_10b4;\n  undefined1 auStack_104c [4096];\n  DrawingWand *pDStack_4c;\n  DrawingWand *pDStack_48;\n  \n  dVar19 = (double)CONCAT44(in_a2,in_a3);\n  pDStack_48 = unaff_s0;\n  if (wand != (DrawingWand *)0x0) {\n    if (wand->signature == 0xabacadab) {\n      if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    pDStack_48 = wand;\n  }\n  puVar10 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  pDVar3 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954);\n  puVar15 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  piVar12 = *(int **)(puVar15 + 0xe2d04);\n  pDStack_4c = (DrawingWand *)*piVar12;\n  pDVar4 = pDStack_48;\n  if (pDVar3 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar8 = 0x131f;\n    puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);\n    pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);\n    (**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar4 = pDVar3;\n    if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;\n    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);\n    pDVar3 = pDStack_4c;\n    if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }\n  }\n  pcVar16 = *(code **)(puVar15 + 0xe2bc4);\n  (*pcVar16)();\n  dVar19 = (double)CONCAT44(iVar8,puVar10);\n  pDStack_10bc = pDVar4;\n  if (pDVar3 != (DrawingWand *)0x0) {\n    if (pDVar3->signature == 0xabacadab) {\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958);\n    pDStack_10bc = pDVar3;\n  }\n  pcVar17 = *(code **)(pcVar16 + 0xe2dec);\n  pcVar6 = (char *)(*(int *)(pcVar16 + 0xe2708) + -0x970);\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954);\n  (*pcVar17)(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958);\n  piVar13 = *(int **)(pcVar17 + 0xe2a4c);\n  pDStack_10c4 = (DrawingWand *)*piVar13;\n  puStack_10b8 = unaff_s1;\n  piStack_10b4 = piVar12;\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930);\n  }\n  format = (char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970);\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954);\n  (**(code **)(pcVar17 + 0xe2ca0))(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar16 = *(code **)(pcVar17 + 0xe290c);\n  (*pcVar16)();\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908);\n  }\n  pcVar17 = *(code **)(pcVar16 + 0xe29c0);\n  iVar8 = *(int *)(pcVar16 + 0xe22dc) + -0x970;\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954);\n  (*pcVar17)(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908);\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  }\n  pcVar16 = *(code **)(pcVar17 + 0xe287c);\n  iVar8 = *(int *)(pcVar17 + 0xe2198) + -0x970;\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954);\n  (*pcVar16)(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  if (pDVar4 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }\n  if (pDVar4->signature == 0xabacadab) {\n    if (pDVar4->debug != MagickFalse) {\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }\n    if (iVar8 != 0) {\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }\n  (**(code **)(pcVar16 + 0xe2704))\n            (*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n  return;\n}\n\n" comment comment comment comment comment comment (function_definition "void DrawSetFillOpacity(DrawingWand *wand,double fill_opacity)\n\n{\n  Image *pIVar1;\n  int iVar2;\n  DrawingWand *pDVar3;\n  DrawingWand *pDVar4;\n  ExceptionInfo *pEVar5;\n  char *pcVar6;\n  int iVar7;\n  char *format;\n  undefined4 in_a2;\n  int iVar8;\n  int iVar9;\n  undefined4 in_a3;\n  undefined *puVar10;\n  undefined4 uVar11;\n  DrawingWand *unaff_s0;\n  undefined1 *unaff_s1;\n  int *piVar12;\n  int *piVar13;\n  DrawInfo *pDVar14;\n  undefined *puVar15;\n  code *pcVar16;\n  code *pcVar17;\n  float fVar18;\n  double dVar19;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  DrawingWand *pDStack_10c4;\n  DrawingWand *pDStack_10bc;\n  undefined1 *puStack_10b8;\n  int *piStack_10b4;\n  undefined1 auStack_104c [4096];\n  DrawingWand *pDStack_4c;\n  DrawingWand *pDStack_48;\n  \n  dVar19 = (double)CONCAT44(in_a2,in_a3);\n  pDStack_48 = unaff_s0;\n  if (wand != (DrawingWand *)0x0) {\n    if (wand->signature == 0xabacadab) {\n      if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    pDStack_48 = wand;\n  }\n  puVar10 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  pDVar3 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954);\n  puVar15 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  piVar12 = *(int **)(puVar15 + 0xe2d04);\n  pDStack_4c = (DrawingWand *)*piVar12;\n  pDVar4 = pDStack_48;\n  if (pDVar3 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar8 = 0x131f;\n    puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);\n    pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);\n    (**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar4 = pDVar3;\n    if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;\n    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);\n    pDVar3 = pDStack_4c;\n    if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }\n  }\n  pcVar16 = *(code **)(puVar15 + 0xe2bc4);\n  (*pcVar16)();\n  dVar19 = (double)CONCAT44(iVar8,puVar10);\n  pDStack_10bc = pDVar4;\n  if (pDVar3 != (DrawingWand *)0x0) {\n    if (pDVar3->signature == 0xabacadab) {\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958);\n    pDStack_10bc = pDVar3;\n  }\n  pcVar17 = *(code **)(pcVar16 + 0xe2dec);\n  pcVar6 = (char *)(*(int *)(pcVar16 + 0xe2708) + -0x970);\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954);\n  (*pcVar17)(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958);\n  piVar13 = *(int **)(pcVar17 + 0xe2a4c);\n  pDStack_10c4 = (DrawingWand *)*piVar13;\n  puStack_10b8 = unaff_s1;\n  piStack_10b4 = piVar12;\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930);\n  }\n  format = (char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970);\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954);\n  (**(code **)(pcVar17 + 0xe2ca0))(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar16 = *(code **)(pcVar17 + 0xe290c);\n  (*pcVar16)();\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908);\n  }\n  pcVar17 = *(code **)(pcVar16 + 0xe29c0);\n  iVar8 = *(int *)(pcVar16 + 0xe22dc) + -0x970;\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954);\n  (*pcVar17)(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908);\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  }\n  pcVar16 = *(code **)(pcVar17 + 0xe287c);\n  iVar8 = *(int *)(pcVar17 + 0xe2198) + -0x970;\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954);\n  (*pcVar16)(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  if (pDVar4 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }\n  if (pDVar4->signature == 0xabacadab) {\n    if (pDVar4->debug != MagickFalse) {\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }\n    if (iVar8 != 0) {\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }\n  (**(code **)(pcVar16 + 0xe2704))\n            (*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n  return;\n}" primitive_type (function_declarator "DrawSetFillOpacity(DrawingWand *wand,double fill_opacity)" identifier (parameter_list "(DrawingWand *wand,double fill_opacity)" ( (parameter_declaration "DrawingWand *wand" type_identifier (pointer_declarator "*wand" * identifier)) , (parameter_declaration "double fill_opacity" primitive_type identifier) ))) (compound_statement "{\n  Image *pIVar1;\n  int iVar2;\n  DrawingWand *pDVar3;\n  DrawingWand *pDVar4;\n  ExceptionInfo *pEVar5;\n  char *pcVar6;\n  int iVar7;\n  char *format;\n  undefined4 in_a2;\n  int iVar8;\n  int iVar9;\n  undefined4 in_a3;\n  undefined *puVar10;\n  undefined4 uVar11;\n  DrawingWand *unaff_s0;\n  undefined1 *unaff_s1;\n  int *piVar12;\n  int *piVar13;\n  DrawInfo *pDVar14;\n  undefined *puVar15;\n  code *pcVar16;\n  code *pcVar17;\n  float fVar18;\n  double dVar19;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  DrawingWand *pDStack_10c4;\n  DrawingWand *pDStack_10bc;\n  undefined1 *puStack_10b8;\n  int *piStack_10b4;\n  undefined1 auStack_104c [4096];\n  DrawingWand *pDStack_4c;\n  DrawingWand *pDStack_48;\n  \n  dVar19 = (double)CONCAT44(in_a2,in_a3);\n  pDStack_48 = unaff_s0;\n  if (wand != (DrawingWand *)0x0) {\n    if (wand->signature == 0xabacadab) {\n      if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    pDStack_48 = wand;\n  }\n  puVar10 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  pDVar3 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954);\n  puVar15 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  piVar12 = *(int **)(puVar15 + 0xe2d04);\n  pDStack_4c = (DrawingWand *)*piVar12;\n  pDVar4 = pDStack_48;\n  if (pDVar3 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar8 = 0x131f;\n    puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);\n    pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);\n    (**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar4 = pDVar3;\n    if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;\n    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);\n    pDVar3 = pDStack_4c;\n    if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }\n  }\n  pcVar16 = *(code **)(puVar15 + 0xe2bc4);\n  (*pcVar16)();\n  dVar19 = (double)CONCAT44(iVar8,puVar10);\n  pDStack_10bc = pDVar4;\n  if (pDVar3 != (DrawingWand *)0x0) {\n    if (pDVar3->signature == 0xabacadab) {\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958);\n    pDStack_10bc = pDVar3;\n  }\n  pcVar17 = *(code **)(pcVar16 + 0xe2dec);\n  pcVar6 = (char *)(*(int *)(pcVar16 + 0xe2708) + -0x970);\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954);\n  (*pcVar17)(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958);\n  piVar13 = *(int **)(pcVar17 + 0xe2a4c);\n  pDStack_10c4 = (DrawingWand *)*piVar13;\n  puStack_10b8 = unaff_s1;\n  piStack_10b4 = piVar12;\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930);\n  }\n  format = (char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970);\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954);\n  (**(code **)(pcVar17 + 0xe2ca0))(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar16 = *(code **)(pcVar17 + 0xe290c);\n  (*pcVar16)();\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908);\n  }\n  pcVar17 = *(code **)(pcVar16 + 0xe29c0);\n  iVar8 = *(int *)(pcVar16 + 0xe22dc) + -0x970;\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954);\n  (*pcVar17)(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908);\n  if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  }\n  pcVar16 = *(code **)(pcVar17 + 0xe287c);\n  iVar8 = *(int *)(pcVar17 + 0xe2198) + -0x970;\n  pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954);\n  (*pcVar16)(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  if (pDVar4 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }\n  if (pDVar4->signature == 0xabacadab) {\n    if (pDVar4->debug != MagickFalse) {\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }\n    if (iVar8 != 0) {\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }\n  (**(code **)(pcVar16 + 0xe2704))\n            (*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n  return;\n}" { (declaration "Image *pIVar1;" type_identifier (pointer_declarator "*pIVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "DrawingWand *pDVar3;" type_identifier (pointer_declarator "*pDVar3" * identifier) ;) (declaration "DrawingWand *pDVar4;" type_identifier (pointer_declarator "*pDVar4" * identifier) ;) (declaration "ExceptionInfo *pEVar5;" type_identifier (pointer_declarator "*pEVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "undefined4 in_a2;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "undefined4 in_a3;" type_identifier identifier ;) (declaration "undefined *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "DrawingWand *unaff_s0;" type_identifier (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "undefined1 *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "int *piVar12;" primitive_type (pointer_declarator "*piVar12" * identifier) ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "DrawInfo *pDVar14;" type_identifier (pointer_declarator "*pDVar14" * identifier) ;) (declaration "undefined *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "code *pcVar16;" type_identifier (pointer_declarator "*pcVar16" * identifier) ;) (declaration "code *pcVar17;" type_identifier (pointer_declarator "*pcVar17" * identifier) ;) (declaration "float fVar18;" primitive_type identifier ;) (declaration "double dVar19;" primitive_type identifier ;) (declaration "undefined1 auStack_30c4 [4096];" type_identifier (array_declarator "auStack_30c4 [4096]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_20c4 [4096];" type_identifier (array_declarator "auStack_20c4 [4096]" identifier [ number_literal ]) ;) (declaration "DrawingWand *pDStack_10c4;" type_identifier (pointer_declarator "*pDStack_10c4" * identifier) ;) (declaration "DrawingWand *pDStack_10bc;" type_identifier (pointer_declarator "*pDStack_10bc" * identifier) ;) (declaration "undefined1 *puStack_10b8;" type_identifier (pointer_declarator "*puStack_10b8" * identifier) ;) (declaration "int *piStack_10b4;" primitive_type (pointer_declarator "*piStack_10b4" * identifier) ;) (declaration "undefined1 auStack_104c [4096];" type_identifier (array_declarator "auStack_104c [4096]" identifier [ number_literal ]) ;) (declaration "DrawingWand *pDStack_4c;" type_identifier (pointer_declarator "*pDStack_4c" * identifier) ;) (declaration "DrawingWand *pDStack_48;" type_identifier (pointer_declarator "*pDStack_48" * identifier) ;) (expression_statement "dVar19 = (double)CONCAT44(in_a2,in_a3);" (assignment_expression "dVar19 = (double)CONCAT44(in_a2,in_a3)" identifier = (cast_expression "(double)CONCAT44(in_a2,in_a3)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(in_a2,in_a3)" identifier (argument_list "(in_a2,in_a3)" ( identifier , identifier ))))) ;) (expression_statement "pDStack_48 = unaff_s0;" (assignment_expression "pDStack_48 = unaff_s0" identifier = identifier) ;) (if_statement "if (wand != (DrawingWand *)0x0) {\n    if (wand->signature == 0xabacadab) {\n      if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    pDStack_48 = wand;\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    if (wand->signature == 0xabacadab) {\n      if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    pDStack_48 = wand;\n  }" { (if_statement "if (wand->signature == 0xabacadab) {\n      if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\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        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }\n      pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      (wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }" { (if_statement "if (wand->debug != MagickFalse) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" if (parenthesized_expression "(wand->debug != MagickFalse)" ( (binary_expression "wand->debug != MagickFalse" (field_expression "wand->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" { (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4)" (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 + 0x998,0x12f4)" ( number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x998" identifier + number_literal) , number_literal ))) ;) })) (if_statement "if ((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return;\n      }" if (parenthesized_expression "((wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))))" ( (binary_expression "(wand->filter_off == MagickFalse) &&\n         ((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" (parenthesized_expression "(wand->filter_off == MagickFalse)" ( (binary_expression "wand->filter_off == MagickFalse" (field_expression "wand->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "((wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" ( (binary_expression "(wand->graphic_context[wand->index]->fill).alpha ==\n          (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (field_expression "(wand->graphic_context[wand->index]->fill).alpha" (parenthesized_expression "(wand->graphic_context[wand->index]->fill)" ( (field_expression "wand->graphic_context[wand->index]->fill" (subscript_expression "wand->graphic_context[wand->index]" (field_expression "wand->graphic_context" identifier -> field_identifier) [ (field_expression "wand->index" identifier -> field_identifier) ]) -> field_identifier) )) . field_identifier) == (cast_expression "(double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (binary_expression "dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" identifier * (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" * (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" ( (binary_expression "PTR_LAB_0014f02c + 0x75f0" identifier + number_literal) ))))) ))))) ))) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (expression_statement "pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4;" (assignment_expression "pcVar6 = PTR_s_t_char____NULL_0014f03c + -0xd4" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0xd4" identifier + number_literal)) ;) (expression_statement "(wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0));" (assignment_expression "(wand->graphic_context[wand->index]->fill).alpha =\n           (double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (field_expression "(wand->graphic_context[wand->index]->fill).alpha" (parenthesized_expression "(wand->graphic_context[wand->index]->fill)" ( (field_expression "wand->graphic_context[wand->index]->fill" (subscript_expression "wand->graphic_context[wand->index]" (field_expression "wand->graphic_context" identifier -> field_identifier) [ (field_expression "wand->index" identifier -> field_identifier) ]) -> field_identifier) )) . field_identifier) = (cast_expression "(double)(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (binary_expression "dVar19 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" identifier * (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" * (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" ( (binary_expression "PTR_LAB_0014f02c + 0x75f0" identifier + number_literal) ))))) ))))) ;) (expression_statement "MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));" (call_expression "MVGPrintf(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0))" identifier (argument_list "(wand,pcVar6,(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0))" ( identifier , identifier , (cast_expression "(int)((ulonglong)dVar19 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar19 >> 0x20)" ( (binary_expression "(ulonglong)dVar19 >> 0x20" (cast_expression "(ulonglong)dVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar19,0)" identifier (argument_list "(dVar19,0)" ( identifier , number_literal ))) ))) ;) (return_statement "return;" return ;) })) (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" (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 + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" 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 + 0x9ac" identifier + number_literal) ))) ;) (expression_statement "pDStack_48 = wand;" (assignment_expression "pDStack_48 = wand" identifier = identifier) ;) })) (expression_statement "puVar10 = PTR_s_t_char____NULL_0014f03c + 0x9ac;" (assignment_expression "puVar10 = PTR_s_t_char____NULL_0014f03c + 0x9ac" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x9ac" identifier + number_literal)) ;) (expression_statement "pDVar3 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954);" (assignment_expression "pDVar3 = (DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954)" identifier = (cast_expression "(DrawingWand *)(PTR_s_t_char____NULL_0014f03c + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_t_char____NULL_0014f03c + -0x954)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" identifier + number_literal) )))) ;) (expression_statement "puVar15 = PTR___assert_fail_0014f720;" (assignment_expression "puVar15 = PTR___assert_fail_0014f720" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" (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 "(pDVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" ( identifier , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) ))) ;) (expression_statement "piVar12 = *(int **)(puVar15 + 0xe2d04);" (assignment_expression "piVar12 = *(int **)(puVar15 + 0xe2d04)" identifier = (pointer_expression "*(int **)(puVar15 + 0xe2d04)" * (cast_expression "(int **)(puVar15 + 0xe2d04)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe2d04)" ( (binary_expression "puVar15 + 0xe2d04" identifier + number_literal) ))))) ;) (expression_statement "pDStack_4c = (DrawingWand *)*piVar12;" (assignment_expression "pDStack_4c = (DrawingWand *)*piVar12" identifier = (cast_expression "(DrawingWand *)*piVar12" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar12" * identifier))) ;) (expression_statement "pDVar4 = pDStack_48;" (assignment_expression "pDVar4 = pDStack_48" identifier = identifier) ;) (if_statement "if (pDVar3 == (DrawingWand *)0x0) {\nLAB_0006c904:\n    iVar8 = 0x131f;\n    puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);\n    pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);\n    (**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);\n  }\n  else {\n    pDVar4 = pDVar3;\n    if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;\n    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);\n    pDVar3 = pDStack_4c;\n    if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }\n  }" if (parenthesized_expression "(pDVar3 == (DrawingWand *)0x0)" ( (binary_expression "pDVar3 == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0006c904:\n    iVar8 = 0x131f;\n    puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);\n    pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);\n    (**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);\n  }" { (labeled_statement "LAB_0006c904:\n    iVar8 = 0x131f;" statement_identifier : (expression_statement "iVar8 = 0x131f;" (assignment_expression "iVar8 = 0x131f" identifier = number_literal) ;)) (expression_statement "puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980);" (assignment_expression "puVar10 = (undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980)" identifier = (cast_expression "(undefined *)(*(int *)(puVar15 + 0xe2874) + 0x980)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar15 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(puVar15 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954);" (assignment_expression "pDVar3 = (DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(puVar15 + 0xe2874) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar15 + 0xe2874) + -0x954)" ( (binary_expression "*(int *)(puVar15 + 0xe2874) + -0x954" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970);" (call_expression "(**(code **)(puVar15 + 0xe2f58))(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(puVar15 + 0xe2f58))" ( (pointer_expression "**(code **)(puVar15 + 0xe2f58)" * (pointer_expression "*(code **)(puVar15 + 0xe2f58)" * (cast_expression "(code **)(puVar15 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe2f58)" ( (binary_expression "puVar15 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(pDVar3,*(int *)(puVar15 + 0xe2874) + -0x970)" ( identifier , (binary_expression "*(int *)(puVar15 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    pDVar4 = pDVar3;\n    if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;\n    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);\n    pDVar3 = pDStack_4c;\n    if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }\n  }" else (compound_statement "{\n    pDVar4 = pDVar3;\n    if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;\n    (**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);\n    pDVar3 = pDStack_4c;\n    if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }\n  }" { (expression_statement "pDVar4 = pDVar3;" (assignment_expression "pDVar4 = pDVar3" identifier = identifier) ;) (if_statement "if (pDVar3->signature != 0xabacadab) {\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" if (parenthesized_expression "(pDVar3->signature != 0xabacadab)" ( (binary_expression "pDVar3->signature != 0xabacadab" (field_expression "pDVar3->signature" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n      (**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" { (expression_statement "(**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980);" (call_expression "(**(code **)(puVar15 + 0xe2f58))\n                (*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(puVar15 + 0xe2f58))" ( (pointer_expression "**(code **)(puVar15 + 0xe2f58)" * (pointer_expression "*(code **)(puVar15 + 0xe2f58)" * (cast_expression "(code **)(puVar15 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe2f58)" ( (binary_expression "puVar15 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar15 + 0xe2874) + 0x419c,*(int *)(puVar15 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar15 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(puVar15 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar15 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar15 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) (goto_statement "goto LAB_0006c904;" goto statement_identifier ;) })) (if_statement "if (pDVar3->debug != MagickFalse) {\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }" if (parenthesized_expression "(pDVar3->debug != MagickFalse)" ( (binary_expression "pDVar3->debug != MagickFalse" (field_expression "pDVar3->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      puVar10 = (undefined *)0x1322;\n      (**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);\n    }" { (expression_statement "puVar10 = (undefined *)0x1322;" (assignment_expression "puVar10 = (undefined *)0x1322" identifier = (cast_expression "(undefined *)0x1322" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968);" (call_expression "(**(code **)(puVar15 + 0xe2cc0))\n                (0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(puVar15 + 0xe2cc0))" ( (pointer_expression "**(code **)(puVar15 + 0xe2cc0)" * (pointer_expression "*(code **)(puVar15 + 0xe2cc0)" * (cast_expression "(code **)(puVar15 + 0xe2cc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe2cc0)" ( (binary_expression "puVar15 + 0xe2cc0" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(puVar15 + 0xe2874) + -0x970,*(int *)(puVar15 + 0xe2874) + 0x968)" ( number_literal , (binary_expression "*(int *)(puVar15 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar15 + 0xe2874) + 0x968" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "unaff_s1 = auStack_104c;" (assignment_expression "unaff_s1 = auStack_104c" identifier = identifier) ;) (expression_statement "iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0;" (assignment_expression "iVar8 = *(int *)(puVar15 + 0xe2874) + -0xc0" identifier = (binary_expression "*(int *)(puVar15 + 0xe2874) + -0xc0" (pointer_expression "*(int *)(puVar15 + 0xe2874)" * (cast_expression "(int *)(puVar15 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + 0xe2874)" ( (binary_expression "puVar15 + 0xe2874" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000);" (call_expression "(**(code **)(puVar15 + 0xe29b8))(unaff_s1,0x1000)" (parenthesized_expression "(**(code **)(puVar15 + 0xe29b8))" ( (pointer_expression "**(code **)(puVar15 + 0xe29b8)" * (pointer_expression "*(code **)(puVar15 + 0xe29b8)" * (cast_expression "(code **)(puVar15 + 0xe29b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe29b8)" ( (binary_expression "puVar15 + 0xe29b8" identifier + number_literal) ))))) )) (argument_list "(unaff_s1,0x1000)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1);" (call_expression "(**(code **)(puVar15 + 0xe2e68))(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1)" (parenthesized_expression "(**(code **)(puVar15 + 0xe2e68))" ( (pointer_expression "**(code **)(puVar15 + 0xe2e68)" * (pointer_expression "*(code **)(puVar15 + 0xe2e68)" * (cast_expression "(code **)(puVar15 + 0xe2e68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe2e68)" ( (binary_expression "puVar15 + 0xe2e68" identifier + number_literal) ))))) )) (argument_list "(&pDVar3->graphic_context[pDVar3->index]->density,unaff_s1)" ( (pointer_expression "&pDVar3->graphic_context[pDVar3->index]->density" & (field_expression "pDVar3->graphic_context[pDVar3->index]->density" (subscript_expression "pDVar3->graphic_context[pDVar3->index]" (field_expression "pDVar3->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar3->index" identifier -> field_identifier) ]) -> field_identifier)) , identifier ))) ;) (expression_statement "pDVar3 = pDStack_4c;" (assignment_expression "pDVar3 = pDStack_4c" identifier = identifier) ;) (if_statement "if (pDStack_4c == (DrawingWand *)*piVar12) {\n      return;\n    }" if (parenthesized_expression "(pDStack_4c == (DrawingWand *)*piVar12)" ( (binary_expression "pDStack_4c == (DrawingWand *)*piVar12" identifier == (cast_expression "(DrawingWand *)*piVar12" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar12" * identifier))) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) }))) (expression_statement "pcVar16 = *(code **)(puVar15 + 0xe2bc4);" (assignment_expression "pcVar16 = *(code **)(puVar15 + 0xe2bc4)" identifier = (pointer_expression "*(code **)(puVar15 + 0xe2bc4)" * (cast_expression "(code **)(puVar15 + 0xe2bc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + 0xe2bc4)" ( (binary_expression "puVar15 + 0xe2bc4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar16)();" (call_expression "(*pcVar16)()" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "dVar19 = (double)CONCAT44(iVar8,puVar10);" (assignment_expression "dVar19 = (double)CONCAT44(iVar8,puVar10)" identifier = (cast_expression "(double)CONCAT44(iVar8,puVar10)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(iVar8,puVar10)" identifier (argument_list "(iVar8,puVar10)" ( identifier , identifier ))))) ;) (expression_statement "pDStack_10bc = pDVar4;" (assignment_expression "pDStack_10bc = pDVar4" identifier = identifier) ;) (if_statement "if (pDVar3 != (DrawingWand *)0x0) {\n    if (pDVar3->signature == 0xabacadab) {\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958);\n    pDStack_10bc = pDVar3;\n  }" if (parenthesized_expression "(pDVar3 != (DrawingWand *)0x0)" ( (binary_expression "pDVar3 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar3->signature == 0xabacadab) {\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958);\n    pDStack_10bc = pDVar3;\n  }" { (if_statement "if (pDVar3->signature == 0xabacadab) {\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }" if (parenthesized_expression "(pDVar3->signature == 0xabacadab)" ( (binary_expression "pDVar3->signature == 0xabacadab" (field_expression "pDVar3->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));\n      if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }\n      iVar8 = *(int *)(pcVar16 + 0xe2708);\n      pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;\n      MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));\n      return;\n    }" { (if_statement "if (pDVar3->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }" if (parenthesized_expression "(pDVar3->debug != MagickFalse)" ( (binary_expression "pDVar3->debug != MagickFalse" (field_expression "pDVar3->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        (**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);\n      }" { (expression_statement "(**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar16 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2b54))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2b54)" * (pointer_expression "*(code **)(pcVar16 + 0xe2b54)" * (cast_expression "(code **)(pcVar16 + 0xe2b54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2b54)" ( (binary_expression "pcVar16 + 0xe2b54" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar16 + 0xe2708) + -0x970,*(int *)(pcVar16 + 0xe2708) + 0x948,\n                   0x134a)" ( number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0));" (assignment_expression "fVar18 = (float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0))" identifier = (cast_expression "(float)(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0))" ( (binary_expression "dVar19 * *(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcVar16 + 0xe26f8) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar16 + 0xe26f8) + 0x75f0)" ( (binary_expression "*(int *)(pcVar16 + 0xe26f8) + 0x75f0" (pointer_expression "*(int *)(pcVar16 + 0xe26f8)" * (cast_expression "(int *)(pcVar16 + 0xe26f8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe26f8)" ( (binary_expression "pcVar16 + 0xe26f8" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (if_statement "if ((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)) {\n        return;\n      }" if (parenthesized_expression "((pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18))" ( (binary_expression "(pDVar3->filter_off == MagickFalse) &&\n         (pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)" (parenthesized_expression "(pDVar3->filter_off == MagickFalse)" ( (binary_expression "pDVar3->filter_off == MagickFalse" (field_expression "pDVar3->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "(pDVar3->graphic_context[pDVar3->index]->alpha == fVar18)" ( (binary_expression "pDVar3->graphic_context[pDVar3->index]->alpha == fVar18" (field_expression "pDVar3->graphic_context[pDVar3->index]->alpha" (subscript_expression "pDVar3->graphic_context[pDVar3->index]" (field_expression "pDVar3->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar3->index" identifier -> field_identifier) ]) -> field_identifier) == identifier) ))) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (expression_statement "iVar8 = *(int *)(pcVar16 + 0xe2708);" (assignment_expression "iVar8 = *(int *)(pcVar16 + 0xe2708)" identifier = (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) ))))) ;) (expression_statement "pDVar3->graphic_context[pDVar3->index]->alpha = fVar18;" (assignment_expression "pDVar3->graphic_context[pDVar3->index]->alpha = fVar18" (field_expression "pDVar3->graphic_context[pDVar3->index]->alpha" (subscript_expression "pDVar3->graphic_context[pDVar3->index]" (field_expression "pDVar3->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar3->index" identifier -> field_identifier) ]) -> field_identifier) = identifier) ;) (expression_statement "MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0));" (call_expression "MVGPrintf(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0))" identifier (argument_list "(pDVar3,(char *)(iVar8 + -0xb4),(int)((ulonglong)dVar19 >> 0x20),SUB84(dVar19,0))" ( identifier , (cast_expression "(char *)(iVar8 + -0xb4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + -0xb4)" ( (binary_expression "iVar8 + -0xb4" identifier + number_literal) ))) , (cast_expression "(int)((ulonglong)dVar19 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar19 >> 0x20)" ( (binary_expression "(ulonglong)dVar19 >> 0x20" (cast_expression "(ulonglong)dVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar19,0)" identifier (argument_list "(dVar19,0)" ( identifier , number_literal ))) ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar16 + 0xe2dec))\n              (*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2dec))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2dec)" * (pointer_expression "*(code **)(pcVar16 + 0xe2dec)" * (cast_expression "(code **)(pcVar16 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2dec)" ( (binary_expression "pcVar16 + 0xe2dec" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0xe2708) + 0x419c,*(int *)(pcVar16 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar16 + 0xe2708) + 0x958)" ( (binary_expression "*(int *)(pcVar16 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pDStack_10bc = pDVar3;" (assignment_expression "pDStack_10bc = pDVar3" identifier = identifier) ;) })) (expression_statement "pcVar17 = *(code **)(pcVar16 + 0xe2dec);" (assignment_expression "pcVar17 = *(code **)(pcVar16 + 0xe2dec)" identifier = (pointer_expression "*(code **)(pcVar16 + 0xe2dec)" * (cast_expression "(code **)(pcVar16 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2dec)" ( (binary_expression "pcVar16 + 0xe2dec" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = (char *)(*(int *)(pcVar16 + 0xe2708) + -0x970);" (assignment_expression "pcVar6 = (char *)(*(int *)(pcVar16 + 0xe2708) + -0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar16 + 0xe2708) + -0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar16 + 0xe2708) + -0x970)" ( (binary_expression "*(int *)(pcVar16 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954);" (assignment_expression "pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar16 + 0xe2708) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar16 + 0xe2708) + -0x954)" ( (binary_expression "*(int *)(pcVar16 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar17)(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958);" (call_expression "(*pcVar17)(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar17)" ( (pointer_expression "*pcVar17" * identifier) )) (argument_list "(pDVar4,pcVar6,0x1347,*(int *)(pcVar16 + 0xe2708) + 0x958)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar16 + 0xe2708)" * (cast_expression "(int *)(pcVar16 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2708)" ( (binary_expression "pcVar16 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar13 = *(int **)(pcVar17 + 0xe2a4c);" (assignment_expression "piVar13 = *(int **)(pcVar17 + 0xe2a4c)" identifier = (pointer_expression "*(int **)(pcVar17 + 0xe2a4c)" * (cast_expression "(int **)(pcVar17 + 0xe2a4c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2a4c)" ( (binary_expression "pcVar17 + 0xe2a4c" identifier + number_literal) ))))) ;) (expression_statement "pDStack_10c4 = (DrawingWand *)*piVar13;" (assignment_expression "pDStack_10c4 = (DrawingWand *)*piVar13" identifier = (cast_expression "(DrawingWand *)*piVar13" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) ;) (expression_statement "puStack_10b8 = unaff_s1;" (assignment_expression "puStack_10b8 = unaff_s1" identifier = identifier) ;) (expression_statement "piStack_10b4 = piVar12;" (assignment_expression "piStack_10b4 = piVar12" identifier = identifier) ;) (if_statement "if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930);\n  }" if (parenthesized_expression "(pDVar4 != (DrawingWand *)0x0)" ( (binary_expression "pDVar4 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930);\n  }" { (if_statement "if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }" if (parenthesized_expression "(pDVar4->signature == 0xabacadab)" ( (binary_expression "pDVar4->signature == 0xabacadab" (field_expression "pDVar4->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }\n      if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }\n      if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }\n    }" { (if_statement "if (pDVar4->debug == MagickFalse) {\n        pIVar1 = pDVar4->image;\n      }\n      else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }" if (parenthesized_expression "(pDVar4->debug == MagickFalse)" ( (binary_expression "pDVar4->debug == MagickFalse" (field_expression "pDVar4->debug" identifier -> field_identifier) == identifier) )) (compound_statement "{\n        pIVar1 = pDVar4->image;\n      }" { (expression_statement "pIVar1 = pDVar4->image;" (assignment_expression "pIVar1 = pDVar4->image" identifier = (field_expression "pDVar4->image" identifier -> field_identifier)) ;) }) (else_clause "else {\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }" else (compound_statement "{\n        (**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);\n        pIVar1 = pDVar4->image;\n      }" { (expression_statement "(**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6);" (call_expression "(**(code **)(pcVar17 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2a08))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2a08)" * (pointer_expression "*(code **)(pcVar17 + 0xe2a08)" * (cast_expression "(code **)(pcVar17 + 0xe2a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2a08)" ( (binary_expression "pcVar17 + 0xe2a08" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar17 + 0xe25bc) + -0x970,*(int *)(pcVar17 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6)" ( number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar17 + 0xe25b0)" * (cast_expression "(int *)(pcVar17 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25b0)" ( (binary_expression "pcVar17 + 0xe25b0" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "pIVar1 = pDVar4->image;" (assignment_expression "pIVar1 = pDVar4->image" identifier = (field_expression "pDVar4->image" identifier -> field_identifier)) ;) }))) (if_statement "if (pIVar1 == (Image *)0x0) {\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }" if (parenthesized_expression "(pIVar1 == (Image *)0x0)" ( (binary_expression "pIVar1 == (Image *)0x0" identifier == (cast_expression "(Image *)0x0" ( (type_descriptor "Image *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);\n      }" { (expression_statement "(**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name);" (call_expression "(**(code **)(pcVar17 + 0xe283c))\n                  (pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe283c))" ( (pointer_expression "**(code **)(pcVar17 + 0xe283c)" * (pointer_expression "*(code **)(pcVar17 + 0xe283c)" * (cast_expression "(code **)(pcVar17 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe283c)" ( (binary_expression "pcVar17 + 0xe283c" identifier + number_literal) ))))) )) (argument_list "(pDVar4->exception,*(int *)(pcVar17 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar17 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar17 + 0xe25bc) + -0x225c,*(int *)(pcVar17 + 0xe25ac) + 0x5cf4,\n                   pDVar4->name)" ( (field_expression "pDVar4->exception" identifier -> field_identifier) , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar17 + 0xe25ac)" * (cast_expression "(int *)(pcVar17 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25ac)" ( (binary_expression "pcVar17 + 0xe25ac" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar4->name" identifier -> field_identifier) ))) ;) })) (if_statement "if (pcVar6 != (char *)0x0) {\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }" if (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar8 = *(int *)(pcVar17 + 0xe25ac);\n        if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }\n        pDVar4 = pDStack_10c4;\n        if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }\n        goto LAB_0006cd54;\n      }" { (expression_statement "iVar8 = *(int *)(pcVar17 + 0xe25ac);" (assignment_expression "iVar8 = *(int *)(pcVar17 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar17 + 0xe25ac)" * (cast_expression "(int *)(pcVar17 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25ac)" ( (binary_expression "pcVar17 + 0xe25ac" identifier + number_literal) ))))) ;) (if_statement "if (*pcVar6 == '#') {\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }\n        else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }" if (parenthesized_expression "(*pcVar6 == '#')" ( (binary_expression "*pcVar6 == '#'" (pointer_expression "*pcVar6" * identifier) == (char_literal "'#'" ' character ')) )) (compound_statement "{\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);\n          iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);\n          if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);\n          pDVar14 = pDVar4->graphic_context[pDVar4->index];\n          if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }\n          format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);\n          MVGPrintf(pDVar4,format,auStack_20c4);\n        }" { (expression_statement "(**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1);" (call_expression "(**(code **)(pcVar17 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2700)" * (pointer_expression "*(code **)(pcVar17 + 0xe2700)" * (cast_expression "(code **)(pcVar17 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2700)" ( (binary_expression "pcVar17 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_30c4,0x1000,*(int *)(pcVar17 + 0xe25b0) + -0x131c,pcVar6 + 1)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar17 + 0xe25b0)" * (cast_expression "(int *)(pcVar17 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25b0)" ( (binary_expression "pcVar17 + 0xe25b0" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar6 + 1" identifier + number_literal) ))) ;) (expression_statement "iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4);" (assignment_expression "iVar8 = (**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4)" identifier = (call_expression "(**(code **)(pcVar17 + 0xe2bc8))(pDVar4->image,auStack_30c4)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2bc8))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2bc8)" * (pointer_expression "*(code **)(pcVar17 + 0xe2bc8)" * (cast_expression "(code **)(pcVar17 + 0xe2bc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2bc8)" ( (binary_expression "pcVar17 + 0xe2bc8" identifier + number_literal) ))))) )) (argument_list "(pDVar4->image,auStack_30c4)" ( (field_expression "pDVar4->image" identifier -> field_identifier) , identifier )))) ;) (if_statement "if (iVar8 == 0) {\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar8 = *(int *)(pcVar17 + 0xe25ac);\n            uVar11 = 0x1386;\n            pEVar5 = pDVar4->exception;\n            iVar9 = *(int *)(pcVar17 + 0xe25bc);\n            iVar7 = *(int *)(pcVar17 + 0xe25bc);\n            pcVar16 = *(code **)(pcVar17 + 0xe283c);\n            iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" { (expression_statement "iVar8 = *(int *)(pcVar17 + 0xe25ac);" (assignment_expression "iVar8 = *(int *)(pcVar17 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar17 + 0xe25ac)" * (cast_expression "(int *)(pcVar17 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25ac)" ( (binary_expression "pcVar17 + 0xe25ac" identifier + number_literal) ))))) ;) (expression_statement "uVar11 = 0x1386;" (assignment_expression "uVar11 = 0x1386" identifier = number_literal) ;) (expression_statement "pEVar5 = pDVar4->exception;" (assignment_expression "pEVar5 = pDVar4->exception" identifier = (field_expression "pDVar4->exception" identifier -> field_identifier)) ;) (expression_statement "iVar9 = *(int *)(pcVar17 + 0xe25bc);" (assignment_expression "iVar9 = *(int *)(pcVar17 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = *(int *)(pcVar17 + 0xe25bc);" (assignment_expression "iVar7 = *(int *)(pcVar17 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar16 = *(code **)(pcVar17 + 0xe283c);" (assignment_expression "pcVar16 = *(code **)(pcVar17 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar17 + 0xe283c)" * (cast_expression "(code **)(pcVar17 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe283c)" ( (binary_expression "pcVar17 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74;" (assignment_expression "iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x74" identifier = (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (goto_statement "goto LAB_0006cb28;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6);" (call_expression "(**(code **)(pcVar17 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2700)" * (pointer_expression "*(code **)(pcVar17 + 0xe2700)" * (cast_expression "(code **)(pcVar17 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2700)" ( (binary_expression "pcVar17 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_20c4,0x1000,*(int *)(pcVar17 + 0xe25bc) + -0x68,pcVar6)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "pDVar14 = pDVar4->graphic_context[pDVar4->index];" (assignment_expression "pDVar14 = pDVar4->graphic_context[pDVar4->index]" identifier = (subscript_expression "pDVar4->graphic_context[pDVar4->index]" (field_expression "pDVar4->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar4->index" identifier -> field_identifier) ])) ;) (if_statement "if ((pDVar14->fill).alpha != 0.0) {\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }" if (parenthesized_expression "((pDVar14->fill).alpha != 0.0)" ( (binary_expression "(pDVar14->fill).alpha != 0.0" (field_expression "(pDVar14->fill).alpha" (parenthesized_expression "(pDVar14->fill)" ( (field_expression "pDVar14->fill" identifier -> field_identifier) )) . field_identifier) != number_literal) )) (compound_statement "{\n            (pDVar14->fill).alpha = (double)pDVar14->alpha;\n          }" { (expression_statement "(pDVar14->fill).alpha = (double)pDVar14->alpha;" (assignment_expression "(pDVar14->fill).alpha = (double)pDVar14->alpha" (field_expression "(pDVar14->fill).alpha" (parenthesized_expression "(pDVar14->fill)" ( (field_expression "pDVar14->fill" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(double)pDVar14->alpha" ( (type_descriptor "double" primitive_type) ) (field_expression "pDVar14->alpha" identifier -> field_identifier))) ;) })) (expression_statement "format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60);" (assignment_expression "format = (char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60)" identifier = (cast_expression "(char *)(*(int *)(pcVar17 + 0xe25bc) + -0x60)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar17 + 0xe25bc) + -0x60)" ( (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "MVGPrintf(pDVar4,format,auStack_20c4);" (call_expression "MVGPrintf(pDVar4,format,auStack_20c4)" identifier (argument_list "(pDVar4,format,auStack_20c4)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }" else (compound_statement "{\n          uVar11 = 0x1380;\n          pEVar5 = pDVar4->exception;\n          iVar9 = *(int *)(pcVar17 + 0xe25bc);\n          iVar7 = *(int *)(pcVar17 + 0xe25bc);\n          pcVar16 = *(code **)(pcVar17 + 0xe283c);\n          iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);\n          (*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);\n        }" { (expression_statement "uVar11 = 0x1380;" (assignment_expression "uVar11 = 0x1380" identifier = number_literal) ;) (expression_statement "pEVar5 = pDVar4->exception;" (assignment_expression "pEVar5 = pDVar4->exception" identifier = (field_expression "pDVar4->exception" identifier -> field_identifier)) ;) (expression_statement "iVar9 = *(int *)(pcVar17 + 0xe25bc);" (assignment_expression "iVar9 = *(int *)(pcVar17 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = *(int *)(pcVar17 + 0xe25bc);" (assignment_expression "iVar7 = *(int *)(pcVar17 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar16 = *(code **)(pcVar17 + 0xe283c);" (assignment_expression "pcVar16 = *(code **)(pcVar17 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar17 + 0xe283c)" * (cast_expression "(code **)(pcVar17 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe283c)" ( (binary_expression "pcVar17 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84;" (assignment_expression "iVar2 = *(int *)(pcVar17 + 0xe25bc) + -0x84" identifier = (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0006cb28:\n          format = (char *)(iVar7 - 0x970);" statement_identifier : (expression_statement "format = (char *)(iVar7 - 0x970);" (assignment_expression "format = (char *)(iVar7 - 0x970)" identifier = (cast_expression "(char *)(iVar7 - 0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 - 0x970)" ( (binary_expression "iVar7 - 0x970" identifier - number_literal) )))) ;)) (expression_statement "(*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6);" (call_expression "(*pcVar16)(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6)" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "(pEVar5,format,iVar9 + 0x918,uVar11,0x1cc,iVar2,iVar8 + 0x5cf4,pcVar6)" ( identifier , identifier , (binary_expression "iVar9 + 0x918" identifier + number_literal) , identifier , number_literal , identifier , (binary_expression "iVar8 + 0x5cf4" identifier + number_literal) , identifier ))) ;) }))) (expression_statement "pDVar4 = pDStack_10c4;" (assignment_expression "pDVar4 = pDStack_10c4" identifier = identifier) ;) (if_statement "if (pDStack_10c4 == (DrawingWand *)*piVar13) {\n          return;\n        }" if (parenthesized_expression "(pDStack_10c4 == (DrawingWand *)*piVar13)" ( (binary_expression "pDStack_10c4 == (DrawingWand *)*piVar13" identifier == (cast_expression "(DrawingWand *)*piVar13" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (goto_statement "goto LAB_0006cd54;" goto statement_identifier ;) })) }) (else_clause "else {\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }" else (compound_statement "{\n      (**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);\n    }" { (expression_statement "(**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar17 + 0xe2ca0))\n                (*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar17 + 0xe2ca0)" * (cast_expression "(code **)(pcVar17 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2ca0)" ( (binary_expression "pcVar17 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar17 + 0xe25bc) + 0x419c,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar17 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar17 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar17 + 0xe2ca0))\n              (*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar17 + 0xe2ca0)" * (cast_expression "(code **)(pcVar17 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2ca0)" ( (binary_expression "pcVar17 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar17 + 0xe25bc) + -0xa4,*(int *)(pcVar17 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar17 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "format = (char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970);" (assignment_expression "format = (char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar17 + 0xe25bc) - 0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar17 + 0xe25bc) - 0x970)" ( (binary_expression "*(int *)(pcVar17 + 0xe25bc) - 0x970" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) - number_literal) )))) ;) (expression_statement "pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954);" (assignment_expression "pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar17 + 0xe25bc) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar17 + 0xe25bc) + -0x954)" ( (binary_expression "*(int *)(pcVar17 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcVar17 + 0xe2ca0))(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar17 + 0xe2ca0))(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar17 + 0xe2ca0)" * (cast_expression "(code **)(pcVar17 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2ca0)" ( (binary_expression "pcVar17 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(pDVar4,format,0x1377,*(int *)(pcVar17 + 0xe25bc) + 0x930)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar17 + 0xe25bc)" * (cast_expression "(int *)(pcVar17 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe25bc)" ( (binary_expression "pcVar17 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0006cd54:\n  pcVar16 = *(code **)(pcVar17 + 0xe290c);" statement_identifier : (expression_statement "pcVar16 = *(code **)(pcVar17 + 0xe290c);" (assignment_expression "pcVar16 = *(code **)(pcVar17 + 0xe290c)" identifier = (pointer_expression "*(code **)(pcVar17 + 0xe290c)" * (cast_expression "(code **)(pcVar17 + 0xe290c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe290c)" ( (binary_expression "pcVar17 + 0xe290c" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar16)();" (call_expression "(*pcVar16)()" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908);\n  }" if (parenthesized_expression "(pDVar4 != (DrawingWand *)0x0)" ( (binary_expression "pDVar4 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908);\n  }" { (if_statement "if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }" if (parenthesized_expression "(pDVar4->signature == 0xabacadab)" ( (binary_expression "pDVar4->signature == 0xabacadab" (field_expression "pDVar4->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }\n      if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }\n      pcVar17 = *(code **)(pcVar16 + 0xe2408);\n      pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;\n      uVar11 = (*pcVar17)(0x1a,format);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);\n      return;\n    }" { (if_statement "if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }" if (parenthesized_expression "(pDVar4->debug != MagickFalse)" ( (binary_expression "pDVar4->debug != MagickFalse" (field_expression "pDVar4->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        (**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);\n      }" { (expression_statement "(**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name);" (call_expression "(**(code **)(pcVar16 + 0xe2728))\n                  (0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2728))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2728)" * (pointer_expression "*(code **)(pcVar16 + 0xe2728)" * (cast_expression "(code **)(pcVar16 + 0xe2728)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2728)" ( (binary_expression "pcVar16 + 0xe2728" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar16 + 0xe22dc) + -0x970,*(int *)(pcVar16 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar16 + 0xe22d0) + -0x131c,pDVar4->name)" ( number_literal , (binary_expression "*(int *)(pcVar16 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar16 + 0xe22d0)" * (cast_expression "(int *)(pcVar16 + 0xe22d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22d0)" ( (binary_expression "pcVar16 + 0xe22d0" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar4->name" identifier -> field_identifier) ))) ;) })) (if_statement "if ((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)) {\n        return;\n      }" if (parenthesized_expression "((pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format))" ( (binary_expression "(pDVar4->filter_off == MagickFalse) &&\n         ((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)" (parenthesized_expression "(pDVar4->filter_off == MagickFalse)" ( (binary_expression "pDVar4->filter_off == MagickFalse" (field_expression "pDVar4->filter_off" identifier -> field_identifier) == identifier) )) && (parenthesized_expression "((char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format)" ( (binary_expression "(char *)pDVar4->graphic_context[pDVar4->index]->fill_rule == format" (cast_expression "(char *)pDVar4->graphic_context[pDVar4->index]->fill_rule" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "pDVar4->graphic_context[pDVar4->index]->fill_rule" (subscript_expression "pDVar4->graphic_context[pDVar4->index]" (field_expression "pDVar4->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar4->index" identifier -> field_identifier) ]) -> field_identifier)) == identifier) ))) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (expression_statement "pcVar17 = *(code **)(pcVar16 + 0xe2408);" (assignment_expression "pcVar17 = *(code **)(pcVar16 + 0xe2408)" identifier = (pointer_expression "*(code **)(pcVar16 + 0xe2408)" * (cast_expression "(code **)(pcVar16 + 0xe2408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2408)" ( (binary_expression "pcVar16 + 0xe2408" identifier + number_literal) ))))) ;) (expression_statement "pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format;" (assignment_expression "pDVar4->graphic_context[pDVar4->index]->fill_rule = (FillRule)format" (field_expression "pDVar4->graphic_context[pDVar4->index]->fill_rule" (subscript_expression "pDVar4->graphic_context[pDVar4->index]" (field_expression "pDVar4->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar4->index" identifier -> field_identifier) ]) -> field_identifier) = (cast_expression "(FillRule)format" ( (type_descriptor "FillRule" type_identifier) ) identifier)) ;) (expression_statement "uVar11 = (*pcVar17)(0x1a,format);" (assignment_expression "uVar11 = (*pcVar17)(0x1a,format)" identifier = (call_expression "(*pcVar17)(0x1a,format)" (parenthesized_expression "(*pcVar17)" ( (pointer_expression "*pcVar17" * identifier) )) (argument_list "(0x1a,format)" ( number_literal , identifier )))) ;) (expression_statement "MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11);" (call_expression "MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11)" identifier (argument_list "(pDVar4,(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54),uVar11)" ( identifier , (cast_expression "(char *)(*(int *)(pcVar16 + 0xe22dc) + -0x54)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar16 + 0xe22dc) + -0x54)" ( (binary_expression "*(int *)(pcVar16 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar16 + 0xe29c0))\n              (*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe29c0))" ( (pointer_expression "**(code **)(pcVar16 + 0xe29c0)" * (pointer_expression "*(code **)(pcVar16 + 0xe29c0)" * (cast_expression "(code **)(pcVar16 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe29c0)" ( (binary_expression "pcVar16 + 0xe29c0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0xe22dc) + 0x419c,*(int *)(pcVar16 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar16 + 0xe22dc) + 0x908)" ( (binary_expression "*(int *)(pcVar16 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar17 = *(code **)(pcVar16 + 0xe29c0);" (assignment_expression "pcVar17 = *(code **)(pcVar16 + 0xe29c0)" identifier = (pointer_expression "*(code **)(pcVar16 + 0xe29c0)" * (cast_expression "(code **)(pcVar16 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe29c0)" ( (binary_expression "pcVar16 + 0xe29c0" identifier + number_literal) ))))) ;) (expression_statement "iVar8 = *(int *)(pcVar16 + 0xe22dc) + -0x970;" (assignment_expression "iVar8 = *(int *)(pcVar16 + 0xe22dc) + -0x970" identifier = (binary_expression "*(int *)(pcVar16 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954);" (assignment_expression "pDVar4 = (DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar16 + 0xe22dc) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar16 + 0xe22dc) + -0x954)" ( (binary_expression "*(int *)(pcVar16 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar17)(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908);" (call_expression "(*pcVar17)(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar17)" ( (pointer_expression "*pcVar17" * identifier) )) (argument_list "(pDVar4,iVar8,0x13ae,*(int *)(pcVar16 + 0xe22dc) + 0x908)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar16 + 0xe22dc)" * (cast_expression "(int *)(pcVar16 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe22dc)" ( (binary_expression "pcVar16 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pDVar4 != (DrawingWand *)0x0) {\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  }" if (parenthesized_expression "(pDVar4 != (DrawingWand *)0x0)" ( (binary_expression "pDVar4 != (DrawingWand *)0x0" identifier != (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n  }" { (if_statement "if (pDVar4->signature == 0xabacadab) {\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }" if (parenthesized_expression "(pDVar4->signature == 0xabacadab)" ( (binary_expression "pDVar4->signature == 0xabacadab" (field_expression "pDVar4->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n      if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }\n      if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }\n      (**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);\n    }" { (if_statement "if (pDVar4->debug != MagickFalse) {\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }" if (parenthesized_expression "(pDVar4->debug != MagickFalse)" ( (binary_expression "pDVar4->debug != MagickFalse" (field_expression "pDVar4->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n        (**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);\n      }" { (expression_statement "(**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name);" (call_expression "(**(code **)(pcVar17 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe25e4))" ( (pointer_expression "**(code **)(pcVar17 + 0xe25e4)" * (pointer_expression "*(code **)(pcVar17 + 0xe25e4)" * (cast_expression "(code **)(pcVar17 + 0xe25e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe25e4)" ( (binary_expression "pcVar17 + 0xe25e4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar17 + 0xe2198) + -0x970,*(int *)(pcVar17 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar17 + 0xe218c) + -0x131c,pDVar4->name)" ( number_literal , (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar17 + 0xe218c)" * (cast_expression "(int *)(pcVar17 + 0xe218c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe218c)" ( (binary_expression "pcVar17 + 0xe218c" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar4->name" identifier -> field_identifier) ))) ;) })) (if_statement "if (iVar8 != 0) {\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        pDVar14 = pDVar4->graphic_context[pDVar4->index];\n        if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }\n        (**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);\n        MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);\n        return;\n      }" { (expression_statement "pDVar14 = pDVar4->graphic_context[pDVar4->index];" (assignment_expression "pDVar14 = pDVar4->graphic_context[pDVar4->index]" identifier = (subscript_expression "pDVar4->graphic_context[pDVar4->index]" (field_expression "pDVar4->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar4->index" identifier -> field_identifier) ])) ;) (if_statement "if (pDVar4->filter_off == MagickFalse) {\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }" if (parenthesized_expression "(pDVar4->filter_off == MagickFalse)" ( (binary_expression "pDVar4->filter_off == MagickFalse" (field_expression "pDVar4->filter_off" identifier -> field_identifier) == identifier) )) (compound_statement "{\n          pcVar6 = pDVar14->font;\n          if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }\n        }" { (expression_statement "pcVar6 = pDVar14->font;" (assignment_expression "pcVar6 = pDVar14->font" identifier = (field_expression "pDVar14->font" identifier -> field_identifier)) ;) (if_statement "if ((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)) {\n            return;\n          }" if (parenthesized_expression "((pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0))" ( (binary_expression "(pcVar6 != (char *)0x0) &&\n             (iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0)" ( (comma_expression "iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8), iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8)" identifier = (call_expression "(**(code **)(pcVar17 + 0xe2544))(pcVar6,iVar8)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe2544))" ( (pointer_expression "**(code **)(pcVar17 + 0xe2544)" * (pointer_expression "*(code **)(pcVar17 + 0xe2544)" * (cast_expression "(code **)(pcVar17 + 0xe2544)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe2544)" ( (binary_expression "pcVar17 + 0xe2544" identifier + number_literal) ))))) )) (argument_list "(pcVar6,iVar8)" ( identifier , identifier )))) , (binary_expression "iVar2 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) })) (expression_statement "(**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8);" (call_expression "(**(code **)(pcVar17 + 0xe278c))(&pDVar14->font,iVar8)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe278c))" ( (pointer_expression "**(code **)(pcVar17 + 0xe278c)" * (pointer_expression "*(code **)(pcVar17 + 0xe278c)" * (cast_expression "(code **)(pcVar17 + 0xe278c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe278c)" ( (binary_expression "pcVar17 + 0xe278c" identifier + number_literal) ))))) )) (argument_list "(&pDVar14->font,iVar8)" ( (pointer_expression "&pDVar14->font" & (field_expression "pDVar14->font" identifier -> field_identifier)) , identifier ))) ;) (expression_statement "MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8);" (call_expression "MVGPrintf(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8)" identifier (argument_list "(pDVar4,(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20),iVar8)" ( identifier , (cast_expression "(char *)(*(int *)(pcVar17 + 0xe2198) + -0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar17 + 0xe2198) + -0x20)" ( (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar17 + 0xe287c))\n                (*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar17 + 0xe287c)" * (pointer_expression "*(code **)(pcVar17 + 0xe287c)" * (cast_expression "(code **)(pcVar17 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe287c)" ( (binary_expression "pcVar17 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar17 + 0xe2198) + -0x44,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar17 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "(**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar17 + 0xe287c))\n              (*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar17 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar17 + 0xe287c)" * (pointer_expression "*(code **)(pcVar17 + 0xe287c)" * (cast_expression "(code **)(pcVar17 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe287c)" ( (binary_expression "pcVar17 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar17 + 0xe2198) + 0x419c,*(int *)(pcVar17 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar17 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar17 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar16 = *(code **)(pcVar17 + 0xe287c);" (assignment_expression "pcVar16 = *(code **)(pcVar17 + 0xe287c)" identifier = (pointer_expression "*(code **)(pcVar17 + 0xe287c)" * (cast_expression "(code **)(pcVar17 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar17 + 0xe287c)" ( (binary_expression "pcVar17 + 0xe287c" identifier + number_literal) ))))) ;) (expression_statement "iVar8 = *(int *)(pcVar17 + 0xe2198) + -0x970;" (assignment_expression "iVar8 = *(int *)(pcVar17 + 0xe2198) + -0x970" identifier = (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954);" (assignment_expression "pDVar4 = (DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954)" identifier = (cast_expression "(DrawingWand *)(*(int *)(pcVar17 + 0xe2198) + -0x954)" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar17 + 0xe2198) + -0x954)" ( (binary_expression "*(int *)(pcVar17 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar16)(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar16)(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar16)" ( (pointer_expression "*pcVar16" * identifier) )) (argument_list "(pDVar4,iVar8,0x13d7,*(int *)(pcVar17 + 0xe2198) + 0x8ec)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar17 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar17 + 0xe2198)" * (cast_expression "(int *)(pcVar17 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar17 + 0xe2198)" ( (binary_expression "pcVar17 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (pDVar4 == (DrawingWand *)0x0) {\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }" if (parenthesized_expression "(pDVar4 == (DrawingWand *)0x0)" ( (binary_expression "pDVar4 == (DrawingWand *)0x0" identifier == (cast_expression "(DrawingWand *)0x0" ( (type_descriptor "DrawingWand *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }" { (expression_statement "(**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);" (call_expression "(**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2704)" * (pointer_expression "*(code **)(pcVar16 + 0xe2704)" * (cast_expression "(code **)(pcVar16 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2704)" ( (binary_expression "pcVar16 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0xe2020) + -0x954,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1402,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar16 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) ;) (return_statement "return;" return ;) })) (if_statement "if (pDVar4->signature == 0xabacadab) {\n    if (pDVar4->debug != MagickFalse) {\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }\n    if (iVar8 != 0) {\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }" if (parenthesized_expression "(pDVar4->signature == 0xabacadab)" ( (binary_expression "pDVar4->signature == 0xabacadab" (field_expression "pDVar4->signature" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n    if (pDVar4->debug != MagickFalse) {\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }\n    if (iVar8 != 0) {\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }\n    (**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);\n    return;\n  }" { (if_statement "if (pDVar4->debug != MagickFalse) {\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }" if (parenthesized_expression "(pDVar4->debug != MagickFalse)" ( (binary_expression "pDVar4->debug != MagickFalse" (field_expression "pDVar4->debug" identifier -> field_identifier) != identifier) )) (compound_statement "{\n      (**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);\n    }" { (expression_statement "(**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name);" (call_expression "(**(code **)(pcVar16 + 0xe246c))\n                (0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe246c))" ( (pointer_expression "**(code **)(pcVar16 + 0xe246c)" * (pointer_expression "*(code **)(pcVar16 + 0xe246c)" * (cast_expression "(code **)(pcVar16 + 0xe246c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe246c)" ( (binary_expression "pcVar16 + 0xe246c" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar16 + 0xe2020) + -0x970,*(int *)(pcVar16 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar16 + 0xe2014) + -0x131c,pDVar4->name)" ( number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar16 + 0xe2014)" * (cast_expression "(int *)(pcVar16 + 0xe2014)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2014)" ( (binary_expression "pcVar16 + 0xe2014" identifier + number_literal) )))) + number_literal) , (field_expression "pDVar4->name" identifier -> field_identifier) ))) ;) })) (if_statement "if (iVar8 != 0) {\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n      pDVar14 = pDVar4->graphic_context[pDVar4->index];\n      if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }\n      (**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);\n      MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);\n      return;\n    }" { (expression_statement "pDVar14 = pDVar4->graphic_context[pDVar4->index];" (assignment_expression "pDVar14 = pDVar4->graphic_context[pDVar4->index]" identifier = (subscript_expression "pDVar4->graphic_context[pDVar4->index]" (field_expression "pDVar4->graphic_context" identifier -> field_identifier) [ (field_expression "pDVar4->index" identifier -> field_identifier) ])) ;) (if_statement "if (pDVar4->filter_off == MagickFalse) {\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }" if (parenthesized_expression "(pDVar4->filter_off == MagickFalse)" ( (binary_expression "pDVar4->filter_off == MagickFalse" (field_expression "pDVar4->filter_off" identifier -> field_identifier) == identifier) )) (compound_statement "{\n        pcVar6 = pDVar14->family;\n        if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }\n      }" { (expression_statement "pcVar6 = pDVar14->family;" (assignment_expression "pcVar6 = pDVar14->family" identifier = (field_expression "pDVar14->family" identifier -> field_identifier)) ;) (if_statement "if ((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)) {\n          return;\n        }" if (parenthesized_expression "((pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0))" ( (binary_expression "(pcVar6 != (char *)0x0) &&\n           (iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)" (parenthesized_expression "(pcVar6 != (char *)0x0)" ( (binary_expression "pcVar6 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0)" ( (comma_expression "iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8), iVar2 == 0" (assignment_expression "iVar2 = (**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8)" identifier = (call_expression "(**(code **)(pcVar16 + 0xe23cc))(pcVar6,iVar8)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe23cc))" ( (pointer_expression "**(code **)(pcVar16 + 0xe23cc)" * (pointer_expression "*(code **)(pcVar16 + 0xe23cc)" * (cast_expression "(code **)(pcVar16 + 0xe23cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe23cc)" ( (binary_expression "pcVar16 + 0xe23cc" identifier + number_literal) ))))) )) (argument_list "(pcVar6,iVar8)" ( identifier , identifier )))) , (binary_expression "iVar2 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })) (expression_statement "(**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8);" (call_expression "(**(code **)(pcVar16 + 0xe2614))(&pDVar14->family,iVar8)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2614))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2614)" * (pointer_expression "*(code **)(pcVar16 + 0xe2614)" * (cast_expression "(code **)(pcVar16 + 0xe2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2614)" ( (binary_expression "pcVar16 + 0xe2614" identifier + number_literal) ))))) )) (argument_list "(&pDVar14->family,iVar8)" ( (pointer_expression "&pDVar14->family" & (field_expression "pDVar14->family" identifier -> field_identifier)) , identifier ))) ;) (expression_statement "MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8);" (call_expression "MVGPrintf(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8)" identifier (argument_list "(pDVar4,(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10),iVar8)" ( identifier , (cast_expression "(char *)(*(int *)(pcVar16 + 0xe2020) + 0x10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar16 + 0xe2020) + 0x10)" ( (binary_expression "*(int *)(pcVar16 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc);" (call_expression "(**(code **)(pcVar16 + 0xe2704))\n              (*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2704)" * (pointer_expression "*(code **)(pcVar16 + 0xe2704)" * (cast_expression "(code **)(pcVar16 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2704)" ( (binary_expression "pcVar16 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0xe2020) + -0x14,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1406,\n               *(int *)(pcVar16 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar16 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) ;) (return_statement "return;" return ;) })) (expression_statement "(**(code **)(pcVar16 + 0xe2704))\n            (*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar16 + 0xe2020) + 0x8cc);" (call_expression "(**(code **)(pcVar16 + 0xe2704))\n            (*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar16 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar16 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar16 + 0xe2704)" * (pointer_expression "*(code **)(pcVar16 + 0xe2704)" * (cast_expression "(code **)(pcVar16 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar16 + 0xe2704)" ( (binary_expression "pcVar16 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar16 + 0xe2020) + 0x419c,*(int *)(pcVar16 + 0xe2020) + -0x970,0x1403,\n             *(int *)(pcVar16 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar16 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar16 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar16 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar16 + 0xe2020)" * (cast_expression "(int *)(pcVar16 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar16 + 0xe2020)" ( (binary_expression "pcVar16 + 0xe2020" identifier + number_literal) )))) + number_literal) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "int DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}\n\n" (function_definition "int DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" primitive_type (function_declarator "DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)" identifier (parameter_list "(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "undefined4 param_4" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "undefined *unaff_s0;" type_identifier (pointer_declarator "*unaff_s0" * identifier) ;) (declaration "undefined1 *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "int *piVar12;" primitive_type (pointer_declarator "*piVar12" * identifier) ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "float fVar16;" primitive_type identifier ;) (declaration "double dVar17;" primitive_type identifier ;) (declaration "undefined1 auStack_30c4 [4096];" type_identifier (array_declarator "auStack_30c4 [4096]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_20c4 [4096];" type_identifier (array_declarator "auStack_20c4 [4096]" identifier [ number_literal ]) ;) (declaration "int iStack_10c4;" primitive_type identifier ;) (declaration "undefined *puStack_10bc;" type_identifier (pointer_declarator "*puStack_10bc" * identifier) ;) (declaration "undefined1 *puStack_10b8;" type_identifier (pointer_declarator "*puStack_10b8" * identifier) ;) (declaration "undefined4 *puStack_10b4;" type_identifier (pointer_declarator "*puStack_10b4" * identifier) ;) (declaration "undefined1 auStack_104c [4096];" type_identifier (array_declarator "auStack_104c [4096]" identifier [ number_literal ]) ;) (declaration "undefined *puStack_4c;" type_identifier (pointer_declarator "*puStack_4c" * identifier) ;) (declaration "undefined *puStack_48;" type_identifier (pointer_declarator "*puStack_48" * identifier) ;) (expression_statement "dVar17 = (double)CONCAT44(param_3,param_4);" (assignment_expression "dVar17 = (double)CONCAT44(param_3,param_4)" identifier = (cast_expression "(double)CONCAT44(param_3,param_4)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(param_3,param_4)" identifier (argument_list "(param_3,param_4)" ( identifier , identifier ))))) ;) (expression_statement "puStack_48 = unaff_s0;" (assignment_expression "puStack_48 = unaff_s0" identifier = identifier) ;) (if_statement "if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }" if (parenthesized_expression "(param_1 != (undefined *)0x0)" ( (binary_expression "param_1 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }" { (if_statement "if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(param_1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x1054)" * (cast_expression "(int *)(param_1 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1054)" ( (binary_expression "param_1 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" { (if_statement "if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" if (parenthesized_expression "(*(int *)(param_1 + 0x1050) != 0)" ( (binary_expression "*(int *)(param_1 + 0x1050) != 0" (pointer_expression "*(int *)(param_1 + 0x1050)" * (cast_expression "(int *)(param_1 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1050)" ( (binary_expression "param_1 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" { (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4)" (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 + 0x998,0x12f4)" ( number_literal , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) , (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x998" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);" (assignment_expression "iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" ( (binary_expression "*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4" (pointer_expression "*(int *)(param_1 + 0x1038)" * (cast_expression "(int *)(param_1 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1038)" ( (binary_expression "param_1 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(param_1 + 0x1034) * 4" (pointer_expression "*(int *)(param_1 + 0x1034)" * (cast_expression "(int *)(param_1 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1034)" ( (binary_expression "param_1 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (if_statement "if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }" if (parenthesized_expression "((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))))" ( (binary_expression "(*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" (parenthesized_expression "(*(int *)(param_1 + 0x103c) == 0)" ( (binary_expression "*(int *)(param_1 + 0x103c) == 0" (pointer_expression "*(int *)(param_1 + 0x103c)" * (cast_expression "(int *)(param_1 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x103c)" ( (binary_expression "param_1 + 0x103c" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" ( (binary_expression "*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (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) )))) == (cast_expression "(double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (binary_expression "dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" identifier * (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" * (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" ( (binary_expression "PTR_LAB_0014f02c + 0x75f0" identifier + number_literal) ))))) ))))) ))) )) (compound_statement "{\n        return iVar1;\n      }" { (return_statement "return iVar1;" return identifier ;) })) (expression_statement "puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;" (assignment_expression "puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0xd4" identifier + number_literal)) ;) (expression_statement "*(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));" (assignment_expression "*(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (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) )))) = (cast_expression "(double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "double" primitive_type) ) (cast_expression "(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" ( (binary_expression "dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" identifier * (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" * (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" ( (binary_expression "PTR_LAB_0014f02c + 0x75f0" identifier + number_literal) ))))) ))))) ;) (expression_statement "iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));" (assignment_expression "iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier = (call_expression "FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier (argument_list "(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" ( identifier , identifier , (cast_expression "(int)((ulonglong)dVar17 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar17 >> 0x20)" ( (binary_expression "(ulonglong)dVar17 >> 0x20" (cast_expression "(ulonglong)dVar17" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar17,0)" identifier (argument_list "(dVar17,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" (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 + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" ( (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" 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 + 0x9ac" identifier + number_literal) ))) ;) (expression_statement "puStack_48 = param_1;" (assignment_expression "puStack_48 = param_1" identifier = identifier) ;) })) (expression_statement "puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;" (assignment_expression "puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x9ac" identifier + number_literal)) ;) (expression_statement "puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;" (assignment_expression "puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954" identifier = (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" identifier + number_literal)) ;) (expression_statement "puVar13 = PTR___assert_fail_0014f720;" (assignment_expression "puVar13 = PTR___assert_fail_0014f720" identifier = identifier) ;) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" (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 "(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" ( identifier , (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" identifier + number_literal) ))) ;) (expression_statement "puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);" (assignment_expression "puVar11 = *(undefined4 **)(puVar13 + 0xe2d04)" identifier = (pointer_expression "*(undefined4 **)(puVar13 + 0xe2d04)" * (cast_expression "(undefined4 **)(puVar13 + 0xe2d04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2d04)" ( (binary_expression "puVar13 + 0xe2d04" identifier + number_literal) ))))) ;) (expression_statement "puStack_4c = (undefined *)*puVar11;" (assignment_expression "puStack_4c = (undefined *)*puVar11" identifier = (cast_expression "(undefined *)*puVar11" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar11" * identifier))) ;) (expression_statement "puVar5 = puStack_48;" (assignment_expression "puVar5 = puStack_48" identifier = identifier) ;) (if_statement "if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(puVar3 == (undefined *)0x0)" ( (binary_expression "puVar3 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }" { (labeled_statement "LAB_0006c904:\n    iVar1 = 0x131f;" statement_identifier : (expression_statement "iVar1 = 0x131f;" (assignment_expression "iVar1 = 0x131f" identifier = number_literal) ;)) (expression_statement "puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);" (assignment_expression "puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980)" identifier = (cast_expression "(undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);" (assignment_expression "puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954)" identifier = (cast_expression "(undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0xe2874) + -0x954)" ( (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x954" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);" (call_expression "(**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2f58))" ( (pointer_expression "**(code **)(puVar13 + 0xe2f58)" * (pointer_expression "*(code **)(puVar13 + 0xe2f58)" * (cast_expression "(code **)(puVar13 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2f58)" ( (binary_expression "puVar13 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970)" ( identifier , (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) }) (else_clause "else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" { (expression_statement "puVar5 = puVar3;" (assignment_expression "puVar5 = puVar3" identifier = identifier) ;) (if_statement "if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1054) != -0x54535255)" ( (binary_expression "*(int *)(puVar3 + 0x1054) != -0x54535255" (pointer_expression "*(int *)(puVar3 + 0x1054)" * (cast_expression "(int *)(puVar3 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1054)" ( (binary_expression "puVar3 + 0x1054" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" { (expression_statement "(**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);" (call_expression "(**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2f58))" ( (pointer_expression "**(code **)(puVar13 + 0xe2f58)" * (pointer_expression "*(code **)(puVar13 + 0xe2f58)" * (cast_expression "(code **)(puVar13 + 0xe2f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2f58)" ( (binary_expression "puVar13 + 0xe2f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980)" ( (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) (goto_statement "goto LAB_0006c904;" goto statement_identifier ;) })) (if_statement "if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1050) != 0)" ( (binary_expression "*(int *)(puVar3 + 0x1050) != 0" (pointer_expression "*(int *)(puVar3 + 0x1050)" * (cast_expression "(int *)(puVar3 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1050)" ( (binary_expression "puVar3 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }" { (expression_statement "puVar9 = (undefined *)0x1322;" (assignment_expression "puVar9 = (undefined *)0x1322" identifier = (cast_expression "(undefined *)0x1322" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);" (call_expression "(**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2cc0))" ( (pointer_expression "**(code **)(puVar13 + 0xe2cc0)" * (pointer_expression "*(code **)(puVar13 + 0xe2cc0)" * (cast_expression "(code **)(puVar13 + 0xe2cc0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2cc0)" ( (binary_expression "puVar13 + 0xe2cc0" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968)" ( number_literal , (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x968" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "unaff_s1 = auStack_104c;" (assignment_expression "unaff_s1 = auStack_104c" identifier = identifier) ;) (expression_statement "iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;" (assignment_expression "iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0" identifier = (binary_expression "*(int *)(puVar13 + 0xe2874) + -0xc0" (pointer_expression "*(int *)(puVar13 + 0xe2874)" * (cast_expression "(int *)(puVar13 + 0xe2874)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xe2874)" ( (binary_expression "puVar13 + 0xe2874" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);" (call_expression "(**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000)" (parenthesized_expression "(**(code **)(puVar13 + 0xe29b8))" ( (pointer_expression "**(code **)(puVar13 + 0xe29b8)" * (pointer_expression "*(code **)(puVar13 + 0xe29b8)" * (cast_expression "(code **)(puVar13 + 0xe29b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe29b8)" ( (binary_expression "puVar13 + 0xe29b8" identifier + number_literal) ))))) )) (argument_list "(unaff_s1,0x1000)" ( identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;" (call_expression "(**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2e68))" ( (pointer_expression "**(code **)(puVar13 + 0xe2e68)" * (pointer_expression "*(code **)(puVar13 + 0xe2e68)" * (cast_expression "(code **)(puVar13 + 0xe2e68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2e68)" ( (binary_expression "puVar13 + 0xe2e68" identifier + number_literal) ))))) )) (argument_list "(*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)" ( (binary_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290" (pointer_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (binary_expression "*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1038)" * (cast_expression "(int *)(puVar3 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1038)" ( (binary_expression "puVar3 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1034)" * (cast_expression "(int *)(puVar3 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1034)" ( (binary_expression "puVar3 + 0x1034" identifier + number_literal) )))) * number_literal)) )))) + number_literal) , identifier ))) ;) (expression_statement "puVar3 = puStack_4c;" (assignment_expression "puVar3 = puStack_4c" identifier = identifier) ;) (if_statement "if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }" if (parenthesized_expression "(puStack_4c == (undefined *)*puVar11)" ( (binary_expression "puStack_4c == (undefined *)*puVar11" identifier == (cast_expression "(undefined *)*puVar11" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar11" * identifier))) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) }))) (expression_statement "pcVar14 = *(code **)(puVar13 + 0xe2bc4);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0xe2bc4)" identifier = (pointer_expression "*(code **)(puVar13 + 0xe2bc4)" * (cast_expression "(code **)(puVar13 + 0xe2bc4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0xe2bc4)" ( (binary_expression "puVar13 + 0xe2bc4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar14)();" (call_expression "(*pcVar14)()" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "dVar17 = (double)CONCAT44(iVar1,puVar9);" (assignment_expression "dVar17 = (double)CONCAT44(iVar1,puVar9)" identifier = (cast_expression "(double)CONCAT44(iVar1,puVar9)" ( (type_descriptor "double" primitive_type) ) (call_expression "CONCAT44(iVar1,puVar9)" identifier (argument_list "(iVar1,puVar9)" ( identifier , identifier ))))) ;) (expression_statement "puStack_10bc = puVar5;" (assignment_expression "puStack_10bc = puVar5" identifier = identifier) ;) (if_statement "if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }" if (parenthesized_expression "(puVar3 != (undefined *)0x0)" ( (binary_expression "puVar3 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }" { (if_statement "if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1054) == -0x54535255)" ( (binary_expression "*(int *)(puVar3 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(puVar3 + 0x1054)" * (cast_expression "(int *)(puVar3 + 0x1054)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1054)" ( (binary_expression "puVar3 + 0x1054" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" { (if_statement "if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }" if (parenthesized_expression "(*(int *)(puVar3 + 0x1050) != 0)" ( (binary_expression "*(int *)(puVar3 + 0x1050) != 0" (pointer_expression "*(int *)(puVar3 + 0x1050)" * (cast_expression "(int *)(puVar3 + 0x1050)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1050)" ( (binary_expression "puVar3 + 0x1050" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }" { (expression_statement "(**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2b54))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2b54)" * (pointer_expression "*(code **)(pcVar14 + 0xe2b54)" * (cast_expression "(code **)(pcVar14 + 0xe2b54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2b54)" ( (binary_expression "pcVar14 + 0xe2b54" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a)" ( number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (expression_statement "iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);" (assignment_expression "iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" identifier = (pointer_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" * (cast_expression "(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" ( (binary_expression "*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1038)" * (cast_expression "(int *)(puVar3 + 0x1038)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1038)" ( (binary_expression "puVar3 + 0x1038" identifier + number_literal) )))) + (binary_expression "*(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1034)" * (cast_expression "(int *)(puVar3 + 0x1034)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x1034)" ( (binary_expression "puVar3 + 0x1034" identifier + number_literal) )))) * number_literal)) ))))) ;) (expression_statement "fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));" (assignment_expression "fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" identifier = (cast_expression "(float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" ( (type_descriptor "float" primitive_type) ) (parenthesized_expression "(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" ( (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" identifier * (pointer_expression "*(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" * (cast_expression "(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" ( (binary_expression "*(int *)(pcVar14 + 0xe26f8) + 0x75f0" (pointer_expression "*(int *)(pcVar14 + 0xe26f8)" * (cast_expression "(int *)(pcVar14 + 0xe26f8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe26f8)" ( (binary_expression "pcVar14 + 0xe26f8" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (if_statement "if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }" if (parenthesized_expression "((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16))" ( (binary_expression "(*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)" (parenthesized_expression "(*(int *)(puVar3 + 0x103c) == 0)" ( (binary_expression "*(int *)(puVar3 + 0x103c) == 0" (pointer_expression "*(int *)(puVar3 + 0x103c)" * (cast_expression "(int *)(puVar3 + 0x103c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 0x103c)" ( (binary_expression "puVar3 + 0x103c" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(float *)(iVar1 + 0x2cc) == fVar16)" ( (binary_expression "*(float *)(iVar1 + 0x2cc) == fVar16" (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 "iVar6 = *(int *)(pcVar14 + 0xe2708);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0xe2708)" identifier = (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) ))))) ;) (expression_statement "*(float *)(iVar1 + 0x2cc) = fVar16;" (assignment_expression "*(float *)(iVar1 + 0x2cc) = fVar16" (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(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));" (assignment_expression "iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier = (call_expression "FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" identifier (argument_list "(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" ( identifier , (binary_expression "iVar6 + -0xb4" identifier + number_literal) , (cast_expression "(int)((ulonglong)dVar17 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)dVar17 >> 0x20)" ( (binary_expression "(ulonglong)dVar17 >> 0x20" (cast_expression "(ulonglong)dVar17" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) , (call_expression "SUB84(dVar17,0)" identifier (argument_list "(dVar17,0)" ( identifier , number_literal ))) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2dec))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2dec)" * (pointer_expression "*(code **)(pcVar14 + 0xe2dec)" * (cast_expression "(code **)(pcVar14 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2dec)" ( (binary_expression "pcVar14 + 0xe2dec" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958)" ( (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "puStack_10bc = puVar3;" (assignment_expression "puStack_10bc = puVar3" identifier = identifier) ;) })) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe2dec);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe2dec)" identifier = (pointer_expression "*(code **)(pcVar14 + 0xe2dec)" * (cast_expression "(code **)(pcVar14 + 0xe2dec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2dec)" ( (binary_expression "pcVar14 + 0xe2dec" identifier + number_literal) ))))) ;) (expression_statement "pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);" (assignment_expression "pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970)" identifier = (cast_expression "(char *)(*(int *)(pcVar14 + 0xe2708) + -0x970)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar14 + 0xe2708) + -0x970)" ( (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954" identifier = (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);" (call_expression "(*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" * (cast_expression "(int *)(pcVar14 + 0xe2708)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2708)" ( (binary_expression "pcVar14 + 0xe2708" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "piVar12 = *(int **)(pcVar15 + 0xe2a4c);" (assignment_expression "piVar12 = *(int **)(pcVar15 + 0xe2a4c)" identifier = (pointer_expression "*(int **)(pcVar15 + 0xe2a4c)" * (cast_expression "(int **)(pcVar15 + 0xe2a4c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2a4c)" ( (binary_expression "pcVar15 + 0xe2a4c" identifier + number_literal) ))))) ;) (expression_statement "iStack_10c4 = *piVar12;" (assignment_expression "iStack_10c4 = *piVar12" identifier = (pointer_expression "*piVar12" * identifier)) ;) (expression_statement "puStack_10b8 = unaff_s1;" (assignment_expression "puStack_10b8 = unaff_s1" identifier = identifier) ;) (expression_statement "puStack_10b4 = puVar11;" (assignment_expression "puStack_10b4 = puVar11" identifier = identifier) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "iVar6 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar6 = *(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 **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" else (compound_statement "{\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" { (expression_statement "(**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);" (call_expression "(**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2a08))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2a08)" * (pointer_expression "*(code **)(pcVar15 + 0xe2a08)" * (cast_expression "(code **)(pcVar15 + 0xe2a08)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2a08)" ( (binary_expression "pcVar15 + 0xe2a08" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7)" ( number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe25b0)" * (cast_expression "(int *)(pcVar15 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25b0)" ( (binary_expression "pcVar15 + 0xe25b0" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar6 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar6 = *(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 (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);" (call_expression "(**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe283c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe283c)" * (pointer_expression "*(code **)(pcVar15 + 0xe283c)" * (cast_expression "(code **)(pcVar15 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe283c)" ( (binary_expression "pcVar15 + 0xe283c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 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 *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" * (cast_expression "(int *)(pcVar15 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25ac)" ( (binary_expression "pcVar15 + 0xe25ac" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }" { (expression_statement "iVar2 = *(int *)(pcVar15 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar15 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" * (cast_expression "(int *)(pcVar15 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25ac)" ( (binary_expression "pcVar15 + 0xe25ac" identifier + number_literal) ))))) ;) (if_statement "if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" if (parenthesized_expression "(*pcVar7 == '#')" ( (binary_expression "*pcVar7 == '#'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'#'" ' character ')) )) (compound_statement "{\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }" { (expression_statement "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);" (call_expression "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2700)" * (pointer_expression "*(code **)(pcVar15 + 0xe2700)" * (cast_expression "(code **)(pcVar15 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2700)" ( (binary_expression "pcVar15 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe25b0)" * (cast_expression "(int *)(pcVar15 + 0xe25b0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25b0)" ( (binary_expression "pcVar15 + 0xe25b0" identifier + number_literal) )))) + number_literal) , (binary_expression "pcVar7 + 1" identifier + number_literal) ))) ;) (expression_statement "iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);" (assignment_expression "iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" identifier = (call_expression "(**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2bc8))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2bc8)" * (pointer_expression "*(code **)(pcVar15 + 0xe2bc8)" * (cast_expression "(code **)(pcVar15 + 0xe2bc8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2bc8)" ( (binary_expression "pcVar15 + 0xe2bc8" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" ( (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 (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" { (expression_statement "iVar2 = *(int *)(pcVar15 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar15 + 0xe25ac)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" * (cast_expression "(int *)(pcVar15 + 0xe25ac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25ac)" ( (binary_expression "pcVar15 + 0xe25ac" identifier + number_literal) ))))) ;) (expression_statement "uVar10 = 0x1386;" (assignment_expression "uVar10 = 0x1386" identifier = number_literal) ;) (expression_statement "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar4 = *(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 "iVar8 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar8 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe283c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe283c)" * (cast_expression "(code **)(pcVar15 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe283c)" ( (binary_expression "pcVar15 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (goto_statement "goto LAB_0006cb28;" goto statement_identifier ;) })) (expression_statement "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);" (call_expression "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2700))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2700)" * (pointer_expression "*(code **)(pcVar15 + 0xe2700)" * (cast_expression "(code **)(pcVar15 + 0xe2700)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2700)" ( (binary_expression "pcVar15 + 0xe2700" identifier + number_literal) ))))) )) (argument_list "(auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7)" ( identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar6 = *(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 *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }" if (parenthesized_expression "(*(double *)(iVar6 + 0x90) != 0.0)" ( (binary_expression "*(double *)(iVar6 + 0x90) != 0.0" (pointer_expression "*(double *)(iVar6 + 0x90)" * (cast_expression "(double *)(iVar6 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x90)" ( (binary_expression "iVar6 + 0x90" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }" { (expression_statement "*(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);" (assignment_expression "*(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc)" (pointer_expression "*(double *)(iVar6 + 0x90)" * (cast_expression "(double *)(iVar6 + 0x90)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x90)" ( (binary_expression "iVar6 + 0x90" identifier + number_literal) )))) = (cast_expression "(double)*(float *)(iVar6 + 0x2cc)" ( (type_descriptor "double" primitive_type) ) (pointer_expression "*(float *)(iVar6 + 0x2cc)" * (cast_expression "(float *)(iVar6 + 0x2cc)" ( (type_descriptor "float *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x2cc)" ( (binary_expression "iVar6 + 0x2cc" identifier + number_literal) )))))) ;) })) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "FUN_00062838(iVar1,iVar6,auStack_20c4);" (call_expression "FUN_00062838(iVar1,iVar6,auStack_20c4)" identifier (argument_list "(iVar1,iVar6,auStack_20c4)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }) (else_clause "else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" else (compound_statement "{\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" { (expression_statement "uVar10 = 0x1380;" (assignment_expression "uVar10 = 0x1380" identifier = number_literal) ;) (expression_statement "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar4 = *(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 "iVar8 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar8 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc)" identifier = (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe283c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe283c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe283c)" * (cast_expression "(code **)(pcVar15 + 0xe283c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe283c)" ( (binary_expression "pcVar15 + 0xe283c" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0006cb28:\n          iVar6 = iVar6 + -0x970;" statement_identifier : (expression_statement "iVar6 = iVar6 + -0x970;" (assignment_expression "iVar6 = iVar6 + -0x970" identifier = (binary_expression "iVar6 + -0x970" identifier + number_literal)) ;)) (expression_statement "(*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);" (call_expression "(*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7)" ( identifier , identifier , (binary_expression "iVar8 + 0x918" identifier + number_literal) , identifier , number_literal , identifier , (binary_expression "iVar2 + 0x5cf4" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) }))) (expression_statement "iVar1 = iStack_10c4;" (assignment_expression "iVar1 = iStack_10c4" identifier = identifier) ;) (if_statement "if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }" if (parenthesized_expression "(iStack_10c4 == *piVar12)" ( (binary_expression "iStack_10c4 == *piVar12" identifier == (pointer_expression "*piVar12" * identifier)) )) (compound_statement "{\n          return iVar2;\n        }" { (return_statement "return iVar2;" return identifier ;) })) (goto_statement "goto LAB_0006cd54;" goto statement_identifier ;) })) }) (else_clause "else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }" else (compound_statement "{\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }" { (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" * (cast_expression "(code **)(pcVar15 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2ca0)" ( (binary_expression "pcVar15 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) }))) (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" * (cast_expression "(code **)(pcVar15 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2ca0)" ( (binary_expression "pcVar15 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930)" ( (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954" identifier = (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" * (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" * (cast_expression "(code **)(pcVar15 + 0xe2ca0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2ca0)" ( (binary_expression "pcVar15 + 0xe2ca0" identifier + number_literal) ))))) )) (argument_list "(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" * (cast_expression "(int *)(pcVar15 + 0xe25bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe25bc)" ( (binary_expression "pcVar15 + 0xe25bc" identifier + number_literal) )))) + number_literal) ))) ;) (labeled_statement "LAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);" statement_identifier : (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe290c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe290c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe290c)" * (cast_expression "(code **)(pcVar15 + 0xe290c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe290c)" ( (binary_expression "pcVar15 + 0xe290c" identifier + number_literal) ))))) ;)) (expression_statement "(*pcVar14)();" (call_expression "(*pcVar14)()" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "()" ( ))) ;) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2728))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2728)" * (pointer_expression "*(code **)(pcVar14 + 0xe2728)" * (cast_expression "(code **)(pcVar14 + 0xe2728)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2728)" ( (binary_expression "pcVar14 + 0xe2728" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar14 + 0xe22d0)" * (cast_expression "(int *)(pcVar14 + 0xe22d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22d0)" ( (binary_expression "pcVar14 + 0xe22d0" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(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 *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }" if (parenthesized_expression "((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6))" ( (binary_expression "(*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)" (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 *)(iVar2 + 0x240) == iVar6)" ( (binary_expression "*(int *)(iVar2 + 0x240) == iVar6" (pointer_expression "*(int *)(iVar2 + 0x240)" * (cast_expression "(int *)(iVar2 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x240)" ( (binary_expression "iVar2 + 0x240" identifier + number_literal) )))) == identifier) ))) )) (compound_statement "{\n        return iVar2;\n      }" { (return_statement "return iVar2;" return identifier ;) })) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe2408);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe2408)" identifier = (pointer_expression "*(code **)(pcVar14 + 0xe2408)" * (cast_expression "(code **)(pcVar14 + 0xe2408)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2408)" ( (binary_expression "pcVar14 + 0xe2408" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(iVar2 + 0x240) = iVar6;" (assignment_expression "*(int *)(iVar2 + 0x240) = iVar6" (pointer_expression "*(int *)(iVar2 + 0x240)" * (cast_expression "(int *)(iVar2 + 0x240)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x240)" ( (binary_expression "iVar2 + 0x240" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar4 = (*pcVar15)(0x1a,iVar6);" (assignment_expression "uVar4 = (*pcVar15)(0x1a,iVar6)" identifier = (call_expression "(*pcVar15)(0x1a,iVar6)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(0x1a,iVar6)" ( number_literal , identifier )))) ;) (expression_statement "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);" (assignment_expression "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" identifier = (call_expression "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" identifier (argument_list "(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" ( identifier , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "(**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe29c0))" ( (pointer_expression "**(code **)(pcVar14 + 0xe29c0)" * (pointer_expression "*(code **)(pcVar14 + 0xe29c0)" * (cast_expression "(code **)(pcVar14 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe29c0)" ( (binary_expression "pcVar14 + 0xe29c0" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908)" ( (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe29c0);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe29c0)" identifier = (pointer_expression "*(code **)(pcVar14 + 0xe29c0)" * (cast_expression "(code **)(pcVar14 + 0xe29c0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe29c0)" ( (binary_expression "pcVar14 + 0xe29c0" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970" identifier = (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954" identifier = (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 0xe22dc" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);" (call_expression "(*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" * (cast_expression "(int *)(pcVar14 + 0xe22dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe22dc)" ( (binary_expression "pcVar14 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" { (expression_statement "(**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe25e4))" ( (pointer_expression "**(code **)(pcVar15 + 0xe25e4)" * (pointer_expression "*(code **)(pcVar15 + 0xe25e4)" * (cast_expression "(code **)(pcVar15 + 0xe25e4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe25e4)" ( (binary_expression "pcVar15 + 0xe25e4" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe218c)" * (cast_expression "(int *)(pcVar15 + 0xe218c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe218c)" ( (binary_expression "pcVar15 + 0xe218c" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }" { (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(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          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 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          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }" { (expression_statement "iVar8 = *(int *)(iVar2 + 0x264);" (assignment_expression "iVar8 = *(int *)(iVar2 + 0x264)" identifier = (pointer_expression "*(int *)(iVar2 + 0x264)" * (cast_expression "(int *)(iVar2 + 0x264)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x264)" ( (binary_expression "iVar2 + 0x264" identifier + number_literal) ))))) ;) (if_statement "if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }" if (parenthesized_expression "((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0))" ( (binary_expression "(iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)" (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)" ( (comma_expression "iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0" (assignment_expression "iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6)" identifier = (call_expression "(**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2544))" ( (pointer_expression "**(code **)(pcVar15 + 0xe2544)" * (pointer_expression "*(code **)(pcVar15 + 0xe2544)" * (cast_expression "(code **)(pcVar15 + 0xe2544)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe2544)" ( (binary_expression "pcVar15 + 0xe2544" identifier + number_literal) ))))) )) (argument_list "(iVar8,iVar6)" ( identifier , identifier )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            return 1;\n          }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);" (call_expression "(**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe278c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe278c)" * (pointer_expression "*(code **)(pcVar15 + 0xe278c)" * (cast_expression "(code **)(pcVar15 + 0xe278c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe278c)" ( (binary_expression "pcVar15 + 0xe278c" identifier + number_literal) ))))) )) (argument_list "(iVar2 + 0x264,iVar6)" ( (binary_expression "iVar2 + 0x264" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6)" identifier (argument_list "(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6)" ( identifier , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "(**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe287c)" * (pointer_expression "*(code **)(pcVar15 + 0xe287c)" * (cast_expression "(code **)(pcVar15 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe287c)" ( (binary_expression "pcVar15 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "(**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe287c))" ( (pointer_expression "**(code **)(pcVar15 + 0xe287c)" * (pointer_expression "*(code **)(pcVar15 + 0xe287c)" * (cast_expression "(code **)(pcVar15 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe287c)" ( (binary_expression "pcVar15 + 0xe287c" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec)" ( (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe287c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe287c)" identifier = (pointer_expression "*(code **)(pcVar15 + 0xe287c)" * (cast_expression "(code **)(pcVar15 + 0xe287c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0xe287c)" ( (binary_expression "pcVar15 + 0xe287c" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970" identifier = (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954" identifier = (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "(*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec)" ( identifier , identifier , number_literal , (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" * (cast_expression "(int *)(pcVar15 + 0xe2198)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar15 + 0xe2198)" ( (binary_expression "pcVar15 + 0xe2198" identifier + number_literal) )))) + number_literal) ))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2704)" * (pointer_expression "*(code **)(pcVar14 + 0xe2704)" * (cast_expression "(code **)(pcVar14 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2704)" ( (binary_expression "pcVar14 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" { (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" { (expression_statement "(**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe246c))" ( (pointer_expression "**(code **)(pcVar14 + 0xe246c)" * (pointer_expression "*(code **)(pcVar14 + 0xe246c)" * (cast_expression "(code **)(pcVar14 + 0xe246c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe246c)" ( (binary_expression "pcVar14 + 0xe246c" identifier + number_literal) ))))) )) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4)" ( number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar14 + 0xe2014)" * (cast_expression "(int *)(pcVar14 + 0xe2014)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2014)" ( (binary_expression "pcVar14 + 0xe2014" identifier + number_literal) )))) + number_literal) , (binary_expression "iVar1 + 4" identifier + number_literal) ))) ;) })) (if_statement "if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }" { (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(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        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 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        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }" { (expression_statement "iVar8 = *(int *)(iVar2 + 0x26c);" (assignment_expression "iVar8 = *(int *)(iVar2 + 0x26c)" identifier = (pointer_expression "*(int *)(iVar2 + 0x26c)" * (cast_expression "(int *)(iVar2 + 0x26c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x26c)" ( (binary_expression "iVar2 + 0x26c" identifier + number_literal) ))))) ;) (if_statement "if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }" if (parenthesized_expression "((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0))" ( (binary_expression "(iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)" (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)" ( (comma_expression "iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0" (assignment_expression "iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe23cc))" ( (pointer_expression "**(code **)(pcVar14 + 0xe23cc)" * (pointer_expression "*(code **)(pcVar14 + 0xe23cc)" * (cast_expression "(code **)(pcVar14 + 0xe23cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe23cc)" ( (binary_expression "pcVar14 + 0xe23cc" identifier + number_literal) ))))) )) (argument_list "(iVar8,iVar6)" ( identifier , identifier )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) })) (expression_statement "(**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);" (call_expression "(**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2614))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2614)" * (pointer_expression "*(code **)(pcVar14 + 0xe2614)" * (cast_expression "(code **)(pcVar14 + 0xe2614)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2614)" ( (binary_expression "pcVar14 + 0xe2614" identifier + number_literal) ))))) )) (argument_list "(iVar2 + 0x26c,iVar6)" ( (binary_expression "iVar2 + 0x26c" identifier + number_literal) , identifier ))) ;) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6)" identifier (argument_list "(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6)" ( identifier , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2704)" * (pointer_expression "*(code **)(pcVar14 + 0xe2704)" * (cast_expression "(code **)(pcVar14 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2704)" ( (binary_expression "pcVar14 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar1;" return identifier ;) })) (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" identifier = (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" ( (pointer_expression "**(code **)(pcVar14 + 0xe2704)" * (pointer_expression "*(code **)(pcVar14 + 0xe2704)" * (cast_expression "(code **)(pcVar14 + 0xe2704)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar14 + 0xe2704)" ( (binary_expression "pcVar14 + 0xe2704" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" ( (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 0xe2020" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" * (cast_expression "(int *)(pcVar14 + 0xe2020)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 0xe2020)" ( (binary_expression "pcVar14 + 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 IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE 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 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 (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( 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 (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 (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) )))) == (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 IDENT + LIT) ))))) ))))) ))) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (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) ) (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , (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 * (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) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (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 , (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 = 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (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 (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 ( (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 (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 (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)) )))) + LIT) , 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 (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( 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 (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 (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)) ))))) ;) (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 (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 *)) ) (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 = (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) ;) (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 DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)\n\n{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" (primitive_type "int") (function_declarator "DrawSetFillOpacity(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)" (identifier "DrawSetFillOpacity") (parameter_list "(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)" (( "(") (parameter_declaration "undefined *param_1" (type_identifier "undefined") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "undefined4 param_4" (type_identifier "undefined4") (identifier "param_4")) () ")"))) (compound_statement "{\n  int iVar1;\n  int iVar2;\n  undefined *puVar3;\n  undefined4 uVar4;\n  undefined *puVar5;\n  int iVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined *puVar9;\n  undefined4 uVar10;\n  undefined *unaff_s0;\n  undefined1 *unaff_s1;\n  undefined4 *puVar11;\n  int *piVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  code *pcVar15;\n  float fVar16;\n  double dVar17;\n  undefined1 auStack_30c4 [4096];\n  undefined1 auStack_20c4 [4096];\n  int iStack_10c4;\n  undefined *puStack_10bc;\n  undefined1 *puStack_10b8;\n  undefined4 *puStack_10b4;\n  undefined1 auStack_104c [4096];\n  undefined *puStack_4c;\n  undefined *puStack_48;\n  \n  dVar17 = (double)CONCAT44(param_3,param_4);\n  puStack_48 = unaff_s0;\n  if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }\n  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;\n  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;\n  puVar13 = PTR___assert_fail_0014f720;\n  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);\n  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);\n  puStack_4c = (undefined *)*puVar11;\n  puVar5 = puStack_48;\n  if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }\n  pcVar14 = *(code **)(puVar13 + 0xe2bc4);\n  (*pcVar14)();\n  dVar17 = (double)CONCAT44(iVar1,puVar9);\n  puStack_10bc = puVar5;\n  if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe2dec);\n  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);\n  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;\n  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);\n  piVar12 = *(int **)(pcVar15 + 0xe2a4c);\n  iStack_10c4 = *piVar12;\n  puStack_10b8 = unaff_s1;\n  puStack_10b4 = puVar11;\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }\n  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;\n  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);\nLAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);\n  (*pcVar14)();\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }\n  pcVar15 = *(code **)(pcVar14 + 0xe29c0);\n  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;\n  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;\n  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);\n  if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }\n  pcVar14 = *(code **)(pcVar15 + 0xe287c);\n  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;\n  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;\n  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n    if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }\n  iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n  return iVar1;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "undefined4 uVar4;" (type_identifier "undefined4") (identifier "uVar4") (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "undefined *puVar9;" (type_identifier "undefined") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "undefined4 uVar10;" (type_identifier "undefined4") (identifier "uVar10") (; ";")) (declaration "undefined *unaff_s0;" (type_identifier "undefined") (pointer_declarator "*unaff_s0" (* "*") (identifier "unaff_s0")) (; ";")) (declaration "undefined1 *unaff_s1;" (type_identifier "undefined1") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1")) (; ";")) (declaration "undefined4 *puVar11;" (type_identifier "undefined4") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "int *piVar12;" (primitive_type "int") (pointer_declarator "*piVar12" (* "*") (identifier "piVar12")) (; ";")) (declaration "undefined *puVar13;" (type_identifier "undefined") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "code *pcVar14;" (type_identifier "code") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "code *pcVar15;" (type_identifier "code") (pointer_declarator "*pcVar15" (* "*") (identifier "pcVar15")) (; ";")) (declaration "float fVar16;" (primitive_type "float") (identifier "fVar16") (; ";")) (declaration "double dVar17;" (primitive_type "double") (identifier "dVar17") (; ";")) (declaration "undefined1 auStack_30c4 [4096];" (type_identifier "undefined1") (array_declarator "auStack_30c4 [4096]" (identifier "auStack_30c4") ([ "[") (number_literal "4096") (] "]")) (; ";")) (declaration "undefined1 auStack_20c4 [4096];" (type_identifier "undefined1") (array_declarator "auStack_20c4 [4096]" (identifier "auStack_20c4") ([ "[") (number_literal "4096") (] "]")) (; ";")) (declaration "int iStack_10c4;" (primitive_type "int") (identifier "iStack_10c4") (; ";")) (declaration "undefined *puStack_10bc;" (type_identifier "undefined") (pointer_declarator "*puStack_10bc" (* "*") (identifier "puStack_10bc")) (; ";")) (declaration "undefined1 *puStack_10b8;" (type_identifier "undefined1") (pointer_declarator "*puStack_10b8" (* "*") (identifier "puStack_10b8")) (; ";")) (declaration "undefined4 *puStack_10b4;" (type_identifier "undefined4") (pointer_declarator "*puStack_10b4" (* "*") (identifier "puStack_10b4")) (; ";")) (declaration "undefined1 auStack_104c [4096];" (type_identifier "undefined1") (array_declarator "auStack_104c [4096]" (identifier "auStack_104c") ([ "[") (number_literal "4096") (] "]")) (; ";")) (declaration "undefined *puStack_4c;" (type_identifier "undefined") (pointer_declarator "*puStack_4c" (* "*") (identifier "puStack_4c")) (; ";")) (declaration "undefined *puStack_48;" (type_identifier "undefined") (pointer_declarator "*puStack_48" (* "*") (identifier "puStack_48")) (; ";")) (expression_statement "dVar17 = (double)CONCAT44(param_3,param_4);" (assignment_expression "dVar17 = (double)CONCAT44(param_3,param_4)" (identifier "dVar17") (= "=") (cast_expression "(double)CONCAT44(param_3,param_4)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(param_3,param_4)" (identifier "CONCAT44") (argument_list "(param_3,param_4)" (( "(") (identifier "param_3") (, ",") (identifier "param_4") () ")"))))) (; ";")) (expression_statement "puStack_48 = unaff_s0;" (assignment_expression "puStack_48 = unaff_s0" (identifier "puStack_48") (= "=") (identifier "unaff_s0")) (; ";")) (if_statement "if (param_1 != (undefined *)0x0) {\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }" (if "if") (parenthesized_expression "(param_1 != (undefined *)0x0)" (( "(") (binary_expression "param_1 != (undefined *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);\n    puStack_48 = param_1;\n  }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x1054) == -0x54535255) {\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(param_1 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(param_1 + 0x1054)" (* "*") (cast_expression "(int *)(param_1 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1054)" (( "(") (binary_expression "param_1 + 0x1054" (identifier "param_1") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }\n      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);\n      if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }\n      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;\n      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));\n      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" ({ "{") (if_statement "if (*(int *)(param_1 + 0x1050) != 0) {\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x1050) != 0" (pointer_expression "*(int *)(param_1 + 0x1050)" (* "*") (cast_expression "(int *)(param_1 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1050)" (( "(") (binary_expression "param_1 + 0x1050" (identifier "param_1") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);\n      }" ({ "{") (expression_statement "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);" (call_expression "(*(code *)PTR_LogMagickEvent_0014f488)\n                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,\n                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4)" (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 + 0x998,0x12f4)" (( "(") (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 + 0x998" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0x998")) (, ",") (number_literal "0x12f4") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);" (assignment_expression "iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4" (pointer_expression "*(int *)(param_1 + 0x1038)" (* "*") (cast_expression "(int *)(param_1 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1038)" (( "(") (binary_expression "param_1 + 0x1038" (identifier "param_1") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(param_1 + 0x1034) * 4" (pointer_expression "*(int *)(param_1 + 0x1034)" (* "*") (cast_expression "(int *)(param_1 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1034)" (( "(") (binary_expression "param_1 + 0x1034" (identifier "param_1") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (if_statement "if ((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {\n        return iVar1;\n      }" (if "if") (parenthesized_expression "((*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))))" (( "(") (binary_expression "(*(int *)(param_1 + 0x103c) == 0) &&\n         (*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" (parenthesized_expression "(*(int *)(param_1 + 0x103c) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0x103c) == 0" (pointer_expression "*(int *)(param_1 + 0x103c)" (* "*") (cast_expression "(int *)(param_1 + 0x103c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x103c)" (( "(") (binary_expression "param_1 + 0x103c" (identifier "param_1") (+ "+") (number_literal "0x103c")) () ")")))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))" (( "(") (binary_expression "*(double *)(iVar1 + 0x90) ==\n          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (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")) () ")")))) (== "==") (cast_expression "(double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (( "(") (binary_expression "dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" (* "*") (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" (( "(") (binary_expression "PTR_LAB_0014f02c + 0x75f0" (identifier "PTR_LAB_0014f02c") (+ "+") (number_literal "0x75f0")) () ")"))))) () ")"))))) () ")"))) () ")")) (compound_statement "{\n        return iVar1;\n      }" ({ "{") (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;" (assignment_expression "puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4" (identifier "puVar5") (= "=") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0xd4" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0xd4"))) (; ";")) (expression_statement "*(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));" (assignment_expression "*(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (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")) () ")")))) (= "=") (cast_expression "(double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (cast_expression "(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0))" (( "(") (binary_expression "dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(PTR_LAB_0014f02c + 0x75f0)" (* "*") (cast_expression "(double *)(PTR_LAB_0014f02c + 0x75f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0014f02c + 0x75f0)" (( "(") (binary_expression "PTR_LAB_0014f02c + 0x75f0" (identifier "PTR_LAB_0014f02c") (+ "+") (number_literal "0x75f0")) () ")"))))) () ")"))))) (; ";")) (expression_statement "iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));" (assignment_expression "iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" (identifier "iVar1") (= "=") (call_expression "FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" (identifier "FUN_00062838") (argument_list "(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" (( "(") (identifier "param_1") (, ",") (identifier "puVar5") (, ",") (cast_expression "(int)((ulonglong)dVar17 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar17 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar17 >> 0x20" (cast_expression "(ulonglong)dVar17" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar17")) (>> ">>") (number_literal "0x20")) () ")"))) (, ",") (call_expression "SUB84(dVar17,0)" (identifier "SUB84") (argument_list "(dVar17,0)" (( "(") (identifier "dVar17") (, ",") (number_literal "0") () ")"))) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac);" (call_expression "(*(code *)PTR___assert_fail_0014f720)\n              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" (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 + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,\n               PTR_s_t_char____NULL_0014f03c + 0x9ac)" (( "(") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x419c" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x12f2") (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x9ac" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0x9ac")) () ")"))) (; ";")) (expression_statement "puStack_48 = param_1;" (assignment_expression "puStack_48 = param_1" (identifier "puStack_48") (= "=") (identifier "param_1")) (; ";")) (} "}"))) (expression_statement "puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;" (assignment_expression "puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac" (identifier "puVar9") (= "=") (binary_expression "PTR_s_t_char____NULL_0014f03c + 0x9ac" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "0x9ac"))) (; ";")) (expression_statement "puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;" (assignment_expression "puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954" (identifier "puVar3") (= "=") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x954" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "puVar13 = PTR___assert_fail_0014f720;" (assignment_expression "puVar13 = PTR___assert_fail_0014f720" (identifier "puVar13") (= "=") (identifier "PTR___assert_fail_0014f720")) (; ";")) (expression_statement "(*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);" (call_expression "(*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" (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 "(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970)" (( "(") (identifier "puVar3") (, ",") (binary_expression "PTR_s_t_char____NULL_0014f03c + -0x970" (identifier "PTR_s_t_char____NULL_0014f03c") (+ "+") (number_literal "-0x970")) () ")"))) (; ";")) (expression_statement "puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);" (assignment_expression "puVar11 = *(undefined4 **)(puVar13 + 0xe2d04)" (identifier "puVar11") (= "=") (pointer_expression "*(undefined4 **)(puVar13 + 0xe2d04)" (* "*") (cast_expression "(undefined4 **)(puVar13 + 0xe2d04)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe2d04)" (( "(") (binary_expression "puVar13 + 0xe2d04" (identifier "puVar13") (+ "+") (number_literal "0xe2d04")) () ")"))))) (; ";")) (expression_statement "puStack_4c = (undefined *)*puVar11;" (assignment_expression "puStack_4c = (undefined *)*puVar11" (identifier "puStack_4c") (= "=") (cast_expression "(undefined *)*puVar11" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar11" (* "*") (identifier "puVar11")))) (; ";")) (expression_statement "puVar5 = puStack_48;" (assignment_expression "puVar5 = puStack_48" (identifier "puVar5") (= "=") (identifier "puStack_48")) (; ";")) (if_statement "if (puVar3 == (undefined *)0x0) {\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }\n  else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" (if "if") (parenthesized_expression "(puVar3 == (undefined *)0x0)" (( "(") (binary_expression "puVar3 == (undefined *)0x0" (identifier "puVar3") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_0006c904:\n    iVar1 = 0x131f;\n    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);\n    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);\n    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);\n  }" ({ "{") (labeled_statement "LAB_0006c904:\n    iVar1 = 0x131f;" (statement_identifier "LAB_0006c904") (: ":") (expression_statement "iVar1 = 0x131f;" (assignment_expression "iVar1 = 0x131f" (identifier "iVar1") (= "=") (number_literal "0x131f")) (; ";"))) (expression_statement "puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);" (assignment_expression "puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980)" (identifier "puVar9") (= "=") (cast_expression "(undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar13 + 0xe2874) + 0x980)" (( "(") (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x980")) () ")")))) (; ";")) (expression_statement "puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);" (assignment_expression "puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954)" (identifier "puVar3") (= "=") (cast_expression "(undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar13 + 0xe2874) + -0x954)" (( "(") (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x954" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x954")) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);" (call_expression "(**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2f58))" (( "(") (pointer_expression "**(code **)(puVar13 + 0xe2f58)" (* "*") (pointer_expression "*(code **)(puVar13 + 0xe2f58)" (* "*") (cast_expression "(code **)(puVar13 + 0xe2f58)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe2f58)" (( "(") (binary_expression "puVar13 + 0xe2f58" (identifier "puVar13") (+ "+") (number_literal "0xe2f58")) () ")"))))) () ")")) (argument_list "(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970)" (( "(") (identifier "puVar3") (, ",") (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x970")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" (else "else") (compound_statement "{\n    puVar5 = puVar3;\n    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }\n    if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }\n    unaff_s1 = auStack_104c;\n    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;\n    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);\n    (**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;\n    puVar3 = puStack_4c;\n    if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }\n  }" ({ "{") (expression_statement "puVar5 = puVar3;" (assignment_expression "puVar5 = puVar3" (identifier "puVar5") (= "=") (identifier "puVar3")) (; ";")) (if_statement "if (*(int *)(puVar3 + 0x1054) != -0x54535255) {\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" (if "if") (parenthesized_expression "(*(int *)(puVar3 + 0x1054) != -0x54535255)" (( "(") (binary_expression "*(int *)(puVar3 + 0x1054) != -0x54535255" (pointer_expression "*(int *)(puVar3 + 0x1054)" (* "*") (cast_expression "(int *)(puVar3 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1054)" (( "(") (binary_expression "puVar3 + 0x1054" (identifier "puVar3") (+ "+") (number_literal "0x1054")) () ")")))) (!= "!=") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      (**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);\n      goto LAB_0006c904;\n    }" ({ "{") (expression_statement "(**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980);" (call_expression "(**(code **)(puVar13 + 0xe2f58))\n                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2f58))" (( "(") (pointer_expression "**(code **)(puVar13 + 0xe2f58)" (* "*") (pointer_expression "*(code **)(puVar13 + 0xe2f58)" (* "*") (cast_expression "(code **)(puVar13 + 0xe2f58)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe2f58)" (( "(") (binary_expression "puVar13 + 0xe2f58" (identifier "puVar13") (+ "+") (number_literal "0xe2f58")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,\n                 *(int *)(puVar13 + 0xe2874) + 0x980)" (( "(") (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x419c" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1320") (, ",") (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x980" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x980")) () ")"))) (; ";")) (goto_statement "goto LAB_0006c904;" (goto "goto") (statement_identifier "LAB_0006c904") (; ";")) (} "}"))) (if_statement "if (*(int *)(puVar3 + 0x1050) != 0) {\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }" (if "if") (parenthesized_expression "(*(int *)(puVar3 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(puVar3 + 0x1050) != 0" (pointer_expression "*(int *)(puVar3 + 0x1050)" (* "*") (cast_expression "(int *)(puVar3 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1050)" (( "(") (binary_expression "puVar3 + 0x1050" (identifier "puVar3") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      puVar9 = (undefined *)0x1322;\n      (**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);\n    }" ({ "{") (expression_statement "puVar9 = (undefined *)0x1322;" (assignment_expression "puVar9 = (undefined *)0x1322" (identifier "puVar9") (= "=") (cast_expression "(undefined *)0x1322" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1322"))) (; ";")) (expression_statement "(**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);" (call_expression "(**(code **)(puVar13 + 0xe2cc0))\n                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2cc0))" (( "(") (pointer_expression "**(code **)(puVar13 + 0xe2cc0)" (* "*") (pointer_expression "*(code **)(puVar13 + 0xe2cc0)" (* "*") (cast_expression "(code **)(puVar13 + 0xe2cc0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe2cc0)" (( "(") (binary_expression "puVar13 + 0xe2cc0" (identifier "puVar13") (+ "+") (number_literal "0xe2cc0")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(puVar13 + 0xe2874) + -0x970" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(puVar13 + 0xe2874) + 0x968" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "0x968")) () ")"))) (; ";")) (} "}"))) (expression_statement "unaff_s1 = auStack_104c;" (assignment_expression "unaff_s1 = auStack_104c" (identifier "unaff_s1") (= "=") (identifier "auStack_104c")) (; ";")) (expression_statement "iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;" (assignment_expression "iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0" (identifier "iVar1") (= "=") (binary_expression "*(int *)(puVar13 + 0xe2874) + -0xc0" (pointer_expression "*(int *)(puVar13 + 0xe2874)" (* "*") (cast_expression "(int *)(puVar13 + 0xe2874)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xe2874)" (( "(") (binary_expression "puVar13 + 0xe2874" (identifier "puVar13") (+ "+") (number_literal "0xe2874")) () ")")))) (+ "+") (number_literal "-0xc0"))) (; ";")) (expression_statement "(**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);" (call_expression "(**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000)" (parenthesized_expression "(**(code **)(puVar13 + 0xe29b8))" (( "(") (pointer_expression "**(code **)(puVar13 + 0xe29b8)" (* "*") (pointer_expression "*(code **)(puVar13 + 0xe29b8)" (* "*") (cast_expression "(code **)(puVar13 + 0xe29b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe29b8)" (( "(") (binary_expression "puVar13 + 0xe29b8" (identifier "puVar13") (+ "+") (number_literal "0xe29b8")) () ")"))))) () ")")) (argument_list "(unaff_s1,0x1000)" (( "(") (identifier "unaff_s1") (, ",") (number_literal "0x1000") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)\n    ;" (call_expression "(**(code **)(puVar13 + 0xe2e68))\n              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)" (parenthesized_expression "(**(code **)(puVar13 + 0xe2e68))" (( "(") (pointer_expression "**(code **)(puVar13 + 0xe2e68)" (* "*") (pointer_expression "*(code **)(puVar13 + 0xe2e68)" (* "*") (cast_expression "(code **)(puVar13 + 0xe2e68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe2e68)" (( "(") (binary_expression "puVar13 + 0xe2e68" (identifier "puVar13") (+ "+") (number_literal "0xe2e68")) () ")"))))) () ")")) (argument_list "(*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)" (( "(") (binary_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290" (pointer_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1038)" (* "*") (cast_expression "(int *)(puVar3 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1038)" (( "(") (binary_expression "puVar3 + 0x1038" (identifier "puVar3") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1034)" (* "*") (cast_expression "(int *)(puVar3 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1034)" (( "(") (binary_expression "puVar3 + 0x1034" (identifier "puVar3") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")")))) (+ "+") (number_literal "0x290")) (, ",") (identifier "unaff_s1") () ")"))) (; ";")) (expression_statement "puVar3 = puStack_4c;" (assignment_expression "puVar3 = puStack_4c" (identifier "puVar3") (= "=") (identifier "puStack_4c")) (; ";")) (if_statement "if (puStack_4c == (undefined *)*puVar11) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(puStack_4c == (undefined *)*puVar11)" (( "(") (binary_expression "puStack_4c == (undefined *)*puVar11" (identifier "puStack_4c") (== "==") (cast_expression "(undefined *)*puVar11" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar11" (* "*") (identifier "puVar11")))) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar14 = *(code **)(puVar13 + 0xe2bc4);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0xe2bc4)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(puVar13 + 0xe2bc4)" (* "*") (cast_expression "(code **)(puVar13 + 0xe2bc4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0xe2bc4)" (( "(") (binary_expression "puVar13 + 0xe2bc4" (identifier "puVar13") (+ "+") (number_literal "0xe2bc4")) () ")"))))) (; ";")) (expression_statement "(*pcVar14)();" (call_expression "(*pcVar14)()" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "dVar17 = (double)CONCAT44(iVar1,puVar9);" (assignment_expression "dVar17 = (double)CONCAT44(iVar1,puVar9)" (identifier "dVar17") (= "=") (cast_expression "(double)CONCAT44(iVar1,puVar9)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "CONCAT44(iVar1,puVar9)" (identifier "CONCAT44") (argument_list "(iVar1,puVar9)" (( "(") (identifier "iVar1") (, ",") (identifier "puVar9") () ")"))))) (; ";")) (expression_statement "puStack_10bc = puVar5;" (assignment_expression "puStack_10bc = puVar5" (identifier "puStack_10bc") (= "=") (identifier "puVar5")) (; ";")) (if_statement "if (puVar3 != (undefined *)0x0) {\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }" (if "if") (parenthesized_expression "(puVar3 != (undefined *)0x0)" (( "(") (binary_expression "puVar3 != (undefined *)0x0" (identifier "puVar3") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);\n    puStack_10bc = puVar3;\n  }" ({ "{") (if_statement "if (*(int *)(puVar3 + 0x1054) == -0x54535255) {\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" (if "if") (parenthesized_expression "(*(int *)(puVar3 + 0x1054) == -0x54535255)" (( "(") (binary_expression "*(int *)(puVar3 + 0x1054) == -0x54535255" (pointer_expression "*(int *)(puVar3 + 0x1054)" (* "*") (cast_expression "(int *)(puVar3 + 0x1054)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1054)" (( "(") (binary_expression "puVar3 + 0x1054" (identifier "puVar3") (+ "+") (number_literal "0x1054")) () ")")))) (== "==") (number_literal "-0x54535255")) () ")")) (compound_statement "{\n      if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }\n      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);\n      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));\n      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }\n      iVar6 = *(int *)(pcVar14 + 0xe2708);\n      *(float *)(iVar1 + 0x2cc) = fVar16;\n      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));\n      return iVar1;\n    }" ({ "{") (if_statement "if (*(int *)(puVar3 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }" (if "if") (parenthesized_expression "(*(int *)(puVar3 + 0x1050) != 0)" (( "(") (binary_expression "*(int *)(puVar3 + 0x1050) != 0" (pointer_expression "*(int *)(puVar3 + 0x1050)" (* "*") (cast_expression "(int *)(puVar3 + 0x1050)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1050)" (( "(") (binary_expression "puVar3 + 0x1050" (identifier "puVar3") (+ "+") (number_literal "0x1050")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a);" (call_expression "(**(code **)(pcVar14 + 0xe2b54))\n                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2b54))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2b54)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2b54)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2b54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2b54)" (( "(") (binary_expression "pcVar14 + 0xe2b54" (identifier "pcVar14") (+ "+") (number_literal "0xe2b54")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,\n                   0x134a)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x948" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x948")) (, ",") (number_literal "0x134a") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);" (assignment_expression "iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (identifier "iVar1") (= "=") (pointer_expression "*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (* "*") (cast_expression "(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4)" (( "(") (binary_expression "*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1038)" (* "*") (cast_expression "(int *)(puVar3 + 0x1038)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1038)" (( "(") (binary_expression "puVar3 + 0x1038" (identifier "puVar3") (+ "+") (number_literal "0x1038")) () ")")))) (+ "+") (binary_expression "*(int *)(puVar3 + 0x1034) * 4" (pointer_expression "*(int *)(puVar3 + 0x1034)" (* "*") (cast_expression "(int *)(puVar3 + 0x1034)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x1034)" (( "(") (binary_expression "puVar3 + 0x1034" (identifier "puVar3") (+ "+") (number_literal "0x1034")) () ")")))) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (expression_statement "fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));" (assignment_expression "fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" (identifier "fVar16") (= "=") (cast_expression "(float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" (( "(") (type_descriptor "float" (primitive_type "float")) () ")") (parenthesized_expression "(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0))" (( "(") (binary_expression "dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" (identifier "dVar17") (* "*") (pointer_expression "*(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" (* "*") (cast_expression "(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0xe26f8) + 0x75f0)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe26f8) + 0x75f0" (pointer_expression "*(int *)(pcVar14 + 0xe26f8)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe26f8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe26f8)" (( "(") (binary_expression "pcVar14 + 0xe26f8" (identifier "pcVar14") (+ "+") (number_literal "0xe26f8")) () ")")))) (+ "+") (number_literal "0x75f0")) () ")"))))) () ")")))) (; ";")) (if_statement "if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {\n        return iVar1;\n      }" (if "if") (parenthesized_expression "((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16))" (( "(") (binary_expression "(*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)" (parenthesized_expression "(*(int *)(puVar3 + 0x103c) == 0)" (( "(") (binary_expression "*(int *)(puVar3 + 0x103c) == 0" (pointer_expression "*(int *)(puVar3 + 0x103c)" (* "*") (cast_expression "(int *)(puVar3 + 0x103c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 0x103c)" (( "(") (binary_expression "puVar3 + 0x103c" (identifier "puVar3") (+ "+") (number_literal "0x103c")) () ")")))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(float *)(iVar1 + 0x2cc) == fVar16)" (( "(") (binary_expression "*(float *)(iVar1 + 0x2cc) == fVar16" (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 "fVar16")) () ")"))) () ")")) (compound_statement "{\n        return iVar1;\n      }" ({ "{") (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "iVar6 = *(int *)(pcVar14 + 0xe2708);" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0xe2708)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")"))))) (; ";")) (expression_statement "*(float *)(iVar1 + 0x2cc) = fVar16;" (assignment_expression "*(float *)(iVar1 + 0x2cc) = fVar16" (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 "fVar16")) (; ";")) (expression_statement "iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));" (assignment_expression "iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" (identifier "iVar1") (= "=") (call_expression "FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" (identifier "FUN_00062838") (argument_list "(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0))" (( "(") (identifier "puVar3") (, ",") (binary_expression "iVar6 + -0xb4" (identifier "iVar6") (+ "+") (number_literal "-0xb4")) (, ",") (cast_expression "(int)((ulonglong)dVar17 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)dVar17 >> 0x20)" (( "(") (binary_expression "(ulonglong)dVar17 >> 0x20" (cast_expression "(ulonglong)dVar17" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "dVar17")) (>> ">>") (number_literal "0x20")) () ")"))) (, ",") (call_expression "SUB84(dVar17,0)" (identifier "SUB84") (argument_list "(dVar17,0)" (( "(") (identifier "dVar17") (, ",") (number_literal "0") () ")"))) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958);" (call_expression "(**(code **)(pcVar14 + 0xe2dec))\n              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2dec))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2dec)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2dec)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2dec)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2dec)" (( "(") (binary_expression "pcVar14 + 0xe2dec" (identifier "pcVar14") (+ "+") (number_literal "0xe2dec")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,\n               *(int *)(pcVar14 + 0xe2708) + 0x958)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1348") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x958")) () ")"))) (; ";")) (expression_statement "puStack_10bc = puVar3;" (assignment_expression "puStack_10bc = puVar3" (identifier "puStack_10bc") (= "=") (identifier "puVar3")) (; ";")) (} "}"))) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe2dec);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe2dec)" (identifier "pcVar15") (= "=") (pointer_expression "*(code **)(pcVar14 + 0xe2dec)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2dec)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2dec)" (( "(") (binary_expression "pcVar14 + 0xe2dec" (identifier "pcVar14") (+ "+") (number_literal "0xe2dec")) () ")"))))) (; ";")) (expression_statement "pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);" (assignment_expression "pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970)" (identifier "pcVar7") (= "=") (cast_expression "(char *)(*(int *)(pcVar14 + 0xe2708) + -0x970)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar14 + 0xe2708) + -0x970)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x970")) () ")")))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar14 + 0xe2708) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);" (call_expression "(*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958)" (( "(") (identifier "iVar1") (, ",") (identifier "pcVar7") (, ",") (number_literal "0x1347") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2708) + 0x958" (pointer_expression "*(int *)(pcVar14 + 0xe2708)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2708)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2708)" (( "(") (binary_expression "pcVar14 + 0xe2708" (identifier "pcVar14") (+ "+") (number_literal "0xe2708")) () ")")))) (+ "+") (number_literal "0x958")) () ")"))) (; ";")) (expression_statement "piVar12 = *(int **)(pcVar15 + 0xe2a4c);" (assignment_expression "piVar12 = *(int **)(pcVar15 + 0xe2a4c)" (identifier "piVar12") (= "=") (pointer_expression "*(int **)(pcVar15 + 0xe2a4c)" (* "*") (cast_expression "(int **)(pcVar15 + 0xe2a4c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2a4c)" (( "(") (binary_expression "pcVar15 + 0xe2a4c" (identifier "pcVar15") (+ "+") (number_literal "0xe2a4c")) () ")"))))) (; ";")) (expression_statement "iStack_10c4 = *piVar12;" (assignment_expression "iStack_10c4 = *piVar12" (identifier "iStack_10c4") (= "=") (pointer_expression "*piVar12" (* "*") (identifier "piVar12"))) (; ";")) (expression_statement "puStack_10b8 = unaff_s1;" (assignment_expression "puStack_10b8 = unaff_s1" (identifier "puStack_10b8") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "puStack_10b4 = puVar11;" (assignment_expression "puStack_10b4 = puVar11" (identifier "puStack_10b4") (= "=") (identifier "puVar11")) (; ";")) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }\n    (**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }\n    else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      if (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }\n      if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }\n    }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) == 0) {\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }\n      else {\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(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        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" ({ "{") (expression_statement "iVar6 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar6 = *(int *)(&DAT_00001004 + iVar1)" (identifier "iVar6") (= "=") (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 **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" (else "else") (compound_statement "{\n        (**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);\n        iVar6 = *(int *)(&DAT_00001004 + iVar1);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);" (call_expression "(**(code **)(pcVar15 + 0xe2a08))\n                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2a08))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2a08)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2a08)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2a08)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2a08)" (( "(") (binary_expression "pcVar15 + 0xe2a08" (identifier "pcVar15") (+ "+") (number_literal "0xe2a08")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,\n                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x918")) (, ",") (number_literal "0x137a") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe25b0)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25b0)" (( "(") (binary_expression "pcVar15 + 0xe25b0" (identifier "pcVar15") (+ "+") (number_literal "0xe25b0")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (identifier "pcVar7") () ")"))) (; ";")) (expression_statement "iVar6 = *(int *)(&DAT_00001004 + iVar1);" (assignment_expression "iVar6 = *(int *)(&DAT_00001004 + iVar1)" (identifier "iVar6") (= "=") (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 (iVar6 == 0) {\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4);" (call_expression "(**(code **)(pcVar15 + 0xe283c))\n                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,\n                   iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe283c))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe283c)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe283c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe283c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe283c)" (( "(") (binary_expression "pcVar15 + 0xe283c" (identifier "pcVar15") (+ "+") (number_literal "0xe283c")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,\n                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,\n                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 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 *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x918" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x918")) (, ",") (number_literal "0x137c") (, ",") (number_literal "0x1d6") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x225c" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x225c")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25ac) + 0x5cf4" (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25ac)" (( "(") (binary_expression "pcVar15 + 0xe25ac" (identifier "pcVar15") (+ "+") (number_literal "0xe25ac")) () ")")))) (+ "+") (number_literal "0x5cf4")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (pcVar7 != (char *)0x0) {\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }" (if "if") (parenthesized_expression "(pcVar7 != (char *)0x0)" (( "(") (binary_expression "pcVar7 != (char *)0x0" (identifier "pcVar7") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        iVar2 = *(int *)(pcVar15 + 0xe25ac);\n        if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }\n        iVar1 = iStack_10c4;\n        if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }\n        goto LAB_0006cd54;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(pcVar15 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar15 + 0xe25ac)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25ac)" (( "(") (binary_expression "pcVar15 + 0xe25ac" (identifier "pcVar15") (+ "+") (number_literal "0xe25ac")) () ")"))))) (; ";")) (if_statement "if (*pcVar7 == '#') {\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }\n        else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" (if "if") (parenthesized_expression "(*pcVar7 == '#')" (( "(") (binary_expression "*pcVar7 == '#'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (== "==") (char_literal "'#'" (' "'") (character "#") (' "'"))) () ")")) (compound_statement "{\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);\n          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);\n          if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }\n          (**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);\n          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n          if (*(double *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }\n          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;\n          FUN_00062838(iVar1,iVar6,auStack_20c4);\n          iVar2 = 1;\n        }" ({ "{") (expression_statement "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);" (call_expression "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2700))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2700)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2700)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2700)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2700)" (( "(") (binary_expression "pcVar15 + 0xe2700" (identifier "pcVar15") (+ "+") (number_literal "0xe2700")) () ")"))))) () ")")) (argument_list "(auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1)" (( "(") (identifier "auStack_30c4") (, ",") (number_literal "0x1000") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25b0) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe25b0)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25b0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25b0)" (( "(") (binary_expression "pcVar15 + 0xe25b0" (identifier "pcVar15") (+ "+") (number_literal "0xe25b0")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "pcVar7 + 1" (identifier "pcVar7") (+ "+") (number_literal "1")) () ")"))) (; ";")) (expression_statement "iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);" (assignment_expression "iVar6 = (**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" (identifier "iVar6") (= "=") (call_expression "(**(code **)(pcVar15 + 0xe2bc8))\n                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2bc8))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2bc8)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2bc8)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2bc8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2bc8)" (( "(") (binary_expression "pcVar15 + 0xe2bc8" (identifier "pcVar15") (+ "+") (number_literal "0xe2bc8")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4)" (( "(") (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_30c4") () ")")))) (; ";")) (if_statement "if (iVar6 == 0) {\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            iVar2 = *(int *)(pcVar15 + 0xe25ac);\n            uVar10 = 0x1386;\n            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n            iVar8 = *(int *)(pcVar15 + 0xe25bc);\n            iVar6 = *(int *)(pcVar15 + 0xe25bc);\n            pcVar14 = *(code **)(pcVar15 + 0xe283c);\n            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;\n            goto LAB_0006cb28;\n          }" ({ "{") (expression_statement "iVar2 = *(int *)(pcVar15 + 0xe25ac);" (assignment_expression "iVar2 = *(int *)(pcVar15 + 0xe25ac)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcVar15 + 0xe25ac)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25ac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25ac)" (( "(") (binary_expression "pcVar15 + 0xe25ac" (identifier "pcVar15") (+ "+") (number_literal "0xe25ac")) () ")"))))) (; ";")) (expression_statement "uVar10 = 0x1386;" (assignment_expression "uVar10 = 0x1386" (identifier "uVar10") (= "=") (number_literal "0x1386")) (; ";")) (expression_statement "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1)" (identifier "uVar4") (= "=") (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 "iVar8 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar8 = *(int *)(pcVar15 + 0xe25bc)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe283c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe283c)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar15 + 0xe283c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe283c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe283c)" (( "(") (binary_expression "pcVar15 + 0xe283c" (identifier "pcVar15") (+ "+") (number_literal "0xe283c")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x74" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x74"))) (; ";")) (goto_statement "goto LAB_0006cb28;" (goto "goto") (statement_identifier "LAB_0006cb28") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);" (call_expression "(**(code **)(pcVar15 + 0xe2700))\n                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2700))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2700)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2700)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2700)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2700)" (( "(") (binary_expression "pcVar15 + 0xe2700" (identifier "pcVar15") (+ "+") (number_literal "0xe2700")) () ")"))))) () ")")) (argument_list "(auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7)" (( "(") (identifier "auStack_20c4") (, ",") (number_literal "0x1000") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x68" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x68")) (, ",") (identifier "pcVar7") () ")"))) (; ";")) (expression_statement "iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar6") (= "=") (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 *)(iVar6 + 0x90) != 0.0) {\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }" (if "if") (parenthesized_expression "(*(double *)(iVar6 + 0x90) != 0.0)" (( "(") (binary_expression "*(double *)(iVar6 + 0x90) != 0.0" (pointer_expression "*(double *)(iVar6 + 0x90)" (* "*") (cast_expression "(double *)(iVar6 + 0x90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x90)" (( "(") (binary_expression "iVar6 + 0x90" (identifier "iVar6") (+ "+") (number_literal "0x90")) () ")")))) (!= "!=") (number_literal "0.0")) () ")")) (compound_statement "{\n            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);\n          }" ({ "{") (expression_statement "*(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);" (assignment_expression "*(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc)" (pointer_expression "*(double *)(iVar6 + 0x90)" (* "*") (cast_expression "(double *)(iVar6 + 0x90)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x90)" (( "(") (binary_expression "iVar6 + 0x90" (identifier "iVar6") (+ "+") (number_literal "0x90")) () ")")))) (= "=") (cast_expression "(double)*(float *)(iVar6 + 0x2cc)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (pointer_expression "*(float *)(iVar6 + 0x2cc)" (* "*") (cast_expression "(float *)(iVar6 + 0x2cc)" (( "(") (type_descriptor "float *" (primitive_type "float") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x2cc)" (( "(") (binary_expression "iVar6 + 0x2cc" (identifier "iVar6") (+ "+") (number_literal "0x2cc")) () ")")))))) (; ";")) (} "}"))) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60" (identifier "iVar6") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x60" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x60"))) (; ";")) (expression_statement "FUN_00062838(iVar1,iVar6,auStack_20c4);" (call_expression "FUN_00062838(iVar1,iVar6,auStack_20c4)" (identifier "FUN_00062838") (argument_list "(iVar1,iVar6,auStack_20c4)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar6") (, ",") (identifier "auStack_20c4") () ")"))) (; ";")) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" (identifier "iVar2") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" (else "else") (compound_statement "{\n          uVar10 = 0x1380;\n          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);\n          iVar8 = *(int *)(pcVar15 + 0xe25bc);\n          iVar6 = *(int *)(pcVar15 + 0xe25bc);\n          pcVar14 = *(code **)(pcVar15 + 0xe283c);\n          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;\nLAB_0006cb28:\n          iVar6 = iVar6 + -0x970;\n          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);\n          iVar2 = 0;\n        }" ({ "{") (expression_statement "uVar10 = 0x1380;" (assignment_expression "uVar10 = 0x1380" (identifier "uVar10") (= "=") (number_literal "0x1380")) (; ";")) (expression_statement "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);" (assignment_expression "uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1)" (identifier "uVar4") (= "=") (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 "iVar8 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar8 = *(int *)(pcVar15 + 0xe25bc)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc);" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")"))))) (; ";")) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe283c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe283c)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar15 + 0xe283c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe283c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe283c)" (( "(") (binary_expression "pcVar15 + 0xe283c" (identifier "pcVar15") (+ "+") (number_literal "0xe283c")) () ")"))))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x84" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x84"))) (; ";")) (labeled_statement "LAB_0006cb28:\n          iVar6 = iVar6 + -0x970;" (statement_identifier "LAB_0006cb28") (: ":") (expression_statement "iVar6 = iVar6 + -0x970;" (assignment_expression "iVar6 = iVar6 + -0x970" (identifier "iVar6") (= "=") (binary_expression "iVar6 + -0x970" (identifier "iVar6") (+ "+") (number_literal "-0x970"))) (; ";"))) (expression_statement "(*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);" (call_expression "(*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7)" (( "(") (identifier "uVar4") (, ",") (identifier "iVar6") (, ",") (binary_expression "iVar8 + 0x918" (identifier "iVar8") (+ "+") (number_literal "0x918")) (, ",") (identifier "uVar10") (, ",") (number_literal "0x1cc") (, ",") (identifier "iVar1") (, ",") (binary_expression "iVar2 + 0x5cf4" (identifier "iVar2") (+ "+") (number_literal "0x5cf4")) (, ",") (identifier "pcVar7") () ")"))) (; ";")) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" (identifier "iVar2") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "iVar1 = iStack_10c4;" (assignment_expression "iVar1 = iStack_10c4" (identifier "iVar1") (= "=") (identifier "iStack_10c4")) (; ";")) (if_statement "if (iStack_10c4 == *piVar12) {\n          return iVar2;\n        }" (if "if") (parenthesized_expression "(iStack_10c4 == *piVar12)" (( "(") (binary_expression "iStack_10c4 == *piVar12" (identifier "iStack_10c4") (== "==") (pointer_expression "*piVar12" (* "*") (identifier "piVar12"))) () ")")) (compound_statement "{\n          return iVar2;\n        }" ({ "{") (return_statement "return iVar2;" (return "return") (identifier "iVar2") (; ";")) (} "}"))) (goto_statement "goto LAB_0006cd54;" (goto "goto") (statement_identifier "LAB_0006cd54") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }" (else "else") (compound_statement "{\n      (**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);\n    }" ({ "{") (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))\n                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2ca0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2ca0)" (( "(") (binary_expression "pcVar15 + 0xe2ca0" (identifier "pcVar15") (+ "+") (number_literal "0xe2ca0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,\n                 *(int *)(pcVar15 + 0xe25bc) + 0x930)" (( "(") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x419c" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1378") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x930")) () ")"))) (; ";")) (} "}")))) (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))\n              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2ca0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2ca0)" (( "(") (binary_expression "pcVar15 + 0xe2ca0" (identifier "pcVar15") (+ "+") (number_literal "0xe2ca0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,\n               *(int *)(pcVar15 + 0xe25bc) + 0x930)" (( "(") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0xa4" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0xa4")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x137d") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x930")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970" (identifier "iVar6") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + -0x954" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);" (call_expression "(**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2ca0))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2ca0)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2ca0)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2ca0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2ca0)" (( "(") (binary_expression "pcVar15 + 0xe2ca0" (identifier "pcVar15") (+ "+") (number_literal "0xe2ca0")) () ")"))))) () ")")) (argument_list "(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar6") (, ",") (number_literal "0x1377") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe25bc) + 0x930" (pointer_expression "*(int *)(pcVar15 + 0xe25bc)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe25bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe25bc)" (( "(") (binary_expression "pcVar15 + 0xe25bc" (identifier "pcVar15") (+ "+") (number_literal "0xe25bc")) () ")")))) (+ "+") (number_literal "0x930")) () ")"))) (; ";")) (labeled_statement "LAB_0006cd54:\n  pcVar14 = *(code **)(pcVar15 + 0xe290c);" (statement_identifier "LAB_0006cd54") (: ":") (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe290c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe290c)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar15 + 0xe290c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe290c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe290c)" (( "(") (binary_expression "pcVar15 + 0xe290c" (identifier "pcVar15") (+ "+") (number_literal "0xe290c")) () ")"))))) (; ";"))) (expression_statement "(*pcVar14)();" (call_expression "(*pcVar14)()" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (iVar1 != 0) {\n    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }\n    (**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }\n      pcVar15 = *(code **)(pcVar14 + 0xe2408);\n      *(int *)(iVar2 + 0x240) = iVar6;\n      uVar4 = (*pcVar15)(0x1a,iVar6);\n      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);\n      return iVar1;\n    }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar14 + 0xe2728))\n                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2728))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2728)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2728)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2728)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2728)" (( "(") (binary_expression "pcVar14 + 0xe2728" (identifier "pcVar14") (+ "+") (number_literal "0xe2728")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,\n                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x8f8" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x8f8")) (, ",") (number_literal "0x13b1") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22d0) + -0x131c" (pointer_expression "*(int *)(pcVar14 + 0xe22d0)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22d0)" (( "(") (binary_expression "pcVar14 + 0xe22d0" (identifier "pcVar14") (+ "+") (number_literal "0xe22d0")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar2") (= "=") (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 *)(iVar2 + 0x240) == iVar6)) {\n        return iVar2;\n      }" (if "if") (parenthesized_expression "((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6))" (( "(") (binary_expression "(*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)" (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 *)(iVar2 + 0x240) == iVar6)" (( "(") (binary_expression "*(int *)(iVar2 + 0x240) == iVar6" (pointer_expression "*(int *)(iVar2 + 0x240)" (* "*") (cast_expression "(int *)(iVar2 + 0x240)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x240)" (( "(") (binary_expression "iVar2 + 0x240" (identifier "iVar2") (+ "+") (number_literal "0x240")) () ")")))) (== "==") (identifier "iVar6")) () ")"))) () ")")) (compound_statement "{\n        return iVar2;\n      }" ({ "{") (return_statement "return iVar2;" (return "return") (identifier "iVar2") (; ";")) (} "}"))) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe2408);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe2408)" (identifier "pcVar15") (= "=") (pointer_expression "*(code **)(pcVar14 + 0xe2408)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2408)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2408)" (( "(") (binary_expression "pcVar14 + 0xe2408" (identifier "pcVar14") (+ "+") (number_literal "0xe2408")) () ")"))))) (; ";")) (expression_statement "*(int *)(iVar2 + 0x240) = iVar6;" (assignment_expression "*(int *)(iVar2 + 0x240) = iVar6" (pointer_expression "*(int *)(iVar2 + 0x240)" (* "*") (cast_expression "(int *)(iVar2 + 0x240)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x240)" (( "(") (binary_expression "iVar2 + 0x240" (identifier "iVar2") (+ "+") (number_literal "0x240")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "uVar4 = (*pcVar15)(0x1a,iVar6);" (assignment_expression "uVar4 = (*pcVar15)(0x1a,iVar6)" (identifier "uVar4") (= "=") (call_expression "(*pcVar15)(0x1a,iVar6)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(0x1a,iVar6)" (( "(") (number_literal "0x1a") (, ",") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);" (assignment_expression "iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" (identifier "iVar1") (= "=") (call_expression "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" (identifier "FUN_00062838") (argument_list "(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x54" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x54")) (, ",") (identifier "uVar4") () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908);" (call_expression "(**(code **)(pcVar14 + 0xe29c0))\n              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe29c0))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe29c0)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe29c0)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe29c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe29c0)" (( "(") (binary_expression "pcVar14 + 0xe29c0" (identifier "pcVar14") (+ "+") (number_literal "0xe29c0")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,\n               *(int *)(pcVar14 + 0xe22dc) + 0x908)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x13af") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "0x908")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar15 = *(code **)(pcVar14 + 0xe29c0);" (assignment_expression "pcVar15 = *(code **)(pcVar14 + 0xe29c0)" (identifier "pcVar15") (= "=") (pointer_expression "*(code **)(pcVar14 + 0xe29c0)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe29c0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe29c0)" (( "(") (binary_expression "pcVar14 + 0xe29c0" (identifier "pcVar14") (+ "+") (number_literal "0xe29c0")) () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970" (identifier "iVar6") (= "=") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (number_literal "0xe22dc")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);" (call_expression "(*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar6") (, ",") (number_literal "0x13ae") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe22dc) + 0x908" (pointer_expression "*(int *)(pcVar14 + 0xe22dc)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe22dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe22dc)" (( "(") (binary_expression "pcVar14 + 0xe22dc" (identifier "pcVar14") (+ "+") (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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }\n    (**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1054) == -0x54535255) {\n      if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }\n      if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }\n      (**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);\n    }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n        (**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 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 **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);\n      }" ({ "{") (expression_statement "(**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar15 + 0xe25e4))\n                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe25e4))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe25e4)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe25e4)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe25e4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe25e4)" (( "(") (binary_expression "pcVar15 + 0xe25e4" (identifier "pcVar15") (+ "+") (number_literal "0xe25e4")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,\n                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8e0" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8e0")) (, ",") (number_literal "0x13da") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe218c) + -0x131c" (pointer_expression "*(int *)(pcVar15 + 0xe218c)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe218c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe218c)" (( "(") (binary_expression "pcVar15 + 0xe218c" (identifier "pcVar15") (+ "+") (number_literal "0xe218c")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar6 != 0) {\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n        if (*(int *)(iVar1 + 0x103c) == 0) {\n          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }\n        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);\n        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);\n        return 1;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar2") (= "=") (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          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 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          iVar8 = *(int *)(iVar2 + 0x264);\n          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }\n        }" ({ "{") (expression_statement "iVar8 = *(int *)(iVar2 + 0x264);" (assignment_expression "iVar8 = *(int *)(iVar2 + 0x264)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(iVar2 + 0x264)" (* "*") (cast_expression "(int *)(iVar2 + 0x264)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x264)" (( "(") (binary_expression "iVar2 + 0x264" (identifier "iVar2") (+ "+") (number_literal "0x264")) () ")"))))) (; ";")) (if_statement "if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {\n            return 1;\n          }" (if "if") (parenthesized_expression "((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0))" (( "(") (binary_expression "(iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)" (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)" (( "(") (comma_expression "iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0" (assignment_expression "iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe2544))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe2544)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe2544)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe2544)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe2544)" (( "(") (binary_expression "pcVar15 + 0xe2544" (identifier "pcVar15") (+ "+") (number_literal "0xe2544")) () ")"))))) () ")")) (argument_list "(iVar8,iVar6)" (( "(") (identifier "iVar8") (, ",") (identifier "iVar6") () ")")))) (, ",") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            return 1;\n          }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}"))) (expression_statement "(**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);" (call_expression "(**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe278c))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe278c)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe278c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe278c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe278c)" (( "(") (binary_expression "pcVar15 + 0xe278c" (identifier "pcVar15") (+ "+") (number_literal "0xe278c")) () ")"))))) () ")")) (argument_list "(iVar2 + 0x264,iVar6)" (( "(") (binary_expression "iVar2 + 0x264" (identifier "iVar2") (+ "+") (number_literal "0x264")) (, ",") (identifier "iVar6") () ")"))) (; ";")) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6)" (identifier "FUN_00062838") (argument_list "(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x20" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x20")) (, ",") (identifier "iVar6") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar15 + 0xe287c))\n                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe287c))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe287c)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe287c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe287c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe287c)" (( "(") (binary_expression "pcVar15 + 0xe287c" (identifier "pcVar15") (+ "+") (number_literal "0xe287c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,\n                 *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (( "(") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x44" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x44")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x13db") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8ec")) () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(**(code **)(pcVar15 + 0xe287c))\n              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(**(code **)(pcVar15 + 0xe287c))" (( "(") (pointer_expression "**(code **)(pcVar15 + 0xe287c)" (* "*") (pointer_expression "*(code **)(pcVar15 + 0xe287c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe287c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe287c)" (( "(") (binary_expression "pcVar15 + 0xe287c" (identifier "pcVar15") (+ "+") (number_literal "0xe287c")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,\n               *(int *)(pcVar15 + 0xe2198) + 0x8ec)" (( "(") (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x419c" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x13d8") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8ec")) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar14 = *(code **)(pcVar15 + 0xe287c);" (assignment_expression "pcVar14 = *(code **)(pcVar15 + 0xe287c)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(pcVar15 + 0xe287c)" (* "*") (cast_expression "(code **)(pcVar15 + 0xe287c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar15 + 0xe287c)" (( "(") (binary_expression "pcVar15 + 0xe287c" (identifier "pcVar15") (+ "+") (number_literal "0xe287c")) () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;" (assignment_expression "iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970" (identifier "iVar6") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x970" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x970"))) (; ";")) (expression_statement "iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;" (assignment_expression "iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954" (identifier "iVar1") (= "=") (binary_expression "*(int *)(pcVar15 + 0xe2198) + -0x954" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "-0x954"))) (; ";")) (expression_statement "(*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);" (call_expression "(*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec)" (( "(") (identifier "iVar1") (, ",") (identifier "iVar6") (, ",") (number_literal "0x13d7") (, ",") (binary_expression "*(int *)(pcVar15 + 0xe2198) + 0x8ec" (pointer_expression "*(int *)(pcVar15 + 0xe2198)" (* "*") (cast_expression "(int *)(pcVar15 + 0xe2198)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar15 + 0xe2198)" (( "(") (binary_expression "pcVar15 + 0xe2198" (identifier "pcVar15") (+ "+") (number_literal "0xe2198")) () ")")))) (+ "+") (number_literal "0x8ec")) () ")"))) (; ";")) (if_statement "if (iVar1 == 0) {\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" ({ "{") (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2704)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2704)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2704)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2704)" (( "(") (binary_expression "pcVar14 + 0xe2704" (identifier "pcVar14") (+ "+") (number_literal "0xe2704")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x954" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x954")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1402") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }\n    if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }\n    iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);\n    return iVar1;\n  }" ({ "{") (if_statement "if (*(int *)(iVar1 + 0x1050) != 0) {\n      (**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 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 **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);\n    }" ({ "{") (expression_statement "(**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);" (call_expression "(**(code **)(pcVar14 + 0xe246c))\n                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe246c))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe246c)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe246c)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe246c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe246c)" (( "(") (binary_expression "pcVar14 + 0xe246c" (identifier "pcVar14") (+ "+") (number_literal "0xe246c")) () ")"))))) () ")")) (argument_list "(0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,\n                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4)" (( "(") (number_literal "0x40000") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8b8" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8b8")) (, ",") (number_literal "0x1405") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2014) + -0x131c" (pointer_expression "*(int *)(pcVar14 + 0xe2014)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2014)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2014)" (( "(") (binary_expression "pcVar14 + 0xe2014" (identifier "pcVar14") (+ "+") (number_literal "0xe2014")) () ")")))) (+ "+") (number_literal "-0x131c")) (, ",") (binary_expression "iVar1 + 4" (identifier "iVar1") (+ "+") (number_literal "4")) () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar6 != 0) {\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);\n      if (*(int *)(iVar1 + 0x103c) == 0) {\n        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }\n      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);\n      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);\n      return 1;\n    }" ({ "{") (expression_statement "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);" (assignment_expression "iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4)" (identifier "iVar2") (= "=") (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        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 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        iVar8 = *(int *)(iVar2 + 0x26c);\n        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }\n      }" ({ "{") (expression_statement "iVar8 = *(int *)(iVar2 + 0x26c);" (assignment_expression "iVar8 = *(int *)(iVar2 + 0x26c)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(iVar2 + 0x26c)" (* "*") (cast_expression "(int *)(iVar2 + 0x26c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x26c)" (( "(") (binary_expression "iVar2 + 0x26c" (identifier "iVar2") (+ "+") (number_literal "0x26c")) () ")"))))) (; ";")) (if_statement "if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {\n          return 1;\n        }" (if "if") (parenthesized_expression "((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0))" (( "(") (binary_expression "(iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)" (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)" (( "(") (comma_expression "iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0" (assignment_expression "iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe23cc))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe23cc)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe23cc)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe23cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe23cc)" (( "(") (binary_expression "pcVar14 + 0xe23cc" (identifier "pcVar14") (+ "+") (number_literal "0xe23cc")) () ")"))))) () ")")) (argument_list "(iVar8,iVar6)" (( "(") (identifier "iVar8") (, ",") (identifier "iVar6") () ")")))) (, ",") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          return 1;\n        }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (} "}"))) (expression_statement "(**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);" (call_expression "(**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2614))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2614)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2614)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2614)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2614)" (( "(") (binary_expression "pcVar14 + 0xe2614" (identifier "pcVar14") (+ "+") (number_literal "0xe2614")) () ")"))))) () ")")) (argument_list "(iVar2 + 0x26c,iVar6)" (( "(") (binary_expression "iVar2 + 0x26c" (identifier "iVar2") (+ "+") (number_literal "0x26c")) (, ",") (identifier "iVar6") () ")"))) (; ";")) (expression_statement "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);" (call_expression "FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6)" (identifier "FUN_00062838") (argument_list "(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6)" (( "(") (identifier "iVar1") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x10" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x10")) (, ",") (identifier "iVar6") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2704)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2704)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2704)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2704)" (( "(") (binary_expression "pcVar14 + 0xe2704" (identifier "pcVar14") (+ "+") (number_literal "0xe2704")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x14" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x14")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1406") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8cc")) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}"))) (expression_statement "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);" (assignment_expression "iVar1 = (**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (identifier "iVar1") (= "=") (call_expression "(**(code **)(pcVar14 + 0xe2704))\n                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (parenthesized_expression "(**(code **)(pcVar14 + 0xe2704))" (( "(") (pointer_expression "**(code **)(pcVar14 + 0xe2704)" (* "*") (pointer_expression "*(code **)(pcVar14 + 0xe2704)" (* "*") (cast_expression "(code **)(pcVar14 + 0xe2704)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar14 + 0xe2704)" (( "(") (binary_expression "pcVar14 + 0xe2704" (identifier "pcVar14") (+ "+") (number_literal "0xe2704")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,\n                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc)" (( "(") (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x419c" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x419c")) (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + -0x970" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "-0x970")) (, ",") (number_literal "0x1403") (, ",") (binary_expression "*(int *)(pcVar14 + 0xe2020) + 0x8cc" (pointer_expression "*(int *)(pcVar14 + 0xe2020)" (* "*") (cast_expression "(int *)(pcVar14 + 0xe2020)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 0xe2020)" (( "(") (binary_expression "pcVar14 + 0xe2020" (identifier "pcVar14") (+ "+") (number_literal "0xe2020")) () ")")))) (+ "+") (number_literal "0x8cc")) () ")")))) (; ";")) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}")))

/* 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 function_1(type_1 *var_2,double fill_opacity)

{
  type_2 *var_17;
  int var_23;
  type_1 *var_10;
  type_1 *var_16;
  type_3 *pEVar5;
  char *var_18;
  int var_19;
  char *var_22;
  type_4 in_a2;
  int var_14;
  int var_20;
  type_4 in_a3;
  type_5 *puVar10;
  type_4 uVar11;
  type_1 *unaff_s0;
  type_6 *unaff_s1;
  int *piVar12;
  int *piVar13;
  type_7 *pDVar14;
  type_5 *var_9;
  type_8 *var_12;
  type_8 *var_15;
  float var_13;
  double var_5;
  type_6 auStack_30c4 [4096];
  type_6 auStack_20c4 [4096];
  type_1 *var_21;
  type_1 *pDStack_10bc;
  type_6 *puStack_10b8;
  int *piStack_10b4;
  type_6 auStack_104c [4096];
  type_1 *var_11;
  type_1 *pDStack_48;
  
  var_5 = (double)var_1(in_a2,in_a3);
  pDStack_48 = unaff_s0;
  if (var_2 != (type_1 *)0x0) {
    if (var_2->signature == 0xabacadab) {
      if (var_2->debug != var_3) {
        (*(type_8 *)PTR_LogMagickEvent_0014f488)
                  (0x40000,var_4 + -0x970,
                   var_4 + 0x998,0x12f4);
      }
      if ((var_2->filter_off == var_3) &&
         ((var_2->graphic_context[var_2->index]->fill).alpha ==
          (double)(float)(var_5 * *(double *)(var_6 + 0x75f0)))) {
        return;
      }
      var_18 = var_4 + -0xd4;
      (var_2->graphic_context[var_2->index]->fill).alpha =
           (double)(float)(var_5 * *(double *)(var_6 + 0x75f0));
      var_7(var_2,var_18,(int)((type_9)var_5 >> 0x20),var_8(var_5,0));
      return;
    }
    (*(type_8 *)PTR___assert_fail_0014f720)
              (var_4 + 0x419c,var_4 + -0x970,0x12f2,
               var_4 + 0x9ac);
    pDStack_48 = var_2;
  }
  puVar10 = var_4 + 0x9ac;
  var_10 = (type_1 *)(var_4 + -0x954);
  var_9 = PTR___assert_fail_0014f720;
  (*(type_8 *)PTR___assert_fail_0014f720)(var_10,var_4 + -0x970);
  piVar12 = *(int **)(var_9 + 0xe2d04);
  var_11 = (type_1 *)*piVar12;
  var_16 = pDStack_48;
  if (var_10 == (type_1 *)0x0) {
LAB_0006c904:
    var_14 = 0x131f;
    puVar10 = (type_5 *)(*(int *)(var_9 + 0xe2874) + 0x980);
    var_10 = (type_1 *)(*(int *)(var_9 + 0xe2874) + -0x954);
    (**(type_8 **)(var_9 + 0xe2f58))(var_10,*(int *)(var_9 + 0xe2874) + -0x970);
  }
  else {
    var_16 = var_10;
    if (var_10->signature != 0xabacadab) {
      (**(type_8 **)(var_9 + 0xe2f58))
                (*(int *)(var_9 + 0xe2874) + 0x419c,*(int *)(var_9 + 0xe2874) + -0x970,0x1320,
                 *(int *)(var_9 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (var_10->debug != var_3) {
      puVar10 = (type_5 *)0x1322;
      (**(type_8 **)(var_9 + 0xe2cc0))
                (0x40000,*(int *)(var_9 + 0xe2874) + -0x970,*(int *)(var_9 + 0xe2874) + 0x968);
    }
    unaff_s1 = auStack_104c;
    var_14 = *(int *)(var_9 + 0xe2874) + -0xc0;
    (**(type_8 **)(var_9 + 0xe29b8))(unaff_s1,0x1000);
    (**(type_8 **)(var_9 + 0xe2e68))(&var_10->graphic_context[var_10->index]->density,unaff_s1);
    var_10 = var_11;
    if (var_11 == (type_1 *)*piVar12) {
      return;
    }
  }
  var_12 = *(type_8 **)(var_9 + 0xe2bc4);
  (*var_12)();
  var_5 = (double)var_1(var_14,puVar10);
  pDStack_10bc = var_16;
  if (var_10 != (type_1 *)0x0) {
    if (var_10->signature == 0xabacadab) {
      if (var_10->debug != var_3) {
        (**(type_8 **)(var_12 + 0xe2b54))
                  (0x40000,*(int *)(var_12 + 0xe2708) + -0x970,*(int *)(var_12 + 0xe2708) + 0x948,
                   0x134a);
      }
      var_13 = (float)(var_5 * *(double *)(*(int *)(var_12 + 0xe26f8) + 0x75f0));
      if ((var_10->filter_off == var_3) &&
         (var_10->graphic_context[var_10->index]->alpha == var_13)) {
        return;
      }
      var_14 = *(int *)(var_12 + 0xe2708);
      var_10->graphic_context[var_10->index]->alpha = var_13;
      var_7(var_10,(char *)(var_14 + -0xb4),(int)((type_9)var_5 >> 0x20),var_8(var_5,0));
      return;
    }
    (**(type_8 **)(var_12 + 0xe2dec))
              (*(int *)(var_12 + 0xe2708) + 0x419c,*(int *)(var_12 + 0xe2708) + -0x970,0x1348,
               *(int *)(var_12 + 0xe2708) + 0x958);
    pDStack_10bc = var_10;
  }
  var_15 = *(type_8 **)(var_12 + 0xe2dec);
  var_18 = (char *)(*(int *)(var_12 + 0xe2708) + -0x970);
  var_16 = (type_1 *)(*(int *)(var_12 + 0xe2708) + -0x954);
  (*var_15)(var_16,var_18,0x1347,*(int *)(var_12 + 0xe2708) + 0x958);
  piVar13 = *(int **)(var_15 + 0xe2a4c);
  var_21 = (type_1 *)*piVar13;
  puStack_10b8 = unaff_s1;
  piStack_10b4 = piVar12;
  if (var_16 != (type_1 *)0x0) {
    if (var_16->signature == 0xabacadab) {
      if (var_16->debug == var_3) {
        var_17 = var_16->image;
      }
      else {
        (**(type_8 **)(var_15 + 0xe2a08))
                  (0x40000,*(int *)(var_15 + 0xe25bc) + -0x970,*(int *)(var_15 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(var_15 + 0xe25b0) + -0x131c,var_18);
        var_17 = var_16->image;
      }
      if (var_17 == (type_2 *)0x0) {
        (**(type_8 **)(var_15 + 0xe283c))
                  (var_16->exception,*(int *)(var_15 + 0xe25bc) + -0x970,
                   *(int *)(var_15 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(var_15 + 0xe25bc) + -0x225c,*(int *)(var_15 + 0xe25ac) + 0x5cf4,
                   var_16->name);
      }
      if (var_18 != (char *)0x0) {
        var_14 = *(int *)(var_15 + 0xe25ac);
        if (*var_18 == '#') {
          (**(type_8 **)(var_15 + 0xe2700))
                    (auStack_30c4,0x1000,*(int *)(var_15 + 0xe25b0) + -0x131c,var_18 + 1);
          var_14 = (**(type_8 **)(var_15 + 0xe2bc8))(var_16->image,auStack_30c4);
          if (var_14 == 0) {
            var_14 = *(int *)(var_15 + 0xe25ac);
            uVar11 = 0x1386;
            pEVar5 = var_16->exception;
            var_20 = *(int *)(var_15 + 0xe25bc);
            var_19 = *(int *)(var_15 + 0xe25bc);
            var_12 = *(type_8 **)(var_15 + 0xe283c);
            var_23 = *(int *)(var_15 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(type_8 **)(var_15 + 0xe2700))
                    (auStack_20c4,0x1000,*(int *)(var_15 + 0xe25bc) + -0x68,var_18);
          pDVar14 = var_16->graphic_context[var_16->index];
          if ((pDVar14->fill).alpha != 0.0) {
            (pDVar14->fill).alpha = (double)pDVar14->alpha;
          }
          var_22 = (char *)(*(int *)(var_15 + 0xe25bc) + -0x60);
          var_7(var_16,var_22,auStack_20c4);
        }
        else {
          uVar11 = 0x1380;
          pEVar5 = var_16->exception;
          var_20 = *(int *)(var_15 + 0xe25bc);
          var_19 = *(int *)(var_15 + 0xe25bc);
          var_12 = *(type_8 **)(var_15 + 0xe283c);
          var_23 = *(int *)(var_15 + 0xe25bc) + -0x84;
LAB_0006cb28:
          var_22 = (char *)(var_19 - 0x970);
          (*var_12)(pEVar5,var_22,var_20 + 0x918,uVar11,0x1cc,var_23,var_14 + 0x5cf4,var_18);
        }
        var_16 = var_21;
        if (var_21 == (type_1 *)*piVar13) {
          return;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(type_8 **)(var_15 + 0xe2ca0))
                (*(int *)(var_15 + 0xe25bc) + 0x419c,*(int *)(var_15 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(var_15 + 0xe25bc) + 0x930);
    }
    (**(type_8 **)(var_15 + 0xe2ca0))
              (*(int *)(var_15 + 0xe25bc) + -0xa4,*(int *)(var_15 + 0xe25bc) + -0x970,0x137d,
               *(int *)(var_15 + 0xe25bc) + 0x930);
  }
  var_22 = (char *)(*(int *)(var_15 + 0xe25bc) - 0x970);
  var_16 = (type_1 *)(*(int *)(var_15 + 0xe25bc) + -0x954);
  (**(type_8 **)(var_15 + 0xe2ca0))(var_16,var_22,0x1377,*(int *)(var_15 + 0xe25bc) + 0x930);
LAB_0006cd54:
  var_12 = *(type_8 **)(var_15 + 0xe290c);
  (*var_12)();
  if (var_16 != (type_1 *)0x0) {
    if (var_16->signature == 0xabacadab) {
      if (var_16->debug != var_3) {
        (**(type_8 **)(var_12 + 0xe2728))
                  (0x40000,*(int *)(var_12 + 0xe22dc) + -0x970,*(int *)(var_12 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(var_12 + 0xe22d0) + -0x131c,var_16->name);
      }
      if ((var_16->filter_off == var_3) &&
         ((char *)var_16->graphic_context[var_16->index]->fill_rule == var_22)) {
        return;
      }
      var_15 = *(type_8 **)(var_12 + 0xe2408);
      var_16->graphic_context[var_16->index]->fill_rule = (type_10)var_22;
      uVar11 = (*var_15)(0x1a,var_22);
      var_7(var_16,(char *)(*(int *)(var_12 + 0xe22dc) + -0x54),uVar11);
      return;
    }
    (**(type_8 **)(var_12 + 0xe29c0))
              (*(int *)(var_12 + 0xe22dc) + 0x419c,*(int *)(var_12 + 0xe22dc) + -0x970,0x13af,
               *(int *)(var_12 + 0xe22dc) + 0x908);
  }
  var_15 = *(type_8 **)(var_12 + 0xe29c0);
  var_14 = *(int *)(var_12 + 0xe22dc) + -0x970;
  var_16 = (type_1 *)(*(int *)(var_12 + 0xe22dc) + -0x954);
  (*var_15)(var_16,var_14,0x13ae,*(int *)(var_12 + 0xe22dc) + 0x908);
  if (var_16 != (type_1 *)0x0) {
    if (var_16->signature == 0xabacadab) {
      if (var_16->debug != var_3) {
        (**(type_8 **)(var_15 + 0xe25e4))
                  (0x40000,*(int *)(var_15 + 0xe2198) + -0x970,*(int *)(var_15 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(var_15 + 0xe218c) + -0x131c,var_16->name);
      }
      if (var_14 != 0) {
        pDVar14 = var_16->graphic_context[var_16->index];
        if (var_16->filter_off == var_3) {
          var_18 = pDVar14->font;
          if ((var_18 != (char *)0x0) &&
             (var_23 = (**(type_8 **)(var_15 + 0xe2544))(var_18,var_14), var_23 == 0)) {
            return;
          }
        }
        (**(type_8 **)(var_15 + 0xe278c))(&pDVar14->font,var_14);
        var_7(var_16,(char *)(*(int *)(var_15 + 0xe2198) + -0x20),var_14);
        return;
      }
      (**(type_8 **)(var_15 + 0xe287c))
                (*(int *)(var_15 + 0xe2198) + -0x44,*(int *)(var_15 + 0xe2198) + -0x970,0x13db,
                 *(int *)(var_15 + 0xe2198) + 0x8ec);
    }
    (**(type_8 **)(var_15 + 0xe287c))
              (*(int *)(var_15 + 0xe2198) + 0x419c,*(int *)(var_15 + 0xe2198) + -0x970,0x13d8,
               *(int *)(var_15 + 0xe2198) + 0x8ec);
  }
  var_12 = *(type_8 **)(var_15 + 0xe287c);
  var_14 = *(int *)(var_15 + 0xe2198) + -0x970;
  var_16 = (type_1 *)(*(int *)(var_15 + 0xe2198) + -0x954);
  (*var_12)(var_16,var_14,0x13d7,*(int *)(var_15 + 0xe2198) + 0x8ec);
  if (var_16 == (type_1 *)0x0) {
    (**(type_8 **)(var_12 + 0xe2704))
              (*(int *)(var_12 + 0xe2020) + -0x954,*(int *)(var_12 + 0xe2020) + -0x970,0x1402,
               *(int *)(var_12 + 0xe2020) + 0x8cc);
    return;
  }
  if (var_16->signature == 0xabacadab) {
    if (var_16->debug != var_3) {
      (**(type_8 **)(var_12 + 0xe246c))
                (0x40000,*(int *)(var_12 + 0xe2020) + -0x970,*(int *)(var_12 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(var_12 + 0xe2014) + -0x131c,var_16->name);
    }
    if (var_14 != 0) {
      pDVar14 = var_16->graphic_context[var_16->index];
      if (var_16->filter_off == var_3) {
        var_18 = pDVar14->family;
        if ((var_18 != (char *)0x0) &&
           (var_23 = (**(type_8 **)(var_12 + 0xe23cc))(var_18,var_14), var_23 == 0)) {
          return;
        }
      }
      (**(type_8 **)(var_12 + 0xe2614))(&pDVar14->family,var_14);
      var_7(var_16,(char *)(*(int *)(var_12 + 0xe2020) + 0x10),var_14);
      return;
    }
    (**(type_8 **)(var_12 + 0xe2704))
              (*(int *)(var_12 + 0xe2020) + -0x14,*(int *)(var_12 + 0xe2020) + -0x970,0x1406,
               *(int *)(var_12 + 0xe2020) + 0x8cc);
    return;
  }
  (**(type_8 **)(var_12 + 0xe2704))
            (*(int *)(var_12 + 0xe2020) + 0x419c,*(int *)(var_12 + 0xe2020) + -0x970,0x1403,
             *(int *)(var_12 + 0xe2020) + 0x8cc);
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (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: (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: (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: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (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))) (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 (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: (pointer_expression 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: (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: (identifier) right: (number_literal))))))))))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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: (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: (identifier) right: (number_literal))))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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: (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))))) (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 (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) (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (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 (labeled_statement label: (statement_identifier) (expression_statement (assignment_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: (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: (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: (pointer_expression argument: (cast_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 (binary_expression left: (pointer_expression argument: (cast_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: (pointer_expression argument: (cast_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (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: (pointer_expression 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)))))) right: (number_literal)) (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: (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (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))) (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 (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: (pointer_expression 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)))))))) (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: (pointer_expression argument: (cast_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: (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: (binary_expression left: (pointer_expression argument: (cast_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))) (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(undefined *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)

{
  int iVar1;
  int iVar2;
  undefined *puVar3;
  undefined4 uVar4;
  undefined *puVar5;
  int iVar6;
  char *pcVar7;
  int iVar8;
  undefined *puVar9;
  undefined4 uVar10;
  undefined *unaff_s0;
  undefined1 *unaff_s1;
  undefined4 *puVar11;
  int *piVar12;
  undefined *puVar13;
  code *pcVar14;
  code *pcVar15;
  float fVar16;
  double dVar17;
  undefined1 auStack_30c4 [4096];
  undefined1 auStack_20c4 [4096];
  int iStack_10c4;
  undefined *puStack_10bc;
  undefined1 *puStack_10b8;
  undefined4 *puStack_10b4;
  undefined1 auStack_104c [4096];
  undefined *puStack_4c;
  undefined *puStack_48;
  
  dVar17 = (double)CONCAT44(param_3,param_4);
  puStack_48 = unaff_s0;
  if (param_1 != (undefined *)0x0) {
    if (*(int *)(param_1 + 0x1054) == -0x54535255) {
      if (*(int *)(param_1 + 0x1050) != 0) {
        (*(code *)PTR_LogMagickEvent_0014f488)
                  (0x40000,PTR_s_t_char____NULL_0014f03c + -0x970,
                   PTR_s_t_char____NULL_0014f03c + 0x998,0x12f4);
      }
      iVar1 = *(int *)(*(int *)(param_1 + 0x1038) + *(int *)(param_1 + 0x1034) * 4);
      if ((*(int *)(param_1 + 0x103c) == 0) &&
         (*(double *)(iVar1 + 0x90) ==
          (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0)))) {
        return iVar1;
      }
      puVar5 = PTR_s_t_char____NULL_0014f03c + -0xd4;
      *(double *)(iVar1 + 0x90) = (double)(float)(dVar17 * *(double *)(PTR_LAB_0014f02c + 0x75f0));
      iVar1 = FUN_00062838(param_1,puVar5,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));
      return iVar1;
    }
    (*(code *)PTR___assert_fail_0014f720)
              (PTR_s_t_char____NULL_0014f03c + 0x419c,PTR_s_t_char____NULL_0014f03c + -0x970,0x12f2,
               PTR_s_t_char____NULL_0014f03c + 0x9ac);
    puStack_48 = param_1;
  }
  puVar9 = PTR_s_t_char____NULL_0014f03c + 0x9ac;
  puVar3 = PTR_s_t_char____NULL_0014f03c + -0x954;
  puVar13 = PTR___assert_fail_0014f720;
  (*(code *)PTR___assert_fail_0014f720)(puVar3,PTR_s_t_char____NULL_0014f03c + -0x970);
  puVar11 = *(undefined4 **)(puVar13 + 0xe2d04);
  puStack_4c = (undefined *)*puVar11;
  puVar5 = puStack_48;
  if (puVar3 == (undefined *)0x0) {
LAB_0006c904:
    iVar1 = 0x131f;
    puVar9 = (undefined *)(*(int *)(puVar13 + 0xe2874) + 0x980);
    puVar3 = (undefined *)(*(int *)(puVar13 + 0xe2874) + -0x954);
    (**(code **)(puVar13 + 0xe2f58))(puVar3,*(int *)(puVar13 + 0xe2874) + -0x970);
  }
  else {
    puVar5 = puVar3;
    if (*(int *)(puVar3 + 0x1054) != -0x54535255) {
      (**(code **)(puVar13 + 0xe2f58))
                (*(int *)(puVar13 + 0xe2874) + 0x419c,*(int *)(puVar13 + 0xe2874) + -0x970,0x1320,
                 *(int *)(puVar13 + 0xe2874) + 0x980);
      goto LAB_0006c904;
    }
    if (*(int *)(puVar3 + 0x1050) != 0) {
      puVar9 = (undefined *)0x1322;
      (**(code **)(puVar13 + 0xe2cc0))
                (0x40000,*(int *)(puVar13 + 0xe2874) + -0x970,*(int *)(puVar13 + 0xe2874) + 0x968);
    }
    unaff_s1 = auStack_104c;
    iVar1 = *(int *)(puVar13 + 0xe2874) + -0xc0;
    (**(code **)(puVar13 + 0xe29b8))(unaff_s1,0x1000);
    (**(code **)(puVar13 + 0xe2e68))
              (*(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4) + 0x290,unaff_s1)
    ;
    puVar3 = puStack_4c;
    if (puStack_4c == (undefined *)*puVar11) {
      return 1;
    }
  }
  pcVar14 = *(code **)(puVar13 + 0xe2bc4);
  (*pcVar14)();
  dVar17 = (double)CONCAT44(iVar1,puVar9);
  puStack_10bc = puVar5;
  if (puVar3 != (undefined *)0x0) {
    if (*(int *)(puVar3 + 0x1054) == -0x54535255) {
      if (*(int *)(puVar3 + 0x1050) != 0) {
        (**(code **)(pcVar14 + 0xe2b54))
                  (0x40000,*(int *)(pcVar14 + 0xe2708) + -0x970,*(int *)(pcVar14 + 0xe2708) + 0x948,
                   0x134a);
      }
      iVar1 = *(int *)(*(int *)(puVar3 + 0x1038) + *(int *)(puVar3 + 0x1034) * 4);
      fVar16 = (float)(dVar17 * *(double *)(*(int *)(pcVar14 + 0xe26f8) + 0x75f0));
      if ((*(int *)(puVar3 + 0x103c) == 0) && (*(float *)(iVar1 + 0x2cc) == fVar16)) {
        return iVar1;
      }
      iVar6 = *(int *)(pcVar14 + 0xe2708);
      *(float *)(iVar1 + 0x2cc) = fVar16;
      iVar1 = FUN_00062838(puVar3,iVar6 + -0xb4,(int)((ulonglong)dVar17 >> 0x20),SUB84(dVar17,0));
      return iVar1;
    }
    (**(code **)(pcVar14 + 0xe2dec))
              (*(int *)(pcVar14 + 0xe2708) + 0x419c,*(int *)(pcVar14 + 0xe2708) + -0x970,0x1348,
               *(int *)(pcVar14 + 0xe2708) + 0x958);
    puStack_10bc = puVar3;
  }
  pcVar15 = *(code **)(pcVar14 + 0xe2dec);
  pcVar7 = (char *)(*(int *)(pcVar14 + 0xe2708) + -0x970);
  iVar1 = *(int *)(pcVar14 + 0xe2708) + -0x954;
  (*pcVar15)(iVar1,pcVar7,0x1347,*(int *)(pcVar14 + 0xe2708) + 0x958);
  piVar12 = *(int **)(pcVar15 + 0xe2a4c);
  iStack_10c4 = *piVar12;
  puStack_10b8 = unaff_s1;
  puStack_10b4 = puVar11;
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) == 0) {
        iVar6 = *(int *)(&DAT_00001004 + iVar1);
      }
      else {
        (**(code **)(pcVar15 + 0xe2a08))
                  (0x40000,*(int *)(pcVar15 + 0xe25bc) + -0x970,*(int *)(pcVar15 + 0xe25bc) + 0x918,
                   0x137a,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7);
        iVar6 = *(int *)(&DAT_00001004 + iVar1);
      }
      if (iVar6 == 0) {
        (**(code **)(pcVar15 + 0xe283c))
                  (*(undefined4 *)(&DAT_00001008 + iVar1),*(int *)(pcVar15 + 0xe25bc) + -0x970,
                   *(int *)(pcVar15 + 0xe25bc) + 0x918,0x137c,0x1d6,
                   *(int *)(pcVar15 + 0xe25bc) + -0x225c,*(int *)(pcVar15 + 0xe25ac) + 0x5cf4,
                   iVar1 + 4);
      }
      if (pcVar7 != (char *)0x0) {
        iVar2 = *(int *)(pcVar15 + 0xe25ac);
        if (*pcVar7 == '#') {
          (**(code **)(pcVar15 + 0xe2700))
                    (auStack_30c4,0x1000,*(int *)(pcVar15 + 0xe25b0) + -0x131c,pcVar7 + 1);
          iVar6 = (**(code **)(pcVar15 + 0xe2bc8))
                            (*(undefined4 *)(&DAT_00001004 + iVar1),auStack_30c4);
          if (iVar6 == 0) {
            iVar2 = *(int *)(pcVar15 + 0xe25ac);
            uVar10 = 0x1386;
            uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);
            iVar8 = *(int *)(pcVar15 + 0xe25bc);
            iVar6 = *(int *)(pcVar15 + 0xe25bc);
            pcVar14 = *(code **)(pcVar15 + 0xe283c);
            iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x74;
            goto LAB_0006cb28;
          }
          (**(code **)(pcVar15 + 0xe2700))
                    (auStack_20c4,0x1000,*(int *)(pcVar15 + 0xe25bc) + -0x68,pcVar7);
          iVar6 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
          if (*(double *)(iVar6 + 0x90) != 0.0) {
            *(double *)(iVar6 + 0x90) = (double)*(float *)(iVar6 + 0x2cc);
          }
          iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x60;
          FUN_00062838(iVar1,iVar6,auStack_20c4);
          iVar2 = 1;
        }
        else {
          uVar10 = 0x1380;
          uVar4 = *(undefined4 *)(&DAT_00001008 + iVar1);
          iVar8 = *(int *)(pcVar15 + 0xe25bc);
          iVar6 = *(int *)(pcVar15 + 0xe25bc);
          pcVar14 = *(code **)(pcVar15 + 0xe283c);
          iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x84;
LAB_0006cb28:
          iVar6 = iVar6 + -0x970;
          (*pcVar14)(uVar4,iVar6,iVar8 + 0x918,uVar10,0x1cc,iVar1,iVar2 + 0x5cf4,pcVar7);
          iVar2 = 0;
        }
        iVar1 = iStack_10c4;
        if (iStack_10c4 == *piVar12) {
          return iVar2;
        }
        goto LAB_0006cd54;
      }
    }
    else {
      (**(code **)(pcVar15 + 0xe2ca0))
                (*(int *)(pcVar15 + 0xe25bc) + 0x419c,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x1378,
                 *(int *)(pcVar15 + 0xe25bc) + 0x930);
    }
    (**(code **)(pcVar15 + 0xe2ca0))
              (*(int *)(pcVar15 + 0xe25bc) + -0xa4,*(int *)(pcVar15 + 0xe25bc) + -0x970,0x137d,
               *(int *)(pcVar15 + 0xe25bc) + 0x930);
  }
  iVar6 = *(int *)(pcVar15 + 0xe25bc) + -0x970;
  iVar1 = *(int *)(pcVar15 + 0xe25bc) + -0x954;
  (**(code **)(pcVar15 + 0xe2ca0))(iVar1,iVar6,0x1377,*(int *)(pcVar15 + 0xe25bc) + 0x930);
LAB_0006cd54:
  pcVar14 = *(code **)(pcVar15 + 0xe290c);
  (*pcVar14)();
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar14 + 0xe2728))
                  (0x40000,*(int *)(pcVar14 + 0xe22dc) + -0x970,*(int *)(pcVar14 + 0xe22dc) + 0x8f8,
                   0x13b1,*(int *)(pcVar14 + 0xe22d0) + -0x131c,iVar1 + 4);
      }
      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if ((*(int *)(iVar1 + 0x103c) == 0) && (*(int *)(iVar2 + 0x240) == iVar6)) {
        return iVar2;
      }
      pcVar15 = *(code **)(pcVar14 + 0xe2408);
      *(int *)(iVar2 + 0x240) = iVar6;
      uVar4 = (*pcVar15)(0x1a,iVar6);
      iVar1 = FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe22dc) + -0x54,uVar4);
      return iVar1;
    }
    (**(code **)(pcVar14 + 0xe29c0))
              (*(int *)(pcVar14 + 0xe22dc) + 0x419c,*(int *)(pcVar14 + 0xe22dc) + -0x970,0x13af,
               *(int *)(pcVar14 + 0xe22dc) + 0x908);
  }
  pcVar15 = *(code **)(pcVar14 + 0xe29c0);
  iVar6 = *(int *)(pcVar14 + 0xe22dc) + -0x970;
  iVar1 = *(int *)(pcVar14 + 0xe22dc) + -0x954;
  (*pcVar15)(iVar1,iVar6,0x13ae,*(int *)(pcVar14 + 0xe22dc) + 0x908);
  if (iVar1 != 0) {
    if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
      if (*(int *)(iVar1 + 0x1050) != 0) {
        (**(code **)(pcVar15 + 0xe25e4))
                  (0x40000,*(int *)(pcVar15 + 0xe2198) + -0x970,*(int *)(pcVar15 + 0xe2198) + 0x8e0,
                   0x13da,*(int *)(pcVar15 + 0xe218c) + -0x131c,iVar1 + 4);
      }
      if (iVar6 != 0) {
        iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
        if (*(int *)(iVar1 + 0x103c) == 0) {
          iVar8 = *(int *)(iVar2 + 0x264);
          if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar15 + 0xe2544))(iVar8,iVar6), iVar8 == 0)) {
            return 1;
          }
        }
        (**(code **)(pcVar15 + 0xe278c))(iVar2 + 0x264,iVar6);
        FUN_00062838(iVar1,*(int *)(pcVar15 + 0xe2198) + -0x20,iVar6);
        return 1;
      }
      (**(code **)(pcVar15 + 0xe287c))
                (*(int *)(pcVar15 + 0xe2198) + -0x44,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13db,
                 *(int *)(pcVar15 + 0xe2198) + 0x8ec);
    }
    (**(code **)(pcVar15 + 0xe287c))
              (*(int *)(pcVar15 + 0xe2198) + 0x419c,*(int *)(pcVar15 + 0xe2198) + -0x970,0x13d8,
               *(int *)(pcVar15 + 0xe2198) + 0x8ec);
  }
  pcVar14 = *(code **)(pcVar15 + 0xe287c);
  iVar6 = *(int *)(pcVar15 + 0xe2198) + -0x970;
  iVar1 = *(int *)(pcVar15 + 0xe2198) + -0x954;
  (*pcVar14)(iVar1,iVar6,0x13d7,*(int *)(pcVar15 + 0xe2198) + 0x8ec);
  if (iVar1 == 0) {
    iVar1 = (**(code **)(pcVar14 + 0xe2704))
                      (*(int *)(pcVar14 + 0xe2020) + -0x954,*(int *)(pcVar14 + 0xe2020) + -0x970,
                       0x1402,*(int *)(pcVar14 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  if (*(int *)(iVar1 + 0x1054) == -0x54535255) {
    if (*(int *)(iVar1 + 0x1050) != 0) {
      (**(code **)(pcVar14 + 0xe246c))
                (0x40000,*(int *)(pcVar14 + 0xe2020) + -0x970,*(int *)(pcVar14 + 0xe2020) + 0x8b8,
                 0x1405,*(int *)(pcVar14 + 0xe2014) + -0x131c,iVar1 + 4);
    }
    if (iVar6 != 0) {
      iVar2 = *(int *)(*(int *)(iVar1 + 0x1038) + *(int *)(iVar1 + 0x1034) * 4);
      if (*(int *)(iVar1 + 0x103c) == 0) {
        iVar8 = *(int *)(iVar2 + 0x26c);
        if ((iVar8 != 0) && (iVar8 = (**(code **)(pcVar14 + 0xe23cc))(iVar8,iVar6), iVar8 == 0)) {
          return 1;
        }
      }
      (**(code **)(pcVar14 + 0xe2614))(iVar2 + 0x26c,iVar6);
      FUN_00062838(iVar1,*(int *)(pcVar14 + 0xe2020) + 0x10,iVar6);
      return 1;
    }
    iVar1 = (**(code **)(pcVar14 + 0xe2704))
                      (*(int *)(pcVar14 + 0xe2020) + -0x14,*(int *)(pcVar14 + 0xe2020) + -0x970,
                       0x1406,*(int *)(pcVar14 + 0xe2020) + 0x8cc);
    return iVar1;
  }
  iVar1 = (**(code **)(pcVar14 + 0xe2704))
                    (*(int *)(pcVar14 + 0xe2020) + 0x419c,*(int *)(pcVar14 + 0xe2020) + -0x970,
                     0x1403,*(int *)(pcVar14 + 0xe2020) + 0x8cc);
  return iVar1;
}

